From 49a741ae408d05d9f43ee1134dab1e2c4c4108b0 Mon Sep 17 00:00:00 2001 From: liyuqi Date: Tue, 13 May 2025 21:21:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E7=BA=BF=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/wms_ntyc.sql | 177 ++++++------ .../enums/wms/WmsLocationNumEnums.java | 1 + .../controller/wms/LocationController.java | 6 + .../controller/wms/TaskController.java | 8 + .../controller/ycwms/YcwmsController.java | 2 +- .../wms_main/model/dto/query/StockQuery.java | 4 +- .../dto/request/wms/WcsTaskBakRequest.java | 29 ++ .../model/dto/request/ycwms/OrderOutReq.java | 4 +- .../com/wms_main/model/po/TAppWcsTaskBak.java | 6 + .../com/wms_main/model/vo/wms/StockVo.java | 10 +- .../serviceImpl/StackerTaskServiceImpl.java | 142 ++++++---- .../ILocationControllerService.java | 4 +- .../controller/ITaskControllerService.java | 7 + .../LocationControllerServiceImpl.java | 14 +- .../StockControllerServiceImpl.java | 6 +- .../TaskControllerServiceImpl.java | 45 +++- .../serviceImpl/WcsControllerServiceImpl.java | 252 +++++++++--------- .../YcwmsControllerServiceImpl.java | 20 +- .../job_executor/YcOutExecutor.java | 12 + wms_web_nantong_yachi/src/layout/orderIn.vue | 2 +- wms_web_nantong_yachi/src/layout/orderOut.vue | 3 +- 21 files changed, 446 insertions(+), 308 deletions(-) create mode 100644 wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/wms/WcsTaskBakRequest.java diff --git a/db/wms_ntyc.sql b/db/wms_ntyc.sql index 22b8fb1..ff9a8cc 100644 --- a/db/wms_ntyc.sql +++ b/db/wms_ntyc.sql @@ -11,7 +11,7 @@ Target Server Version : 80034 (8.0.34) File Encoding : 65001 - Date: 14/04/2025 22:45:54 + Date: 13/05/2025 21:20:19 */ SET NAMES utf8mb4; @@ -33,12 +33,12 @@ CREATE TABLE `t_app_config` ( -- ---------------------------- -- Records of t_app_config -- ---------------------------- -INSERT INTO `t_app_config` VALUES ('1', 'WcsPickTaskUrl', 'http://10.18.58.22:9980/api/wms/convey/conveyTask', 1, '发送拣选任务地址'); +INSERT INTO `t_app_config` VALUES ('1', 'WcsPickTaskUrl', 'http://10.18.58.20:9980/api/wms/convey/conveyTask', 1, '发送拣选任务地址'); INSERT INTO `t_app_config` VALUES ('10', 'ErpGetVehicleNoData', 'http://114.232.85.31:8054/api/TuoPan/GetVehicleNoData', 1, '根据托盘号查询简单生产入库单'); INSERT INTO `t_app_config` VALUES ('11', 'WmsManageCallback', 'http://114.232.28.25:8070/WmsManage/BaoKaiYcWms/ResultCallback', 1, '场内WMS接受的入库出库执行后回调地址'); -INSERT INTO `t_app_config` VALUES ('2', 'WcsStackerTaskUrl', 'http://10.18.58.22:9980/api/wms/wmsTask/setStackerTask', 1, '发送堆垛机任务地址'); -INSERT INTO `t_app_config` VALUES ('3', 'WcsReleaseBoxUrl', 'http://10.18.58.22:9980/api/wms/convey/disposeVehicle', 1, '发送释放站台箱子地址'); -INSERT INTO `t_app_config` VALUES ('4', 'WcsCancelPickTaskUrl', 'http://10.18.58.22:9980/api/wms/convey/cancel', 1, '发送取消拣选任务地址'); +INSERT INTO `t_app_config` VALUES ('2', 'WcsStackerTaskUrl', 'http://10.18.58.20:9980/api/wms/wmsTask/setStackerTask', 1, '发送堆垛机任务地址'); +INSERT INTO `t_app_config` VALUES ('3', 'WcsReleaseBoxUrl', 'http://10.18.58.20:9980/api/wms/convey/disposeVehicle', 1, '发送释放站台箱子地址'); +INSERT INTO `t_app_config` VALUES ('4', 'WcsCancelPickTaskUrl', 'http://10.18.58.20:9980/api/wms/convey/cancel', 1, '发送取消拣选任务地址'); INSERT INTO `t_app_config` VALUES ('5', 'StandCapacity', '8', 1, '站台容量'); INSERT INTO `t_app_config` VALUES ('6', 'ImageIp', 'localhost:12315', 1, '存放图纸ip'); INSERT INTO `t_app_config` VALUES ('7', 'EmptyBack', '0', 3, '空箱回库'); @@ -3548,11 +3548,11 @@ INSERT INTO `t_app_location` VALUES ('A01-32-05-01', '', 0, 0, 0, 0, 1, 1, 1, 32 INSERT INTO `t_app_location` VALUES ('A01-32-06-01', '', 1, 0, 0, 0, 1, 1, 1, 32, 6, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A01-32-07-01', '', 1, 0, 0, 0, 1, 1, 1, 32, 7, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A01-32-08-01', '', 1, 0, 0, 0, 1, 1, 1, 32, 8, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A01-33-02-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 2, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A01-33-03-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 3, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A01-33-04-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 4, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A01-33-05-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 5, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A01-33-06-01', '', 1, 0, 0, 0, 1, 1, 1, 33, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A01-33-02-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 2, 1, '1746613923589010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A01-33-03-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 3, 1, '1745723148351010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A01-33-04-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 4, 1, '1745888881760010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A01-33-05-01', '', 0, 0, 0, 0, 1, 1, 1, 33, 5, 1, '1745889001626010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A01-33-06-01', '', 1, 0, 0, 0, 1, 1, 1, 33, 6, 1, '1746613926653010000', 1, ''); INSERT INTO `t_app_location` VALUES ('A01-33-07-01', '', 1, 0, 0, 0, 1, 1, 1, 33, 7, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A01-33-08-01', '', 1, 0, 0, 0, 1, 1, 1, 33, 8, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-01-01-01', '', 0, 0, 0, 0, 1, 1, 2, 1, 1, 1, '', 1, ''); @@ -3811,11 +3811,11 @@ INSERT INTO `t_app_location` VALUES ('A02-32-05-01', '', 0, 0, 0, 0, 1, 1, 2, 32 INSERT INTO `t_app_location` VALUES ('A02-32-06-01', '', 1, 0, 0, 0, 1, 1, 2, 32, 6, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-32-07-01', '', 1, 0, 0, 0, 1, 1, 2, 32, 7, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-32-08-01', '', 1, 0, 0, 0, 1, 1, 2, 32, 8, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A02-33-01-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 1, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A02-33-02-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 2, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A02-33-03-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 3, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A02-33-04-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 4, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A02-33-05-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A02-33-01-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 1, 1, '1746613919954010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A02-33-02-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 2, 1, '1746667475246010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A02-33-03-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 3, 1, '1745723196828010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A02-33-04-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 4, 1, '1745888945173010000', 1, ''); +INSERT INTO `t_app_location` VALUES ('A02-33-05-01', '', 0, 0, 0, 0, 1, 1, 2, 33, 5, 1, '1745889065559010000', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-33-06-01', '', 1, 0, 0, 0, 1, 1, 2, 33, 6, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-33-07-01', '', 1, 0, 0, 0, 1, 1, 2, 33, 7, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A02-33-08-01', '', 1, 0, 0, 0, 1, 1, 2, 33, 8, 1, '', 1, ''); @@ -4114,11 +4114,11 @@ INSERT INTO `t_app_location` VALUES ('A03-19-07-02', '', 3, 0, 0, 0, 2, 2, 3, 19 INSERT INTO `t_app_location` VALUES ('A03-19-08-01', '', 3, 0, 0, 0, 2, 2, 3, 19, 8, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A03-19-08-02', '', 3, 0, 0, 0, 2, 2, 3, 19, 8, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A03-20-06-01', '', 3, 0, 0, 0, 2, 2, 3, 20, 6, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A03-20-06-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 6, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A03-20-06-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 6, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A03-20-07-01', '', 3, 0, 0, 0, 2, 2, 3, 20, 7, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A03-20-07-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 7, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A03-20-07-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 7, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A03-20-08-01', '', 3, 0, 0, 0, 2, 2, 3, 20, 8, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A03-20-08-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 8, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A03-20-08-02', '', 3, 0, 0, 0, 2, 2, 3, 20, 8, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-01-01-01', '', 2, 0, 0, 0, 2, 2, 4, 1, 1, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-01-01-02', '', 2, 0, 0, 0, 2, 2, 4, 1, 1, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-01-02-01', '', 2, 0, 0, 0, 2, 2, 4, 1, 2, 1, '', 1, ''); @@ -4416,7 +4416,7 @@ INSERT INTO `t_app_location` VALUES ('A04-19-03-02', '', 2, 0, 0, 0, 2, 2, 4, 19 INSERT INTO `t_app_location` VALUES ('A04-19-04-01', '', 2, 0, 0, 0, 2, 2, 4, 19, 4, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-19-04-02', '', 2, 0, 0, 0, 2, 2, 4, 19, 4, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-19-05-01', '', 3, 0, 0, 0, 2, 2, 4, 19, 5, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-19-05-02', '', 3, 0, 0, 0, 2, 2, 4, 19, 5, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-19-05-02', '', 3, 0, 0, 0, 2, 2, 4, 19, 5, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-19-06-01', '', 3, 0, 0, 0, 2, 2, 4, 19, 6, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-19-06-02', '', 3, 0, 0, 0, 2, 2, 4, 19, 6, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-19-07-01', '', 3, 0, 0, 0, 2, 2, 4, 19, 7, 1, '', 1, ''); @@ -4428,17 +4428,17 @@ INSERT INTO `t_app_location` VALUES ('A04-20-01-02', '', 2, 0, 0, 0, 2, 2, 4, 20 INSERT INTO `t_app_location` VALUES ('A04-20-02-01', '', 2, 0, 0, 0, 2, 2, 4, 20, 2, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-02-02', '', 2, 0, 0, 0, 2, 2, 4, 20, 2, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-03-01', '', 2, 0, 0, 0, 2, 2, 4, 20, 3, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-03-02', '', 2, 0, 0, 0, 2, 2, 4, 20, 3, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-03-02', '', 2, 0, 0, 0, 2, 2, 4, 20, 3, 2, '1746667398891010000', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-04-01', '', 2, 0, 0, 0, 2, 2, 4, 20, 4, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-04-02', '', 2, 0, 0, 0, 2, 2, 4, 20, 4, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-04-02', '', 2, 0, 0, 0, 2, 2, 4, 20, 4, 2, '1746608657909010000', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-05-01', '', 3, 0, 0, 0, 2, 2, 4, 20, 5, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-05-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 5, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-05-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 5, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-06-01', '', 3, 0, 0, 0, 2, 2, 4, 20, 6, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-06-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 6, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-06-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 6, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-07-01', '', 3, 0, 0, 0, 2, 2, 4, 20, 7, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-07-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 7, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-07-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 7, 2, '20250401150031', 1, ''); INSERT INTO `t_app_location` VALUES ('A04-20-08-01', '', 3, 0, 0, 0, 2, 2, 4, 20, 8, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A04-20-08-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 8, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A04-20-08-02', '', 3, 0, 0, 0, 2, 2, 4, 20, 8, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-01-01-01', '', 3, 0, 0, 0, 3, 3, 5, 1, 1, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-01-01-02', '', 3, 0, 0, 0, 3, 3, 5, 1, 1, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-01-02-01', '', 3, 0, 0, 0, 3, 3, 5, 1, 2, 1, '', 1, ''); @@ -4698,7 +4698,7 @@ INSERT INTO `t_app_location` VALUES ('A05-22-05-02', '', 3, 0, 0, 0, 3, 3, 5, 22 INSERT INTO `t_app_location` VALUES ('A05-22-06-01', '', 3, 0, 0, 0, 3, 3, 5, 22, 6, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-22-06-02', '', 3, 0, 0, 0, 3, 3, 5, 22, 6, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-23-04-01', '', 3, 0, 0, 0, 3, 3, 5, 23, 4, 1, '', 1, NULL); -INSERT INTO `t_app_location` VALUES ('A05-23-04-02', '', 3, 0, 0, 0, 3, 3, 5, 23, 4, 2, '', 1, NULL); +INSERT INTO `t_app_location` VALUES ('A05-23-04-02', '', 3, 0, 0, 0, 3, 3, 5, 23, 4, 2, 'TU1250410142129', 1, NULL); INSERT INTO `t_app_location` VALUES ('A05-23-05-01', '', 3, 0, 0, 0, 3, 3, 5, 23, 5, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-23-05-02', '', 3, 0, 0, 0, 3, 3, 5, 23, 5, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A05-23-06-01', '', 3, 0, 0, 0, 3, 3, 5, 23, 6, 1, '', 1, ''); @@ -4970,9 +4970,9 @@ INSERT INTO `t_app_location` VALUES ('A06-22-06-02', '', 3, 0, 0, 0, 3, 3, 6, 22 INSERT INTO `t_app_location` VALUES ('A06-23-01-01', '', 3, 0, 0, 0, 3, 3, 6, 23, 1, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-01-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 1, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-02-01', '', 3, 0, 0, 0, 3, 3, 6, 23, 2, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A06-23-02-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 2, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A06-23-02-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 2, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-03-01', '', 3, 0, 0, 0, 3, 3, 6, 23, 3, 1, '', 1, ''); -INSERT INTO `t_app_location` VALUES ('A06-23-03-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 3, 2, '', 1, ''); +INSERT INTO `t_app_location` VALUES ('A06-23-03-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 3, 2, 'TU1250410142129', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-04-01', '', 3, 0, 0, 0, 3, 3, 6, 23, 4, 1, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-04-02', '', 3, 0, 0, 0, 3, 3, 6, 23, 4, 2, '', 1, ''); INSERT INTO `t_app_location` VALUES ('A06-23-05-01', '', 3, 0, 0, 0, 3, 3, 6, 23, 5, 1, '', 1, ''); @@ -5621,8 +5621,32 @@ CREATE TABLE `t_app_vehicle` ( -- ---------------------------- INSERT INTO `t_app_vehicle` VALUES ('0401', 0, 3, '1', 0, '', '2025-04-01 13:11:48'); INSERT INTO `t_app_vehicle` VALUES ('0402', 0, 2, '1', 0, '', '2025-04-01 13:11:56'); -INSERT INTO `t_app_vehicle` VALUES ('20250401150031', 0, 3, '1', 0, '', '2025-04-08 19:30:11'); -INSERT INTO `t_app_vehicle` VALUES ('TU1250410142129', 0, 3, '1', 0, '', '2025-04-14 10:35:53'); +INSERT INTO `t_app_vehicle` VALUES ('1745558753966010000', 0, 2, '1', 0, 'A01-33-02-01', '2025-04-25 13:27:28'); +INSERT INTO `t_app_vehicle` VALUES ('1745718161234010000', 0, 2, '1', 0, 'A02-33-02-01', '2025-04-27 09:43:22'); +INSERT INTO `t_app_vehicle` VALUES ('1745723148351010000', 0, 2, '1', 0, 'A01-33-03-01', '2025-04-27 11:06:17'); +INSERT INTO `t_app_vehicle` VALUES ('1745723196828010000', 0, 2, '1', 0, 'A02-33-03-01', '2025-04-27 11:06:59'); +INSERT INTO `t_app_vehicle` VALUES ('1745723264270010000', 0, 2, '1', 0, 'A04-20-01-02', '2025-04-27 11:08:09'); +INSERT INTO `t_app_vehicle` VALUES ('1745723305188010000', 0, 2, '1', 0, 'A04-20-02-02', '2025-04-27 11:08:47'); +INSERT INTO `t_app_vehicle` VALUES ('1745888881760010000', 0, 2, '1', 0, 'A01-33-04-01', '2025-04-29 09:08:37'); +INSERT INTO `t_app_vehicle` VALUES ('1745888945173010000', 0, 2, '1', 0, 'A02-33-04-01', '2025-04-29 09:09:47'); +INSERT INTO `t_app_vehicle` VALUES ('1745889001626010000', 0, 2, '1', 0, 'A01-33-05-01', '2025-04-29 09:10:37'); +INSERT INTO `t_app_vehicle` VALUES ('1745889065559010000', 0, 2, '1', 0, 'A02-33-05-01', '2025-04-29 09:11:29'); +INSERT INTO `t_app_vehicle` VALUES ('1746608635002010000', 0, 2, '1', 0, 'A04-20-03-02', '2025-05-07 17:05:14'); +INSERT INTO `t_app_vehicle` VALUES ('1746608657909010000', 0, 2, '1', 0, 'A04-20-04-02', '2025-05-07 17:05:32'); +INSERT INTO `t_app_vehicle` VALUES ('1746609299575010000', 0, 2, '1', 0, 'A04-20-01-02', '2025-05-07 17:15:40'); +INSERT INTO `t_app_vehicle` VALUES ('1746609304191010000', 0, 2, '1', 0, 'A04-20-02-02', '2025-05-07 17:16:00'); +INSERT INTO `t_app_vehicle` VALUES ('1746612978352010000', 0, 3, '1', 0, '', '2025-05-07 18:17:02'); +INSERT INTO `t_app_vehicle` VALUES ('1746612982491010000', 0, 3, '1', 0, '', '2025-05-07 18:17:24'); +INSERT INTO `t_app_vehicle` VALUES ('1746612986120010000', 0, 3, '1', 0, '', '2025-05-07 18:17:40'); +INSERT INTO `t_app_vehicle` VALUES ('1746613919954010000', 0, 2, '1', 0, 'A02-33-01-01', '2025-05-07 18:32:32'); +INSERT INTO `t_app_vehicle` VALUES ('1746613923589010000', 0, 2, '1', 0, 'A01-33-02-01', '2025-05-07 18:32:48'); +INSERT INTO `t_app_vehicle` VALUES ('1746613926653010000', 0, 2, '1', 0, 'A01-33-06-01', '2025-05-07 18:33:00'); +INSERT INTO `t_app_vehicle` VALUES ('1746667398891010000', 0, 2, '1', 0, 'A04-20-03-02', '2025-05-08 09:23:51'); +INSERT INTO `t_app_vehicle` VALUES ('1746667475246010000', 0, 2, '1', 0, 'A02-33-02-01', '2025-05-08 09:25:05'); +INSERT INTO `t_app_vehicle` VALUES ('1747114922239010000', 0, 3, '1', 0, '', '2025-05-13 13:42:33'); +INSERT INTO `t_app_vehicle` VALUES ('1747114987022010000', 0, 3, '1', 0, '', '2025-05-13 13:43:33'); +INSERT INTO `t_app_vehicle` VALUES ('20250401150031', 0, 2, '1', 0, 'A04-20-07-02', '2025-04-29 09:07:41'); +INSERT INTO `t_app_vehicle` VALUES ('TU1250410142129', 0, 3, '1', 0, '', '2025-05-07 18:20:50'); -- ---------------------------- -- Table structure for t_app_wcs_task @@ -5664,84 +5688,33 @@ CREATE TABLE `t_app_wcs_task_bak` ( `send_time` datetime NULL DEFAULT NULL COMMENT '下发时间', `finish_time` datetime NULL DEFAULT NULL COMMENT '完成时间', `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注信息', + `count` int NULL DEFAULT NULL, + `total_num` double NULL DEFAULT NULL, PRIMARY KEY (`wcs_task_id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; -- ---------------------------- -- Records of t_app_wcs_task_bak -- ---------------------------- -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743329770773010000', 2, 1, 0, '123', '103', 'A04-20-05-02', '2025-03-30 18:16:11', '2025-03-30 18:16:11', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743341422433010001', 1, 2, 1, 'jit', 'A01-01-01-01', 'test', '2025-03-30 21:30:22', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743341422433010002', 1, 2, 1, 'empty', 'A01-01-02-01', 'test', '2025-03-30 21:30:22', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743342191826010000', 0, 2, 1, 'jit', 'A01-01-01-01', 'test', '2025-03-30 21:43:12', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743342482203010001', 0, 2, 1, 'jit', 'A01-01-01-01', 'test', '2025-03-30 21:48:02', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743342900738010000', 100, 2, 1, 'jit', 'A01-01-01-01', 'test', '2025-03-30 21:55:01', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743343528143010000', 100, 2, 1, 'empty', 'A01-01-02-01', 'test', '2025-03-30 22:05:28', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743343951853010002', 100, 2, 1, 'empty', 'A01-01-02-01', 'test', '2025-03-30 22:12:32', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743343951853010003', 100, 2, 1, 'jit', 'A01-01-01-01', 'test', '2025-03-30 22:12:32', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743344522083010001', 100, 2, 1, 'jit', 'A03-08-05-02', '103', '2025-03-30 22:22:02', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743382027621010000', 2, 1, 0, '1743382027618010000', '105', 'A02-33-01-01', '2025-03-31 08:47:08', '2025-03-31 08:47:08', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743383912264010000', 2, 1, 0, 'test', '103', 'A03-20-06-02', '2025-03-31 09:18:32', '2025-03-31 09:18:32', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743384034758010001', 100, 2, 1, 'test', 'A03-20-06-02', '103', '2025-03-31 09:20:35', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743476448366010000', 2, 1, 0, '0401', '103', 'A04-20-06-02', '2025-04-01 11:00:48', '2025-04-01 11:00:48', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743476596474010000', 100, 2, 1, '0401', 'A04-20-06-02', '103', '2025-04-01 11:03:16', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743477031894010000', 2, 1, 0, '0401', '103', 'A03-20-07-02', '2025-04-01 11:10:32', '2025-04-01 11:10:32', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743477038560010000', 2, 1, 0, '0402', '103', 'A04-20-07-02', '2025-04-01 11:10:39', '2025-04-01 11:10:39', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743478782571010000', 100, 2, 1, '0401', 'A03-20-07-02', '103', '2025-04-01 11:39:43', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743478782571010001', 100, 2, 1, '0402', 'A04-20-07-02', '103', '2025-04-01 11:39:43', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743480123490010000', 2, 1, 0, '0401', '103', 'A03-20-08-02', '2025-04-01 12:02:03', '2025-04-01 12:02:03', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743480132158010000', 2, 1, 0, '0402', '104', 'A03-20-08-01', '2025-04-01 12:02:12', '2025-04-01 12:02:12', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743480421406010000', 100, 2, 1, '0401', 'A03-20-08-02', '103', '2025-04-01 12:07:01', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743480421406010001', 100, 2, 1, '0402', 'A03-20-08-01', '104', '2025-04-01 12:07:01', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743483179285010000', 2, 1, 0, '0401', '103', 'A04-19-05-02', '2025-04-01 12:52:59', '2025-04-01 12:52:59', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743483183047010000', 2, 1, 0, '0402', '103', 'A04-19-05-01', '2025-04-01 12:53:03', '2025-04-01 12:53:03', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743483328497010000', 100, 2, 1, '0401', 'A04-19-05-02', '103', '2025-04-01 12:55:28', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743483328498010000', 100, 2, 1, '0402', 'A04-19-05-01', '103', '2025-04-01 12:55:28', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743484240379010000', 2, 1, 0, '0401', '103', 'A04-19-06-02', '2025-04-01 13:10:40', '2025-04-01 13:10:40', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743484244487010000', 2, 1, 0, '0402', '103', 'A04-19-06-01', '2025-04-01 13:10:44', '2025-04-01 13:10:44', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743484382453010000', 100, 2, 1, '0401', 'A04-19-06-02', '103', '2025-04-01 13:13:02', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743524588235010000', 2, 1, 0, '20250401150031', '103', 'A04-19-07-02', '2025-04-02 00:23:08', '2025-04-02 00:23:08', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743524821773010000', 100, 2, 1, '20250401150031', 'A04-19-07-02', '103', '2025-04-02 00:27:02', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743568708888010000', 2, 1, 0, '20250401150031', '103', 'A03-19-08-02', '2025-04-02 12:38:29', '2025-04-02 12:38:29', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743568898125010000', 100, 2, 1, '20250401150031', 'A03-19-08-02', '103', '2025-04-02 12:41:38', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743569311101010000', 2, 1, 0, '20250401150031', '103', 'A04-19-08-02', '2025-04-02 12:48:31', '2025-04-02 12:48:31', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743569690927010000', 2, 1, 0, '20250401150031', '103', 'A03-18-05-02', '2025-04-02 12:54:51', '2025-04-02 12:54:51', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743569737410010000', 100, 2, 1, '20250401150031', 'A03-18-05-02', '103', '2025-04-02 12:55:37', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743768173257010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-04 20:02:53', '2025-04-04 20:02:53', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743768338659010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-04 20:05:39', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743768967605010000', 2, 1, 0, '20250401150031', '103', 'A03-20-06-02', '2025-04-04 20:16:08', '2025-04-04 20:16:08', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743769055706010000', 100, 2, 1, '20250401150031', 'A03-20-06-02', '103', '2025-04-04 20:17:36', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743769225066010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-04 20:20:25', '2025-04-04 20:20:25', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743769303704010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-04 20:21:44', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743925166822010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-06 15:39:27', '2025-04-06 15:39:27', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743925697124010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-06 15:48:17', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743926144853010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-06 15:55:45', '2025-04-06 15:55:45', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1743926213118010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-06 15:56:53', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744013622086010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-07 16:13:42', '2025-04-07 16:13:42', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744013869045010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-07 16:17:49', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744013987278010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-07 16:19:47', '2025-04-07 16:19:47', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744014051040010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-07 16:20:51', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744101715450010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 16:41:55', '2025-04-08 16:41:55', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744103504534010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '272399-343153-97', '2025-04-08 17:11:45', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744104108494010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 17:21:48', '2025-04-08 17:21:48', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744104795372010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 17:33:15', '2025-04-08 17:33:15', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744107367237010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 18:16:07', '2025-04-08 18:16:07', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744108481848010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 18:34:42', '2025-04-08 18:34:42', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744110229130010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-01', '2025-04-08 19:03:49', '2025-04-08 19:03:49', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744110590961010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-01', '2025-04-08 19:09:51', '2025-04-08 19:09:51', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744110928097010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 19:15:28', '2025-04-08 19:15:28', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744110975061010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-08 19:16:15', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744111374581010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 19:22:55', '2025-04-08 19:22:55', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744111790731010000', 2, 1, 0, '20250401150031', '103', 'A04-20-05-02', '2025-04-08 19:29:51', '2025-04-08 19:29:51', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744111948895010000', 100, 2, 1, '20250401150031', 'A04-20-05-02', '103', '2025-04-08 19:32:29', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744433134762010000', 2, 1, 0, 'TU1250410142129', '103', 'A04-20-05-02', '2025-04-12 12:45:35', '2025-04-12 12:45:35', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744433267719010000', 100, 2, 1, 'TU1250410142129', 'A04-20-05-02', '103', '2025-04-12 12:47:48', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744434313304010000', 2, 1, 0, 'TU1250410142129', '103', 'A04-20-05-02', '2025-04-12 13:05:13', '2025-04-12 13:05:13', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744434475517010000', 100, 2, 1, 'TU1250410142129', 'A04-20-05-02', '103', '2025-04-12 13:07:56', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744434898455010000', 2, 1, 0, 'TU1250410142129', '103', 'A04-20-05-02', '2025-04-12 13:14:58', '2025-04-12 13:14:58', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744435011511010000', 100, 2, 1, 'TU1250410142129', 'A04-20-05-02', '103', '2025-04-12 13:16:52', NULL, NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744598132392010000', 2, 1, 0, 'TU1250410142129', '103', 'A04-20-05-02', '2025-04-14 10:35:32', '2025-04-14 10:35:32', NULL, NULL); -INSERT INTO `t_app_wcs_task_bak` VALUES ('1744598438538010000', 100, 2, 1, 'TU1250410142129', 'A04-20-05-02', '103', '2025-04-14 10:40:39', NULL, NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746609340144010000', 100, 1, 1, '1746609299575010000', '103', 'A04-20-01-02', '2025-05-07 17:15:40', '2025-05-07 17:15:40', '2025-05-07 17:15:40', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746609360137010000', 100, 1, 1, '1746609304191010000', '104', 'A04-20-02-02', '2025-05-07 17:16:00', '2025-05-07 17:16:00', '2025-05-07 17:16:00', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613022138010000', 100, 1, 1, '1746612978352010000', '105', 'A02-33-01-01', '2025-05-07 18:17:02', '2025-05-07 18:17:02', '2025-05-07 18:17:02', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613044140010000', 100, 1, 1, '1746612982491010000', '106', 'A01-33-02-01', '2025-05-07 18:17:24', '2025-05-07 18:17:24', '2025-05-07 18:17:24', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613060140010000', 100, 1, 1, '1746612986120010000', '107', 'A02-33-02-01', '2025-05-07 18:17:40', '2025-05-07 18:17:40', '2025-05-07 18:17:40', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613250140010000', 100, 1, 1, 'TU1250410142129', '101', 'A06-23-01-02', '2025-05-07 18:20:50', '2025-05-07 18:20:50', '2025-05-07 18:20:50', 'test', 2, 323.5); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613362140010000', 100, 2, 1, 'TU1250410142129', 'A06-23-01-02', '101', '2025-05-07 18:22:42', NULL, NULL, 'testUser', 2, 323.5); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613765994010000', 100, 2, 1, '1746612978352010000', 'A02-33-01-01', '105', '2025-05-07 18:29:26', NULL, NULL, 'testUser', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613787988010000', 100, 2, 1, '1746612982491010000', 'A01-33-02-01', '106', '2025-05-07 18:29:48', NULL, NULL, 'testUser', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613795989010000', 100, 2, 1, '1746612986120010000', 'A02-33-02-01', '107', '2025-05-07 18:29:56', NULL, NULL, 'testUser', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613951990010000', 100, 1, 1, '1746613919954010000', '105', 'A02-33-01-01', '2025-05-07 18:32:32', '2025-05-07 18:32:32', '2025-05-07 18:32:32', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613967988010000', 100, 1, 1, '1746613923589010000', '106', 'A01-33-02-01', '2025-05-07 18:32:48', '2025-05-07 18:32:48', '2025-05-07 18:32:48', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746613979988010000', 100, 1, 1, '1746613926653010000', '107', 'A01-33-06-01', '2025-05-07 18:33:00', '2025-05-07 18:33:00', '2025-05-07 18:33:00', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746667430528010000', 100, 1, 1, '1746667398891010000', '103', 'A04-20-03-02', '2025-05-08 09:23:51', '2025-05-08 09:23:51', '2025-05-08 09:23:51', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1746667504517010000', 100, 1, 1, '1746667475246010000', '105', 'A02-33-02-01', '2025-05-08 09:25:05', '2025-05-08 09:25:05', '2025-05-08 09:25:05', 'WCS', 1, 0); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1747114953291010000', 100, 1, 1, '1747114922239010000', '103', 'A04-20-01-02', '2025-05-13 13:42:33', '2025-05-13 13:42:33', '2025-05-13 13:42:33', 'WCS', 1, 1); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1747115013292010000', 100, 1, 1, '1747114987022010000', '103', 'A04-20-02-02', '2025-05-13 13:43:33', '2025-05-13 13:43:33', '2025-05-13 13:43:33', 'WCS', 1, 1); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1747115177284010000', 100, 2, 1, '1747114922239010000', 'A04-20-01-02', '103', '2025-05-13 13:46:17', NULL, NULL, 'testUser', 1, 1); +INSERT INTO `t_app_wcs_task_bak` VALUES ('1747140401124010000', 100, 2, 1, '1747114987022010000', 'A04-20-02-02', '103', '2025-05-13 20:46:41', NULL, NULL, 'testUser', 1, 1); -- ---------------------------- -- Table structure for t_app_work diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/constant/enums/wms/WmsLocationNumEnums.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/constant/enums/wms/WmsLocationNumEnums.java index 55a57ed..d085ce9 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/constant/enums/wms/WmsLocationNumEnums.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/constant/enums/wms/WmsLocationNumEnums.java @@ -6,6 +6,7 @@ import lombok.Getter; @Getter @AllArgsConstructor public enum WmsLocationNumEnums { + LOCATION_NUM_1(525, "1号库"), LOCATION_NUM_2(316, "2号库"), LOCATION_NUM_3(540, "3号库"); diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/LocationController.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/LocationController.java index 079a36e..0f65614 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/LocationController.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/LocationController.java @@ -1,6 +1,7 @@ package com.wms_main.controller.wms; import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.po.TAppLocation; import com.wms_main.service.controller.ILocationControllerService; import lombok.RequiredArgsConstructor; @@ -26,4 +27,9 @@ public class LocationController { public BaseWmsApiResponse genLocations(@RequestBody TAppLocation locationQuery) { return locationControllerService.genLocations(locationQuery); } + + @GetMapping("/getUsedLocations") + public WmsApiResponse getUsedLocations(@RequestParam(value = "equipmentId") Integer equipmentId, @RequestParam(value = "locationType") Integer locationType) { + return locationControllerService.getUsedLocations(equipmentId, locationType); + } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/TaskController.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/TaskController.java index 6928b75..3c1dcfd 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/TaskController.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/wms/TaskController.java @@ -5,11 +5,14 @@ import com.wms_main.model.dto.request.wms.*; import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.TAppWcsTaskBak; import com.wms_main.model.vo.wms.TaskConfirmVo; import com.wms_main.service.controller.ITaskControllerService; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; +import java.util.List; + /** * 任务控制类 */ @@ -60,4 +63,9 @@ public class TaskController { public WmsApiResponse getCurrentTask(@RequestBody BaseWmsRequest wmsRequest) { return taskControllerService.getCurrentTask(wmsRequest); } + + @PostMapping("/getTaskBaks") + public WmsApiResponse> getTaskBaks(@RequestBody WcsTaskBakRequest request) { + return taskControllerService.getWcsTaskBak(request); + } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/ycwms/YcwmsController.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/ycwms/YcwmsController.java index 8c59f36..69663f4 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/ycwms/YcwmsController.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/controller/ycwms/YcwmsController.java @@ -46,7 +46,7 @@ public class YcwmsController { } @GetMapping("/getAvailPercent") - public YcwmsResponse getAvailPercent(String equipmentId) { + public YcwmsResponse getAvailPercent(@RequestParam(value = "equipmentId") String equipmentId) { return ycwmsControllerService.getAvailPercent(equipmentId); } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/query/StockQuery.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/query/StockQuery.java index 6ecbda9..909fd38 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/query/StockQuery.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/query/StockQuery.java @@ -46,15 +46,15 @@ public class StockQuery extends PageQuery{ /** * 起始日期 */ - @JsonProperty("起始日期") + @JsonProperty("fromDate") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate fromDate; /** * 结束日期 */ + @JsonProperty("toDate") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") - @JsonProperty("结束日期") private LocalDate toDate; } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/wms/WcsTaskBakRequest.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/wms/WcsTaskBakRequest.java new file mode 100644 index 0000000..3151e11 --- /dev/null +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/wms/WcsTaskBakRequest.java @@ -0,0 +1,29 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsTaskBakRequest { + @JsonProperty("origin") + String origin; + + @JsonProperty("destination") + String destination; + + @JsonProperty("vehicleId") + String vehicleId; + + @JsonProperty("createDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + LocalDate createDate; +} diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/ycwms/OrderOutReq.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/ycwms/OrderOutReq.java index 2a9bb1b..5885168 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/ycwms/OrderOutReq.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/dto/request/ycwms/OrderOutReq.java @@ -24,7 +24,7 @@ public class OrderOutReq { @JsonProperty("quantity") private Double quantity; - - + @JsonProperty("clientId") + private String clientId; } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java index 656edcf..f38bf93 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java @@ -72,4 +72,10 @@ public class TAppWcsTaskBak { */ @TableField(value = "remark") private String remark; + + @TableField(value = "count") + private Integer count; + + @TableField(value = "total_num") + private Double totalNum; } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/vo/wms/StockVo.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/vo/wms/StockVo.java index 356e976..cc5cf7d 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/vo/wms/StockVo.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/model/vo/wms/StockVo.java @@ -80,6 +80,9 @@ public class StockVo { */ @JsonProperty("sled") private String sled; + + @JsonProperty("batch") + private String batch; /** * 初次入库时间 */ @@ -105,6 +108,9 @@ public class StockVo { @JsonProperty("lastUpdateUser") private String lastUpdateUser; + @JsonProperty("barCode") + private String barCode; + /** * 库存数据 Po->Vo * @param stockPo 库存Po @@ -124,10 +130,12 @@ public class StockVo { stockPo.getRemainNum(), stockPo.getExpireDate(), stockPo.getSled(), + stockPo.getBatch(), stockPo.getFirstInTime(), stockPo.getFirstInUser(), stockPo.getLastUpdateTime(), - stockPo.getLastUpdateUser() + stockPo.getLastUpdateUser(), + stockPo.getBarCode() ); } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java index f067db2..a3fc7c5 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java @@ -1,7 +1,9 @@ package com.wms_main.service.business.serviceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.wms_main.app.AppCommon; import com.wms_main.constant.AppConstant; import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; @@ -385,39 +387,32 @@ public class StackerTaskServiceImpl implements IStackerTaskService { needDeleteOrderIns.add(thisOrderIn.getRecordId()); orderCBIds.add(thisOrderIn.getOrderId()); // 添加库存 - String validateStr = thisOrderIn.getGoodsId() + thisOrderIn.getGoodsBarcode() + thisOrderIn.getGoodsType() + thisOrderIn.getSpecification() + thisOrderIn.getXsfbillno() + thisOrderIn.getXsfseq().toString() + thisOrderIn.getNeibubianhao(); - if (!stockMap.containsKey(validateStr)) { - TAppStock newStock = new TAppStock(); - newStock.setStockId(UUIDUtils.getNewUUID()); - newStock.setVehicleId(vehicleId); - newStock.setLocationId(thisOrderIn.getDestination()); - newStock.setStockStatus(WmsStockStatusEnums.OK.getCode()); - newStock.setGoodsId(thisOrderIn.getGoodsId()); - newStock.setGoodsStatus(WmsGoodsStatusEnums.OK.getCode()); - newStock.setFirstInTime(thisOrderIn.getCreateTime()); - newStock.setFirstInUser("WMS"); - newStock.setLastUpdateTime(LocalDateTime.now()); - newStock.setLastUpdateUser("WMS"); - newStock.setTotalNum(thisOrderIn.getQuantity()); - newStock.setRemainNum(thisOrderIn.getQuantity()); - newStock.setRealNum(thisOrderIn.getQuantity()); - newStock.setGoodsDesc(thisOrderIn.getGoodsDesc()); - newStock.setSled(thisOrderIn.getSpecification()); - newStock.setMesId(thisOrderIn.getOrderId()); - newStock.setBatch(thisOrderIn.getBatch()); - newStock.setGoodsType(thisOrderIn.getGoodsType()); - newStock.setBarCode(thisOrderIn.getInStand()); - newStock.setGoodsBarCode(thisOrderIn.getGoodsBarcode()); - newStock.setXsfbillno(thisOrderIn.getXsfbillno()); - newStock.setXsfseq(thisOrderIn.getXsfseq()); - newStock.setNeibubianhao(thisOrderIn.getNeibubianhao()); - stockMap.put(validateStr, newStock); - } else { - TAppStock newStock = stockMap.get(validateStr); - newStock.setTotalNum(newStock.getTotalNum() + thisOrderIn.getQuantity()); - newStock.setRemainNum(newStock.getRemainNum() + thisOrderIn.getQuantity()); - newStock.setRealNum(newStock.getRealNum() + thisOrderIn.getQuantity()); - } + TAppStock newStock = new TAppStock(); + newStock.setStockId(UUIDUtils.getNewUUID()); + newStock.setVehicleId(vehicleId); + newStock.setLocationId(thisOrderIn.getDestination()); + newStock.setStockStatus(WmsStockStatusEnums.OK.getCode()); + newStock.setGoodsId(thisOrderIn.getGoodsId()); + newStock.setGoodsStatus(WmsGoodsStatusEnums.OK.getCode()); + newStock.setFirstInTime(thisOrderIn.getCreateTime()); + newStock.setFirstInUser(thisOrderIn.getClientId()); + newStock.setLastUpdateTime(LocalDateTime.now()); + newStock.setLastUpdateUser(thisOrderIn.getClientId()); + newStock.setTotalNum(thisOrderIn.getQuantity()); + newStock.setRemainNum(thisOrderIn.getQuantity()); + newStock.setRealNum(thisOrderIn.getQuantity()); + newStock.setGoodsDesc(thisOrderIn.getGoodsName()); + newStock.setSled(thisOrderIn.getSpecification()); + newStock.setMesId(thisOrderIn.getOrderId()); + newStock.setBatch(thisOrderIn.getBatch()); + newStock.setGoodsType(thisOrderIn.getGoodsType()); + newStock.setBarCode(thisOrderIn.getInStand()); + newStock.setGoodsBarCode(thisOrderIn.getGoodsBarcode()); + newStock.setXsfbillno(thisOrderIn.getXsfbillno()); + newStock.setXsfseq(thisOrderIn.getXsfseq()); + newStock.setNeibubianhao(thisOrderIn.getNeibubianhao()); + + appStockService.save(newStock); } // 将目标库位的工作状态设置为未工作 appLocationService.update(new LambdaUpdateWrapper() @@ -426,10 +421,10 @@ public class StackerTaskServiceImpl implements IStackerTaskService { .eq(TAppLocation::getLocationId, location) ); // 需要更新下当前载具下的库存其他信息 - appStockService.update(new LambdaUpdateWrapper() - .set(TAppStock::getStockStatus, WmsStockStatusEnums.OK.getCode()) - .set(TAppStock::getLocationId, location) - .eq(TAppStock::getVehicleId, vehicleId)); +// appStockService.update(new LambdaUpdateWrapper() +// .set(TAppStock::getStockStatus, WmsStockStatusEnums.OK.getCode()) +// .set(TAppStock::getLocationId, location) +// .eq(TAppStock::getVehicleId, vehicleId)); // 保存载具表 TAppVehicle vehicle = new TAppVehicle(); vehicle.setVehicleId(vehicleId); @@ -440,11 +435,23 @@ public class StackerTaskServiceImpl implements IStackerTaskService { vehicle.setLocationId(location); vehicle.setLastInTime(LocalDateTime.now()); appVehicleService.saveOrUpdate(vehicle); - // 保存库存信息 - newStockList = new ArrayList(stockMap.values()); - if (!stockMap.isEmpty()) { - appStockService.saveOrUpdateBatch(newStockList); - } + + TAppWcsTaskBak wcsTaskBak = new TAppWcsTaskBak(); + wcsTaskBak.setWcsTaskId(UUIDUtils.getNewUUID()); + wcsTaskBak.setWcsTaskStatus(100); + wcsTaskBak.setWcsTaskType(WmsTaskTypeEnums.IN.getCode()); + wcsTaskBak.setTaskPriority(1); + wcsTaskBak.setVehicleId(vehicleId); + wcsTaskBak.setOrigin(thisOrderInList.getFirst().getInStand()); + wcsTaskBak.setDestination(location); + wcsTaskBak.setCreateTime(LocalDateTime.now()); + wcsTaskBak.setSendTime(LocalDateTime.now()); + wcsTaskBak.setFinishTime(LocalDateTime.now()); + wcsTaskBak.setRemark(thisOrderInList.getFirst().getClientId()); + wcsTaskBak.setCount(thisOrderInList.size()); + wcsTaskBak.setTotalNum(thisOrderInList.stream().mapToDouble(TAppOrderIn::getQuantity).sum()); + appWcsTaskBakService.save(wcsTaskBak); + // 删除已经完成的入库单 if (!needDeleteOrderIns.isEmpty()) { appOrderInService.removeByIds(needDeleteOrderIns); @@ -777,27 +784,46 @@ public class StackerTaskServiceImpl implements IStackerTaskService { thisVehicle.setVehicleStatus(WmsVehicleStatusEnums.OUT.getCode()); thisVehicle.setLocationId(""); appVehicleService.updateById(thisVehicle); - // 更新当前载具对应的所有库存的状态为已出库 - appStockService.remove(new LambdaUpdateWrapper() - .eq(TAppStock::getVehicleId, vehicleId)); if (!thisVehicleOutTasks.isEmpty()) { // 存储出库记录 List stockOutRecordList = thisVehicleOutTasks.stream() - .map(outTask -> new TAppWcsTaskBak( - outTask.getWcsTaskId(), - outTask.getWcsTaskStatus(), - outTask.getWcsTaskType(), - outTask.getTaskPriority(), - outTask.getVehicleId(), - outTask.getOrigin(), - outTask.getDestination(), - outTask.getCreateTime(), - outTask.getSendTime(), - outTask.getFinishTime(), - outTask.getRemark() - )).toList(); + .map(outTask -> { + Long count = appStockService.count( + new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, outTask.getVehicleId()) + ); + QueryWrapper queryWrapper = Wrappers.query(); + queryWrapper.select("SUM(total_num) as totalWeight"); + queryWrapper.eq("vehicle_id", outTask.getVehicleId()); + + Map result = appStockService.getMap(queryWrapper); + Double totalWeight = 0.0; + if (result != null && result.get("totalWeight") != null) { + totalWeight = ((Number) result.get("totalWeight")).doubleValue(); + } + + return new TAppWcsTaskBak( + outTask.getWcsTaskId(), + outTask.getWcsTaskStatus(), + outTask.getWcsTaskType(), + outTask.getTaskPriority(), + outTask.getVehicleId(), + outTask.getOrigin(), + outTask.getDestination(), + outTask.getCreateTime(), + outTask.getSendTime(), + outTask.getFinishTime(), + outTask.getRemark(), + count.intValue(), + totalWeight + ); + + }).toList(); appWcsTaskBakService.saveBatch(stockOutRecordList); + // 更新当前载具对应的所有库存的状态为已出库 + appStockService.remove(new LambdaUpdateWrapper() + .eq(TAppStock::getVehicleId, vehicleId)); // 删除当前载具所对应的出库任务 appWcsTaskService.remove(new LambdaQueryWrapper() .eq(TAppWcsTask::getVehicleId, vehicleId) diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ILocationControllerService.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ILocationControllerService.java index 947952e..3450598 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ILocationControllerService.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ILocationControllerService.java @@ -1,7 +1,7 @@ package com.wms_main.service.controller; -import com.wms_main.model.dto.query.LocationQuery; import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.po.TAppLocation; /** @@ -14,4 +14,6 @@ public interface ILocationControllerService { * @return 创建结果 */ BaseWmsApiResponse genLocations(TAppLocation locationQuery); + + WmsApiResponse getUsedLocations(Integer equipmentId, Integer locationType); } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ITaskControllerService.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ITaskControllerService.java index 56a1e24..7a8a89d 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ITaskControllerService.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/ITaskControllerService.java @@ -9,7 +9,12 @@ import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; import com.wms_main.model.dto.response.wcs.WcsApiResponse; import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.TAppTaskBak; +import com.wms_main.model.po.TAppWcsTaskBak; import com.wms_main.model.vo.wms.TaskConfirmVo; +import org.apache.poi.ss.formula.functions.T; + +import java.util.List; /** * 任务控制类 服务接口 @@ -42,4 +47,6 @@ public interface ITaskControllerService { * @return 处理结果 */ WmsApiResponse getCurrentTask(BaseWmsRequest wmsRequest); + + WmsApiResponse> getWcsTaskBak(WcsTaskBakRequest request); } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java index 4d87763..cab75d2 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java @@ -1,8 +1,9 @@ package com.wms_main.service.controller.serviceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.wms_main.dao.ITAppLocationService; -import com.wms_main.model.dto.query.LocationQuery; import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; import com.wms_main.model.po.TAppLocation; import com.wms_main.repository.utils.StringUtils; import com.wms_main.service.controller.ILocationControllerService; @@ -65,4 +66,15 @@ public class LocationControllerServiceImpl implements ILocationControllerService appLocationService.saveBatch(newLocationList); return BaseWmsApiResponse.success("成功创建了" + newLocationList.size() + "个库位。"); } + + @Override + public WmsApiResponse getUsedLocations(Integer equipmentId, Integer locationType) { + Long res = appLocationService.count( + new LambdaQueryWrapper() + .eq(TAppLocation::getEquipmentId, equipmentId) + .eq(TAppLocation::getLocationType, locationType) + .eq(TAppLocation::getIsOccupy, 1) + ); + return WmsApiResponse.success(res); + } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java index fe105bb..be3f37d 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java @@ -29,11 +29,15 @@ public class StockControllerServiceImpl implements IStockControllerService { */ @Override public WmsApiResponse> queryStocksByPage(StockQuery stockQuery) { + if (stockQuery == null) { + return WmsApiResponse.error("查询参数不能为NULL", null); + } Page page = stockQuery.toMpPage(); LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() .like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), TAppStock::getVehicleId, stockQuery.getVehicleId()) .like(StringUtils.isNotEmpty(stockQuery.getLocationId()), TAppStock::getLocationId, stockQuery.getLocationId()) - .like(StringUtils.isNotEmpty(stockQuery.getGoodsId()), TAppStock::getGoodsId, stockQuery.getGoodsId()) + .eq(StringUtils.isNotEmpty(stockQuery.getStandId()), TAppStock::getBarCode, stockQuery.getStandId()) + .eq(StringUtils.isNotEmpty(stockQuery.getGoodsId()), TAppStock::getGoodsId, stockQuery.getGoodsId()) .eq(stockQuery.getStockStatus() != null, TAppStock::getStockStatus, stockQuery.getStockStatus()) .eq(stockQuery.getGoodsStatus() != null, TAppStock::getGoodsStatus, stockQuery.getGoodsStatus()); if (stockQuery.getFromDate() != null) { diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java index 2c940eb..ec5c2b0 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java @@ -2,6 +2,7 @@ package com.wms_main.service.controller.serviceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.wms_main.app.AppCommon; import com.wms_main.constant.AppConstant; import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; @@ -37,6 +38,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.time.LocalDateTime; +import java.time.LocalTime; import java.util.*; /** @@ -354,21 +356,23 @@ public class TaskControllerServiceImpl implements ITaskControllerService { ); appOrderInService.updateStatusAndDestinationWithVehicleNo(wcsTaskResultRequest.getVehicleNo(), OrderStatusEnum.COMPLETE, null); // 移除wcs任务,并向wcs备份表添加记录 - TAppWcsTaskBak wcsTaskBak = new TAppWcsTaskBak( - wcsTask.getWcsTaskId(), - wcsTask.getWcsTaskStatus(), - wcsTask.getWcsTaskType(), - wcsTask.getTaskPriority(), - wcsTask.getVehicleId(), - wcsTask.getOrigin(), - wcsTask.getDestination(), - wcsTask.getCreateTime(), - wcsTask.getSendTime(), - wcsTask.getFinishTime(), - wcsTask.getRemark() - ); +// TAppWcsTaskBak wcsTaskBak = new TAppWcsTaskBak( +// wcsTask.getWcsTaskId(), +// wcsTask.getWcsTaskStatus(), +// wcsTask.getWcsTaskType(), +// wcsTask.getTaskPriority(), +// wcsTask.getVehicleId(), +// wcsTask.getOrigin(), +// wcsTask.getDestination(), +// wcsTask.getCreateTime(), +// wcsTask.getSendTime(), +// wcsTask.getFinishTime(), +// wcsTask.getRemark(), +// 0, +// 0.0 +// ); appWcsTaskService.removeById(wcsTask.getWcsTaskId()); - appWcsTaskBakService.save(wcsTaskBak); +// appWcsTaskBakService.save(wcsTaskBak); } else if (Objects.equals(wcsTaskResultRequest.getTaskStatus(), WcsStackerTaskStatusEnums.FINISH.getCode()) && Objects.equals(wcsTask.getWcsTaskType(), WcsStackerTaskTypeEnums.OUT.getCode())){ // 更新wms任务状态 appWmsTaskService.update( @@ -422,4 +426,17 @@ public class TaskControllerServiceImpl implements ITaskControllerService { // } return WmsApiResponse.instanceOf(WmsApiResponseCodeEnums.WARNING.getCode(), "当前箱子没有拣选需求,请直接放行。", null); } + + @Override + public WmsApiResponse> getWcsTaskBak(WcsTaskBakRequest request) { + List result = appWcsTaskBakService.list( + new LambdaQueryWrapper() + .eq(StringUtils.isNotEmpty(request.getOrigin()), TAppWcsTaskBak::getOrigin, request.getOrigin()) + .eq(StringUtils.isNotEmpty(request.getDestination()), TAppWcsTaskBak::getDestination, request.getDestination()) + .like(StringUtils.isNotEmpty(request.getVehicleId()), TAppWcsTaskBak::getVehicleId, request.getVehicleId()) + .ge(TAppWcsTaskBak::getCreateTime, request.getCreateDate().atStartOfDay()) + .le(TAppWcsTaskBak::getCreateTime, request.getCreateDate().atTime(LocalTime.MAX)) + ); + return WmsApiResponse.success("成功", result); + } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/WcsControllerServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/WcsControllerServiceImpl.java index 8d1bfc9..f1aa5d9 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/WcsControllerServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/WcsControllerServiceImpl.java @@ -49,7 +49,7 @@ public class WcsControllerServiceImpl implements IWcsControllerService { // 一号堆垛机,全部存空托盘 if(point.equals("105") || point.equals("106") || point.equals("107")) { // 选一个库位 - TAppLocation targetLocation = stackerTaskService.getEmptyLocation(1, null); + TAppLocation targetLocation = stackerTaskService.getEmptyLocation(1, point.equals("107") ? WmsLocationTypeEnums.TYPE_600 : WmsLocationTypeEnums.TYPE_500); if(targetLocation == null) { return WcsApiResponse.error("没有空闲库位,请稍后再试", null); } @@ -100,6 +100,7 @@ public class WcsControllerServiceImpl implements IWcsControllerService { wcsTask.setDestination(targetLocation.getLocationId()); wcsTask.setCreateTime(LocalDateTime.now()); wcsTask.setSendTime(LocalDateTime.now()); + wcsTask.setRemark("WCS"); boolean saveWcsTask = wcsTaskService.save(wcsTask); if(!saveWcsTask) { return WcsApiResponse.error("任务创建失败,请稍后再试", null); @@ -120,83 +121,144 @@ public class WcsControllerServiceImpl implements IWcsControllerService { } // 二号堆垛机,一部分存空一部分存有货位置 if(point.equals("103") || point.equals("104")) { - if(request.getVehicleNo().equals("0")) { // 空托盘 + List vehicleNos = List.of(request.getVehicleNo().split(";")); + for (String vehicleNo : vehicleNos) { + if(vehicleNo.equals("0")) { // 空托盘 + // 选一个库位 + TAppLocation targetLocation = stackerTaskService.getEmptyLocation(2, WmsLocationTypeEnums.TYPE_EMPTY); + if(targetLocation == null) { + return WcsApiResponse.error("没有空闲库位,请稍后再试", null); + } + String goodsId34 = point.equals("103") ? "0" : "1"; + String vehicleId = UUIDUtils.getNewUUID(); + // 插入一条默认入库单 + TAppOrderIn orderIn = new TAppOrderIn(); + orderIn.setRecordId(UUIDUtils.getNewUUID()); + orderIn.setOrderId(UUIDUtils.getNewUUID()); + orderIn.setVehicleNo(vehicleId); + orderIn.setVehicleSize(point); + orderIn.setInStand(point); + orderIn.setDestination(targetLocation.getLocationId()); + orderIn.setClientId("WCS"); + orderIn.setGoodsId(goodsId34); + orderIn.setGoodsName("空托盘"); + orderIn.setBatch("0"); + orderIn.setGoodsType("0"); + orderIn.setSpecification("empty"); + orderIn.setQuantity(1.0); + orderIn.setGoodsDesc(""); + orderIn.setXsfbillno(""); + orderIn.setXsfseq(0); + orderIn.setNeibubianhao(""); + orderIn.setOrderStatus(OrderStatusEnum.RUNNING.getCode()); + orderIn.setCreateTime(LocalDateTime.now()); + orderIn.setUpdateTime(LocalDateTime.now()); + boolean saveOrderIn = orderInService.save(orderIn); + if(!saveOrderIn) { + return WcsApiResponse.error("入库单保存失败,请稍后再试", null); + } + // 插入一条WcsTask + String taskId = UUIDUtils.getNewUUID(); + TAppWcsTask wcsTask = new TAppWcsTask(); + wcsTask.setWcsTaskId(taskId); + wcsTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.RUN.getCode()); + wcsTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); + wcsTask.setTaskPriority(0); + wcsTask.setVehicleId(vehicleId); + wcsTask.setOrigin(point); + wcsTask.setDestination(targetLocation.getLocationId()); + wcsTask.setCreateTime(LocalDateTime.now()); + wcsTask.setSendTime(LocalDateTime.now()); + wcsTask.setRemark("WCS"); + boolean saveWcsTask = wcsTaskService.save(wcsTask); + if(!saveWcsTask) { + return WcsApiResponse.error("任务创建失败,请稍后再试", null); + } + // 锁定库位 + boolean lockLocation = locationService.updateLocationOccupy(targetLocation.getLocationId(), 1); + if(!lockLocation) { + return WcsApiResponse.error("库位锁定失败,请稍后再试", null); + } + InTaskResp inTaskResp = new InTaskResp(); + inTaskResp.setTaskId(taskId); + inTaskResp.setUser("WMS"); + inTaskResp.setVehicleNo(vehicleId); + inTaskResp.setDestination(targetLocation.getLocationId()); + inTaskResp.setSpare1(""); + inTaskResp.setSpare2(""); + return WcsApiResponse.success(inTaskResp); + } else { // 带料 + // 选一个库位 + TAppLocation targetLocation = stackerTaskService.getEmptyLocation(2, WmsLocationTypeEnums.TYPE_PRODUCT); + if(targetLocation == null) { + return WcsApiResponse.error("没有空闲库位,请稍后再试", null); + } + // 校验是否存在入库单 + List withOrderId = orderInService.getWithVehicleNoAndStatus(vehicleNo, OrderStatusEnum.CREATE); + if(withOrderId == null) { + return WcsApiResponse.error("数据服务异常,请稍后重试", null); + } + if(withOrderId.isEmpty()) { + log.error("载具号无效或过期{}", vehicleNo); + continue; + } + // TODO 和 入库单校验,WCS 传过来的子条吗数据在条吗里面,用分号隔开 + // TODO 和 mes 校验 + // 更新入库单状态为运行中 + boolean updateStatusWithVehicleNo = orderInService.updateStatusAndDestinationWithVehicleNo(vehicleNo, OrderStatusEnum.RUNNING, targetLocation.getLocationId()); + if(!updateStatusWithVehicleNo) { + return WcsApiResponse.error("入库单状态更新失败,请稍后再试", null); + } + // 插入一条WcsTask + String taskId = UUIDUtils.getNewUUID(); + TAppWcsTask wcsTask = new TAppWcsTask(); + wcsTask.setWcsTaskId(taskId); + wcsTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.RUN.getCode()); + wcsTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); + wcsTask.setTaskPriority(0); + wcsTask.setVehicleId(vehicleNo); + wcsTask.setOrigin(point); + wcsTask.setDestination(targetLocation.getLocationId()); + wcsTask.setCreateTime(LocalDateTime.now()); + wcsTask.setSendTime(LocalDateTime.now()); + wcsTask.setRemark(withOrderId.getFirst().getClientId()); + boolean saveWcsTask = wcsTaskService.save(wcsTask); + if(!saveWcsTask) { + return WcsApiResponse.error("任务创建失败,请稍后再试", null); + } + // 锁定库位 + boolean lockLocation = locationService.updateLocationOccupy(targetLocation.getLocationId(), 1); + if(!lockLocation) { + return WcsApiResponse.error("库位锁定失败,请稍后再试", null); + } + InTaskResp inTaskResp = new InTaskResp(); + inTaskResp.setTaskId(taskId); + inTaskResp.setUser("WMS"); + inTaskResp.setVehicleNo(vehicleNo); + inTaskResp.setDestination(targetLocation.getLocationId()); + inTaskResp.setSpare1(""); + inTaskResp.setSpare2(""); + return WcsApiResponse.success(inTaskResp); + } + } + } + // 三号堆垛机 + if(point.equals("101") || point.equals("102")) { + List vehicleNos = List.of(request.getVehicleNo().split(";")); + for (String vehicleNo : vehicleNos) { // 选一个库位 - TAppLocation targetLocation = stackerTaskService.getEmptyLocation(2, WmsLocationTypeEnums.TYPE_EMPTY); + TAppLocation targetLocation = stackerTaskService.getEmptyLocation(3, WmsLocationTypeEnums.TYPE_PRODUCT); if(targetLocation == null) { return WcsApiResponse.error("没有空闲库位,请稍后再试", null); } - String goodsId34 = point.equals("103") ? "0" : "1"; - String vehicleId = UUIDUtils.getNewUUID(); - // 插入一条默认入库单 - TAppOrderIn orderIn = new TAppOrderIn(); - orderIn.setRecordId(UUIDUtils.getNewUUID()); - orderIn.setOrderId(UUIDUtils.getNewUUID()); - orderIn.setVehicleNo(vehicleId); - orderIn.setVehicleSize(point); - orderIn.setInStand(point); - orderIn.setDestination(targetLocation.getLocationId()); - orderIn.setClientId("WCS"); - orderIn.setGoodsId(goodsId34); - orderIn.setGoodsName("空托盘"); - orderIn.setBatch("0"); - orderIn.setGoodsType("0"); - orderIn.setSpecification("empty"); - orderIn.setQuantity(1.0); - orderIn.setGoodsDesc(""); - orderIn.setXsfbillno(""); - orderIn.setXsfseq(0); - orderIn.setNeibubianhao(""); - orderIn.setOrderStatus(OrderStatusEnum.RUNNING.getCode()); - orderIn.setCreateTime(LocalDateTime.now()); - orderIn.setUpdateTime(LocalDateTime.now()); - boolean saveOrderIn = orderInService.save(orderIn); - if(!saveOrderIn) { - return WcsApiResponse.error("入库单保存失败,请稍后再试", null); - } - // 插入一条WcsTask - String taskId = UUIDUtils.getNewUUID(); - TAppWcsTask wcsTask = new TAppWcsTask(); - wcsTask.setWcsTaskId(taskId); - wcsTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.RUN.getCode()); - wcsTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); - wcsTask.setTaskPriority(0); - wcsTask.setVehicleId(vehicleId); - wcsTask.setOrigin(point); - wcsTask.setDestination(targetLocation.getLocationId()); - wcsTask.setCreateTime(LocalDateTime.now()); - wcsTask.setSendTime(LocalDateTime.now()); - boolean saveWcsTask = wcsTaskService.save(wcsTask); - if(!saveWcsTask) { - return WcsApiResponse.error("任务创建失败,请稍后再试", null); - } - // 锁定库位 - boolean lockLocation = locationService.updateLocationOccupy(targetLocation.getLocationId(), 1); - if(!lockLocation) { - return WcsApiResponse.error("库位锁定失败,请稍后再试", null); - } - InTaskResp inTaskResp = new InTaskResp(); - inTaskResp.setTaskId(taskId); - inTaskResp.setUser("WMS"); - inTaskResp.setVehicleNo(vehicleId); - inTaskResp.setDestination(targetLocation.getLocationId()); - inTaskResp.setSpare1(""); - inTaskResp.setSpare2(""); - return WcsApiResponse.success(inTaskResp); - } else { // 带料 - // 选一个库位 - TAppLocation targetLocation = stackerTaskService.getEmptyLocation(2, WmsLocationTypeEnums.TYPE_PRODUCT); - if(targetLocation == null) { - return WcsApiResponse.error("没有空闲库位,请稍后再试", null); - } - String vehicleNo = request.getVehicleNo(); // 校验是否存在入库单 List withOrderId = orderInService.getWithVehicleNoAndStatus(vehicleNo, OrderStatusEnum.CREATE); if(withOrderId == null) { return WcsApiResponse.error("数据服务异常,请稍后重试", null); } if(withOrderId.isEmpty()) { - return WcsApiResponse.error("入库单不存在,请稍后再试", null); + log.error("载具号无效或过期{}", vehicleNo); + continue; } // TODO 和 入库单校验,WCS 传过来的子条吗数据在条吗里面,用分号隔开 // TODO 和 mes 校验 @@ -217,6 +279,7 @@ public class WcsControllerServiceImpl implements IWcsControllerService { wcsTask.setDestination(targetLocation.getLocationId()); wcsTask.setCreateTime(LocalDateTime.now()); wcsTask.setSendTime(LocalDateTime.now()); + wcsTask.setRemark(withOrderId.getFirst().getClientId()); boolean saveWcsTask = wcsTaskService.save(wcsTask); if(!saveWcsTask) { return WcsApiResponse.error("任务创建失败,请稍后再试", null); @@ -236,59 +299,6 @@ public class WcsControllerServiceImpl implements IWcsControllerService { return WcsApiResponse.success(inTaskResp); } } - // 三号堆垛机 - if(point.equals("101") || point.equals("102")) { - // 选一个库位 - TAppLocation targetLocation = stackerTaskService.getEmptyLocation(3, WmsLocationTypeEnums.TYPE_PRODUCT); - if(targetLocation == null) { - return WcsApiResponse.error("没有空闲库位,请稍后再试", null); - } - String vehicleNo = request.getVehicleNo(); - // 校验是否存在入库单 - List withOrderId = orderInService.getWithVehicleNoAndStatus(vehicleNo, OrderStatusEnum.CREATE); - if(withOrderId == null) { - return WcsApiResponse.error("数据服务异常,请稍后重试", null); - } - if(withOrderId.isEmpty()) { - return WcsApiResponse.error("入库单不存在,请稍后再试", null); - } - // TODO 和 入库单校验,WCS 传过来的子条吗数据在条吗里面,用分号隔开 - // TODO 和 mes 校验 - // 更新入库单状态为运行中 - boolean updateStatusWithVehicleNo = orderInService.updateStatusAndDestinationWithVehicleNo(vehicleNo, OrderStatusEnum.RUNNING, targetLocation.getLocationId()); - if(!updateStatusWithVehicleNo) { - return WcsApiResponse.error("入库单状态更新失败,请稍后再试", null); - } - // 插入一条WcsTask - String taskId = UUIDUtils.getNewUUID(); - TAppWcsTask wcsTask = new TAppWcsTask(); - wcsTask.setWcsTaskId(taskId); - wcsTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.RUN.getCode()); - wcsTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); - wcsTask.setTaskPriority(0); - wcsTask.setVehicleId(vehicleNo); - wcsTask.setOrigin(point); - wcsTask.setDestination(targetLocation.getLocationId()); - wcsTask.setCreateTime(LocalDateTime.now()); - wcsTask.setSendTime(LocalDateTime.now()); - boolean saveWcsTask = wcsTaskService.save(wcsTask); - if(!saveWcsTask) { - return WcsApiResponse.error("任务创建失败,请稍后再试", null); - } - // 锁定库位 - boolean lockLocation = locationService.updateLocationOccupy(targetLocation.getLocationId(), 1); - if(!lockLocation) { - return WcsApiResponse.error("库位锁定失败,请稍后再试", null); - } - InTaskResp inTaskResp = new InTaskResp(); - inTaskResp.setTaskId(taskId); - inTaskResp.setUser("WMS"); - inTaskResp.setVehicleNo(vehicleNo); - inTaskResp.setDestination(targetLocation.getLocationId()); - inTaskResp.setSpare1(""); - inTaskResp.setSpare2(""); - return WcsApiResponse.success(inTaskResp); - } return WcsApiResponse.error("不支持的入库位置", null); } } diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/YcwmsControllerServiceImpl.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/YcwmsControllerServiceImpl.java index 6e51260..1db72b0 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/YcwmsControllerServiceImpl.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/controller/serviceImpl/YcwmsControllerServiceImpl.java @@ -137,7 +137,7 @@ public class YcwmsControllerServiceImpl implements IYcwmsControllerService { log.info("亚驰出库单请求参数{}", JSON.toJSON(request)); if(request == null) return YcwmsResponse.error("参数错误", null); if(StringUtils.isEmpty(request.getOrderId()) || request.getQuantity() == null - || (StringUtils.isEmpty(request.getGoodsId()) && request.getBatch() == null && request.getSpecification() == null)) { + || (StringUtils.isEmpty(request.getGoodsId()) || request.getBatch() == null || request.getSpecification() == null || request.getClientId() == null)) { return YcwmsResponse.error("参数错误", null); } List orderOutCheckList = appOrderOutService.getWithOrderId(request.getOrderId()); @@ -157,6 +157,7 @@ public class YcwmsControllerServiceImpl implements IYcwmsControllerService { orderOut.setOrderStatus(OrderStatusEnum.CREATE.getCode()); orderOut.setCreateTime(LocalDateTime.now()); orderOut.setUpdateTime(LocalDateTime.now()); + orderOut.setRemark(request.getClientId()); if(!appOrderOutService.save(orderOut)) { return YcwmsResponse.error("出库单保存失败,请稍后再试", null); } @@ -224,7 +225,22 @@ public class YcwmsControllerServiceImpl implements IYcwmsControllerService { return YcwmsResponse.error("参数错误", null); } if (equipmentId.equals("1")) { - return YcwmsResponse.error("该库无成品物料", null); + Integer queryId = Integer.parseInt(equipmentId); + Long locationNum500 = appLocationService.count( + new LambdaQueryWrapper() + .eq(TAppLocation::getEquipmentId, queryId) + .eq(TAppLocation::getLocationType, WmsLocationTypeEnums.TYPE_500.getCode()) + .eq(TAppLocation::getIsOccupy, WmsLocationOccupyStatusEnums.OCCUPY.getCode()) + ); + Long locationNum600 = appLocationService.count( + new LambdaQueryWrapper() + .eq(TAppLocation::getEquipmentId, queryId) + .eq(TAppLocation::getLocationType, WmsLocationTypeEnums.TYPE_600.getCode()) + .eq(TAppLocation::getIsOccupy, WmsLocationOccupyStatusEnums.OCCUPY.getCode()) + ); + Long locationNum = locationNum500 + locationNum600; + Double percent = Double.parseDouble(locationNum.toString()) / WmsLocationNumEnums.LOCATION_NUM_1.getCode(); + return YcwmsResponse.success(percent); } else if (equipmentId.equals("2")) { Integer queryId = Integer.parseInt(equipmentId); Long locationNum = appLocationService.count( diff --git a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/quartz_job/job_executor/YcOutExecutor.java b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/quartz_job/job_executor/YcOutExecutor.java index 23bb596..6a9655a 100644 --- a/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/quartz_job/job_executor/YcOutExecutor.java +++ b/wms_serve_nantong_yachi/src/main/java/com/wms_main/service/quartz_job/job_executor/YcOutExecutor.java @@ -2,10 +2,12 @@ package com.wms_main.service.quartz_job.job_executor; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.constant.enums.wcs.WcsConveyTaskTypeEnums; import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; import com.wms_main.constant.enums.wcs.WcsStackerTaskTypeEnums; import com.wms_main.constant.enums.wms.OrderStatusEnum; import com.wms_main.constant.enums.wms.WmsStockStatusEnums; +import com.wms_main.constant.enums.wms.WmsTaskTypeEnums; import com.wms_main.dao.ITAppOrderOutService; import com.wms_main.dao.ITAppStockService; import com.wms_main.dao.ITAppTaskService; @@ -89,7 +91,15 @@ public class YcOutExecutor implements Job { log.warn("缺少库存, goodsId is {}, batch is {}, specification is {}", orderOut.getGoodsId(), orderOut.getBatch(), orderOut.getSpecification()); return; } + List compWcsTasks = wcsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getWcsTaskType, WmsTaskTypeEnums.OUT.getCode()) + ); + List compVehicleIds = compWcsTasks.stream().map(TAppWcsTask::getVehicleId).distinct().toList(); for (String vehicleId : vehicleIds) { + if (compVehicleIds.contains(vehicleId)) { + continue; + } List stockListToOut = stockService.list(new LambdaQueryWrapper().eq(TAppStock::getVehicleId, vehicleId)); for (TAppStock stockItem : stockListToOut) { if (needQuantity <= 0) break; @@ -120,6 +130,7 @@ public class YcOutExecutor implements Job { wcsTask.setCreateTime(LocalDateTime.now()); wcsTask.setOrigin(stocks.getFirst().getLocationId()); wcsTask.setDestination(stocks.getFirst().getBarCode()); + wcsTask.setRemark(orderOut.getRemark()); wcsTasks.add(wcsTask); } @@ -149,6 +160,7 @@ public class YcOutExecutor implements Job { wcsTask.setCreateTime(LocalDateTime.now()); wcsTask.setOrigin(stocks.getFirst().getLocationId()); wcsTask.setDestination(stocks.getFirst().getBarCode()); + wcsTask.setRemark(orderOut.getRemark()); orderOut.setOrderStatus(OrderStatusEnum.RUNNING.getCode()); orderOutService.updateById(orderOut); diff --git a/wms_web_nantong_yachi/src/layout/orderIn.vue b/wms_web_nantong_yachi/src/layout/orderIn.vue index eedd8a1..45bc612 100644 --- a/wms_web_nantong_yachi/src/layout/orderIn.vue +++ b/wms_web_nantong_yachi/src/layout/orderIn.vue @@ -315,7 +315,7 @@ const orderInForm = reactive({ vehicleNo: '', vehicleSize: '', inStand: '', - clientId: 'YaChi', + clientId: 'WMS', goodsDetail: [] }) diff --git a/wms_web_nantong_yachi/src/layout/orderOut.vue b/wms_web_nantong_yachi/src/layout/orderOut.vue index 106aec6..33071a9 100644 --- a/wms_web_nantong_yachi/src/layout/orderOut.vue +++ b/wms_web_nantong_yachi/src/layout/orderOut.vue @@ -76,7 +76,8 @@ const orderOutForm = reactive({ goodsId: '', batch: '', specification: '', - quantity: null + quantity: null, + clientId: "WMS" }) // 表单规则