From 30bb734c3c5de070ab9513128980bfdbe1880857 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期三, 03 十二月 2025 12:54:15 +0800
Subject: [PATCH] 入库流程功能开发

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   38 +++++++++++++++++++++++++++-----------
 1 files changed, 27 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 669e524..c1caa89 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -69,12 +69,6 @@
     @Autowired
     private WrkDetlLogService wrkDetlLogService;
     @Autowired
-    private SnowflakeIdWorker snowflakeIdWorker;
-    @Autowired
-    private OrderService orderService;
-    @Autowired
-    private OrderDetlService orderDetlService;
-    @Autowired
     private WcsController wcsController;
     @Autowired
     private RowLastnoService rowLastnoService;
@@ -91,9 +85,6 @@
 
     @Resource
     private LocMastMapper locMastMapper;
-
-    @Resource
-    private OrderPakoutService orderPakOutService;
 
     @Autowired
     private CheckOrderService checkOrderService;
@@ -552,6 +543,7 @@
 
             WrkDetl wrkDetl = new WrkDetl();
             wrkDetl.sync(checkOrderDetls.get(0));
+            wrkDetl.setOrderId(checkOrderDetls.get(0).getId());
             wrkDetl.setZpallet(wrkMast.getBarcode());
             wrkDetl.setIoTime(now);
             wrkDetl.setWrkNo(workNo);
@@ -1165,7 +1157,7 @@
 
 
     @Override
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     public void cancelWrkMast(String workNo, Long userId) {
         Date now = new Date();
         WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no",workNo));
@@ -1272,6 +1264,30 @@
 
         }
 
+        if (wrkMast.getIoType() == 107) {
+            List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+            if (!Cools.isEmpty(wrkDetls.get(0).getOrderNo())){
+
+                for (WrkDetl wrkDetl : wrkDetls) {
+                    CheckOrderDetl checkOrderDetl = checkOrderDetlService.selectOne(new EntityWrapper<CheckOrderDetl>()
+                            .eq("loc_no", wrkMast.getSourceLocNo())
+                            .eq("matnr", wrkDetl.getMatnr())
+                            .eq("batch", wrkDetl.getBatch())
+                            .eq("order_no", wrkDetl.getOrderNo())
+                    );
+                    checkOrderDetl.setStatus(1);
+                    checkOrderDetlService.updateById(checkOrderDetl);
+                }
+                CheckOrder checkOrder = checkOrderService.selectOne(new EntityWrapper<CheckOrder>().eq("order_no", wrkDetls.get(0).getOrderNo()));
+                List<CheckOrderDetl> checkOrderDetls = checkOrderDetlService.selectList(new EntityWrapper<CheckOrderDetl>().eq("order_id", checkOrder.getId()));
+                boolean is = checkOrderDetls.stream().allMatch(item -> item.getStatus().equals(1));
+                checkOrder.setSettle(is?1L:12L);
+                checkOrderService.updateById(checkOrder);
+            }
+
+
+        }
+
 //        // 璁㈠崟鍏宠仈
 //        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
 //        for (WrkDetl wrkDetl : wrkDetls) {
@@ -1324,7 +1340,7 @@
     @Override
     @Transactional
     public void pickWrkMast(String workNo, Long userId) {
-        WrkMast wrkMast = wrkMastService.selectById(workNo);
+        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", workNo));
         if (Cools.isEmpty(wrkMast)) {
             throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
         }

--
Gitblit v1.9.1