From f754e34c3822811bace989fae6a69dbcc3944d13 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期五, 27 十二月 2024 14:41:53 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java |   40 ++++++++++++++++++++++++++++++++++++++++
 src/main/java/com/zy/common/web/WcsController.java          |   16 +++++++++++++++-
 2 files changed, 55 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index be59bb9..2527b59 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -213,6 +213,45 @@
                     }
                     break;
                 // 骞舵澘鍏ュ簱
+                case 55:
+                    // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
+                    List<WrkDetl> wrkDetls55 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
+                    if (wrkDetls55.isEmpty()) {
+//                        exceptionHandle("骞舵澘鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
+                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                        return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 宸ヤ綔鏄庣粏妗d负绌�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                    }
+                    // 淇敼搴撳瓨鏄庣粏鏁伴噺锛屽鏃犲簱瀛橈紝鏇炬柊澧�
+                    for (WrkDetl wrkDetl:wrkDetls55) {
+
+                        LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
+                        locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", locDetl.getLocNo()));
+                        locDetl = new LocDetl();
+                        locDetl.sync(wrkDetl);
+                        locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙�
+                        locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺
+                        locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜
+                        locDetl.setModiTime(now);
+                        locDetl.setAppeTime(now);
+                        if (!locDetlService.insert(locDetl)) {
+//                                exceptionHandle("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
+                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                            return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                        }
+                    }
+                    // 淇敼搴撲綅鐘舵�� Q ====>> F
+                    if (locMast.getLocSts().equals("Q")) {
+                        locMast.setLocSts("F");
+                        locMast.setBarcode(wrkMast.getBarcode());
+                        locMast.setIoTime(now);
+                        locMast.setModiTime(now);
+                        if (!locMastService.updateById(locMast)) {
+//                            exceptionHandle("骞舵澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
+                            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                            return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                        }
+                    }
+                    break;
                 case 54:
                     // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
                     List<WrkDetl> wrkDetls54 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
@@ -259,6 +298,7 @@
                         }
                     }
                     break;
+
                 // 鐩樼偣鍏ュ簱
                 case 57:
                     // 鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗�
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index a2a8fa1..3dd45bf 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -8,6 +8,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.EmptyPlateOutParam;
 import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.MatServiceImpl;
 import com.zy.asrs.utils.Utils;
 import com.zy.common.CodeRes;
 import com.zy.common.model.LocDto;
@@ -60,6 +61,8 @@
     private WrkMastLogService wrkMastLogService;
     @Autowired
     private WrkDetlLogService wrkDetlLogService;
+    @Autowired
+    private MatServiceImpl matService;
 
     @PostMapping("/pakin/loc/v1")
     @ResponseBody
@@ -470,8 +473,19 @@
             if (!wrkMastService.updateById(wrkMast)) {
                 throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
             }
+            List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+            for (WrkDetl wrkDetl : wrkDetls) {
+                Mat mat = matService.selectByMatnr("CP25009TY10000248");
+                WrkDetl wrkDetl1 = new WrkDetl();
+                wrkDetl1.sync(wrkDetl);
+                wrkDetl1.sync(mat);
+                wrkDetl1.setIoTime(now);
+                wrkDetlService.insert(wrkDetl1);
+            }
+            wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("matnr", "BC20009TY13701530").eq("wrk_no",wrkMast.getWrkNo()));
             // 鏇存柊鏄庣粏妗o_time (鍘嗗彶妗e叧鑱斾娇鐢級
-            wrkDetlService.updateIoTime(wrkMast.getWrkNo(), now);
+//            wrkDetlService.updateIoTime(wrkMast.getWrkNo(), now);
+
             // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
             LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
             locMast.setLocSts("Q");

--
Gitblit v1.9.1