This commit is contained in:
2026-09-20 11:09:52 +08:00
parent c909d9044e
commit 78a36d1a39
4 changed files with 29 additions and 8 deletions
@@ -28,7 +28,7 @@ import java.util.List;
@Select("SELECT COUNT(*) FROM fl_loading_pick_item WHERE pick_task_id=#{id}") int itemCount(@Param("id") long id);
@Select("SELECT COUNT(*) FROM fl_loading_pick_item WHERE pick_task_id=#{id} AND item_status IN ('PICKED','PARTIAL','SKIPPED')") int completedItemCount(@Param("id") long id);
@Select("SELECT COUNT(*) FROM fl_loading_pick_item WHERE pick_task_id=#{id} AND item_status NOT IN ('PICKED','PARTIAL','SKIPPED')") int unresolvedItemCount(@Param("id") long id);
@Select("SELECT DISTINCT h.operation_reason FROM fl_loading_pick_history h WHERE h.pick_task_id=#{id} AND h.operation_reason IS NOT NULL AND h.operation_reason<>'' ORDER BY h.id") List<String> pickExceptionReasons(@Param("id") long id);
@Select("SELECT h.operation_reason FROM fl_loading_pick_history h WHERE h.pick_task_id=#{id} AND h.operation_reason IS NOT NULL AND h.operation_reason<>'' GROUP BY h.operation_reason ORDER BY MIN(h.id)") List<String> pickExceptionReasons(@Param("id") long id);
@Select("SELECT e.id evidenceId,NULL tenantId,NULL inboundId,e.evidence_type evidenceType,e.file_id fileId,e.file_name fileName,e.status,e.created_at uploadedAt FROM fl_loading_cabinet_evidence e JOIN fl_loading_plan p ON p.container_booking_id=e.container_booking_id WHERE p.id=#{id} ORDER BY e.created_at,e.id") List<PhotoRow> photos(@Param("id") long id);
@Select("SELECT action_type eventType,operation_id detail,operator_id operatorId,operator_name operatorName,created_at occurredAt FROM fl_loading_pick_operation WHERE pick_task_id=#{id} ORDER BY created_at,id") List<TimelineRow> pickTimeline(@Param("id") long id);
record ExceptionRow(Long id,String action,String reason,Long operatorId,String operatorName,java.time.LocalDateTime occurredAt,String requestHash) {}
@@ -53,13 +53,6 @@ public interface InboundHoldGateMapper {
WHERE plan_item.account_id=inbound.tenant_id AND plan_item.inbound_id=inbound.id
AND plan_item.deleted=0 AND pick_item.picked_package_count>0
)
OR EXISTS (
SELECT 1 FROM fl_loading_plan_item plan_item
JOIN fl_loading_pick_item pick_item ON pick_item.loading_plan_item_id=plan_item.id
JOIN fl_loading_work_pallet_carton carton ON carton.pick_item_id=pick_item.id
WHERE plan_item.account_id=inbound.tenant_id AND plan_item.inbound_id=inbound.id
AND plan_item.deleted=0
)
OR EXISTS (
SELECT 1 FROM fl_outbound_dispatch dispatch
WHERE dispatch.tenant_id=inbound.tenant_id AND dispatch.inbound_id=inbound.id