From 78df6cc0014e1b9ef290a8ae86c39b63c8fc36e1 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期三, 21 一月 2026 18:31:56 +0800
Subject: [PATCH] no message

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 52 insertions(+), 4 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 93b57ce..b86ddbd 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -12,6 +12,9 @@
 import com.zy.asrs.entity.param.FullStoreParam;
 import com.zy.asrs.entity.param.LocDetlAdjustParam;
 import com.zy.asrs.entity.param.StockOutParam;
+import com.zy.asrs.enums.LocAreaType;
+import com.zy.asrs.enums.LocStsType;
+import com.zy.asrs.enums.TaskIOType;
 import com.zy.asrs.mapper.LocMastMapper;
 import com.zy.asrs.entity.result.FindLocNoAttributeVo;
 import com.zy.asrs.service.*;
@@ -99,6 +102,12 @@
     private TaskService taskService;
     @Autowired
     private TaskDetlService taskDetlService;
+    @Autowired
+    private BasStationService basStationService;
+    @Autowired
+    private BasStationDetlService basStationDetlService;
+    @Autowired
+    private BasAreasService basAreasService;
 
     @Override
     @Transactional
@@ -459,7 +468,7 @@
             }
 //            OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch());
             OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.FALSE, locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getBrand()
-                    , locDto.getStandby1(), locDto.getStandby2(), locDto.getStandby3(), locDto.getBoxType1(), locDto.getBoxType2(), locDto.getBoxType3());
+                    , locDto.getStandby1(), locDto.getStandby2(), locDto.getStandby3(), "1", locDto.getBoxType2(), locDto.getBoxType3());
 //            if (orderDetl == null) {
 ////                orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null);
 //                orderDetl = OrderInAndOutUtil.selectItem(Boolean.FALSE, locDto.getOrderNo(), locDto.getMatnr(), null);
@@ -487,7 +496,7 @@
 //            orderService.updateSettle(orderDetl.getOrderId(), 2L, userId);
             OrderInAndOutUtil.increaseWorkQty(Boolean.FALSE, orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(),
                     orderDetl.getBrand(), orderDetl.getStandby1(), orderDetl.getStandby2(), orderDetl.getStandby3(),
-                    orderDetl.getBoxType1(), orderDetl.getBoxType2(), orderDetl.getBoxType3()
+                    "1", orderDetl.getBoxType2(), orderDetl.getBoxType3()
                     , locDto.getAnfme());
             OrderInAndOutUtil.updateOrder(Boolean.FALSE, orderDetl.getOrderId(), 2L, userId);
         }
@@ -672,7 +681,7 @@
 //            orderService.updateSettle(orderDetl.getOrderId(), 2L, userId);
             OrderInAndOutUtil.increaseWorkQty(Boolean.FALSE, orderDetl.getOrderId(), orderDetl.getMatnr(), orderDetl.getBatch(),
                     orderDetl.getBrand(), orderDetl.getStandby1(), orderDetl.getStandby2(), orderDetl.getStandby3(),
-                    orderDetl.getBoxType1(), orderDetl.getBoxType2(), orderDetl.getBoxType3()
+                    "1", orderDetl.getBoxType2(), orderDetl.getBoxType3()
                     , locDto.getAnfme());
             OrderInAndOutUtil.updateOrder(Boolean.FALSE, orderDetl.getOrderId(), 2L, userId);
         }
@@ -1457,6 +1466,10 @@
         if (Cools.isEmpty(wrkMast)) {
             throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
         }
+        BasAreas basAreas = basAreasService.selectOne(new EntityWrapper<BasAreas>().eq("whs_type_id", LocAreaType.LOC_AREA_TYPE_CRN.type));
+        if (Objects.isNull(basAreas)) {
+            throw new CoolException("鏁版嵁閿欒锛屽簱鍖轰笉瀛樺湪锛侊紒");
+        }
         // 鍏ュ嚭搴撶被鍨嬪垽鏂�
         if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) {
             throw new CoolException("褰撳墠鍏ュ嚭搴撶被鍨嬫棤娉曡繘琛屾搷浣�");
@@ -1465,6 +1478,7 @@
         if (wrkMast.getWrkSts() < 11 || wrkMast.getWrkSts() == 15) {
             throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曡繘琛屾搷浣�");
         }
+
         // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
 //        if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
 //            throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
@@ -1498,14 +1512,48 @@
             throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
         }
         // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
-        LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()));
+        if (Cools.isEmpty(locMast)) {
+            throw new CoolException("搴撲綅涓嶅瓨鍦�:" + wrkMast.getLocNo());
+        }
         locMast.setLocSts("Q");
+        locMast.setAreaId(basAreas.getId());
+        locMast.setAreaName(basAreas.getName());
         locMast.setBarcode(locMast.getBarcode());
         locMast.setModiTime(now);
         locMast.setModiUser(userId);
         if (!locMastService.updateById(locMast)) {
             throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
         }
+
+        // .淇敼骞舵墭鍏ュ簱鏄庣粏鎵樼爜
+        List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
+                        .eq("area_id", locMast.getAreaId())
+                .eq("loc_no", locMast.getLocNo()));
+        if (!Objects.isNull(locDetls) && !locDetls.isEmpty()) {
+            locDetls.forEach(locDetl -> {
+                locDetl.setZpallet(locMast.getBarcode());
+                locDetl.setBarcode(locMast.getBarcode());
+                if (!locDetlService.updateById(locDetl)) {
+                    throw new CoolException("搴撳瓨鏄庣粏淇敼澶辫触锛侊紒");
+                }
+            });
+        }
+
+        // .淇敼浠诲姟妗f槑缁嗘墭鐩樼爜
+        List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+        if (!Objects.isNull(wrkDetls) && !wrkDetls.isEmpty()) {
+            for (WrkDetl wrkDetl : wrkDetls) {
+                wrkDetl.setZpallet(wrkMast.getBarcode());
+                wrkDetl.setBarcode(wrkMast.getBarcode());
+                if (!wrkDetlService.update(wrkDetl, new EntityWrapper<WrkDetl>()
+                                .eq("matnr", wrkDetl.getMatnr())
+                                .eq("standby1", wrkDetl.getStandby1())
+                        .eq("wrk_no", wrkMast.getWrkNo()))) {
+                    throw new CoolException("浠诲姟妗f槑缁嗕慨鏀瑰け璐ワ紒锛�");
+                }
+            }
+        }
     }
 
     @Override

--
Gitblit v1.9.1