From 8e9971722f3f3ed6afd8b17bf73d260a17819914 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 15 七月 2025 17:51:58 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   41 ++++++++++++++++++++++++++++++-----------
 1 files changed, 30 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 2ad9850..eaa13af 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -183,11 +183,22 @@
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
+            LocDetl one = new LocDetl();
 //            if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) {
-                LocDetl one = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no",paramLocDetl.getLocNo())
+                one = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no",paramLocDetl.getLocNo())
                         .eq("brand",paramLocDetl.getBrand()).eq("model",paramLocDetl.getModel()));
 //                        selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch());
-                if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount(), param.getOrderNo()));
+            if(paramLocDetl.getMatnr().equals("绌虹")){
+                one= locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no",paramLocDetl.getLocNo()));
+            }
+                if (null != one && !paramLocDetl.getMatnr().equals("绌虹")) {
+                    if(!"鍚堟牸".equals(one.getThreeCode())) {
+                        throw new CoolException(one.getModel() + "鍗蜂笉鍚堟牸:" + one.getThreeCode() );
+                    }
+                    locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount(), param.getOrderNo()));
+                }else{
+                    locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount(), param.getOrderNo()));
+                }
 //            }
         }
         if (!locDetlDtos.isEmpty()) {
@@ -380,7 +391,16 @@
             for (LocDetlDto detlDto : dto.getLocDetlDtos()) {
                 if (detlDto.getCount()==null || detlDto.getCount() <= 0.0D) {continue;}
                 WrkDetl wrkDetl = new WrkDetl();
+                List<OrderDetl> orderDetl = orderDetlService.selectByBrand(detlDto.getLocDetl().getBrand());
                 wrkDetl.sync(detlDto.getLocDetl());
+                for (OrderDetl orderDetlDto : orderDetl) {
+                    if(orderDetlDto.getSupp() != null){
+                        wrkDetl.setSupp(orderDetlDto.getSupp());
+                    }
+                    if(orderDetlDto.getMemo() != null){
+                        wrkDetl.setMemo(orderDetlDto.getMemo());
+                    }
+                }
                 wrkDetl.setOrderNo(detlDto.getOrderNo()); // 鎵嬪姩鍑哄簱涓嶉渶瑕佸甫鍑哄簱瀛樹腑鐨勫崟鎹紪鍙�
                 wrkDetl.setWrkNo(workNo);
                 wrkDetl.setIoTime(now);
@@ -931,17 +951,17 @@
         if (Cools.isEmpty(wrkMast)){
             throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
         }
-        if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) {
+        if (wrkMast.getWrkSts() == 5 || wrkMast.getWrkSts() == 14 || wrkMast.getWrkSts() == 15) {
             throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚");
         }
         // 鍏ュ簱 + 搴撲綅杞Щ
-        if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) {
+        if (wrkMast.getIoType() < 60) {
             wrkMast.setWrkSts(4L);
         // 鍑哄簱
-        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()!=202) {
+        } else if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 103 && wrkMast.getIoType() != 107 && wrkMast.getIoType() != 109) {
             wrkMast.setWrkSts(14L);
-        }else if (wrkMast.getIoType()==202){
-            wrkMast.setWrkSts(57L);
+        }else{
+            throw new CoolException("褰撳墠宸ヤ綔绫诲瀷鎴栫姸鎬佹棤娉曞畬鎴�");
         }
         Date now = new Date();
         wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
@@ -1088,7 +1108,7 @@
         String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
         String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
         // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
-        if (wrkMast.getWrkSts() < 4) {
+        if (wrkMast.getWrkSts() == 1) {
             locNo = wrkMast.getLocNo();
             locSts = "O";
 
@@ -1105,7 +1125,7 @@
                 locMastService.updateById(locMast);
             }
         // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
-        } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14 && wrkMast.getIoType()!=202) {
+        } else if (wrkMast.getWrkSts() == 11) {
             locNo = wrkMast.getSourceLocNo();
             // 鍑哄簱 ===>> F.鍦ㄥ簱
             if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
@@ -1126,8 +1146,7 @@
                 locMast.setModiUser(userId);
                 locMastService.updateById(locMast);
             }
-        } else if (wrkMast.getIoType()==202 || wrkMast.getIoType()==212){
-        } else {
+        }else {
             throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
         }
 

--
Gitblit v1.9.1