From 41074b338be9cff71a43d910deab3ba6a7bfb69f Mon Sep 17 00:00:00 2001
From: lsh <1>
Date: 星期五, 12 一月 2024 21:10:33 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/handler/WrkMastStaInItHandler.java              |    8 
 src/main/java/com/zy/asrs/controller/OpenController.java                       |    8 +
 src/main/java/com/zy/asrs/entity/BasDevp.java                                  |    4 
 src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java                    |   25 ++--
 src/main/java/com/zy/asrs/entity/param/SingleMountUnstackingCompleteParam.java |    2 
 src/main/java/com/zy/asrs/service/BasDevpService.java                          |    6 +
 src/main/java/com/zy/asrs/task/ReportToOKScheduler.java                        |   18 +--
 src/main/java/com/zy/common/web/WcsController.java                             |  105 +++++++++++++++++++++
 src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java                 |   26 +++++
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java                    |    4 
 src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java   |   28 +++++
 src/main/java/com/zy/common/service/CommonService.java                         |   11 +-
 12 files changed, 208 insertions(+), 37 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 463417b..a343c06 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -222,10 +222,12 @@
      * 涓帶锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�
      */
     @PostMapping("/palletizing/complete/auth/v1")
-    @AppAuth(memo = "涓帶(妗佹灦)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭�")
+    @AppAuth(memo = "鐮佸灈瀹屾垚涓嬪彂鍏ュ簱淇℃伅")
     public synchronized R palletizingComplete(@RequestHeader(required = false) String appkey,
                                            @RequestBody PalletizingCompleteParam param,
                                            HttpServletRequest request) {
+//        appkey = "ea1f0459efc02a79f046f982767939ae";
+
         auth(appkey, param, request);
         openService.palletizingComplete(param);
         return R.ok(param);
@@ -253,6 +255,8 @@
     public synchronized R singleUnstackingComplete(@RequestHeader(required = false) String appkey,
                                             @RequestBody SingleUnstackingCompleteParam param,
                                             HttpServletRequest request) {
+//        appkey = "ea1f0459efc02a79f046f982767939ae";
+
         auth(appkey, param, request);
         openService.singleUnstackingComplete(param);
         return R.ok(param);
@@ -266,6 +270,8 @@
     public synchronized R singleMountUnstackingComplete(@RequestHeader(required = false) String appkey,
                                             @RequestBody SingleMountUnstackingCompleteParam param,
                                             HttpServletRequest request) {
+//        appkey = "ea1f0459efc02a79f046f982767939ae";
+
         auth(appkey, param, request);
         openService.singleMountUnstackingComplete(param);
         return R.ok(param);
diff --git a/src/main/java/com/zy/asrs/entity/BasDevp.java b/src/main/java/com/zy/asrs/entity/BasDevp.java
index 78ca14c..a20b890 100644
--- a/src/main/java/com/zy/asrs/entity/BasDevp.java
+++ b/src/main/java/com/zy/asrs/entity/BasDevp.java
@@ -214,6 +214,10 @@
     @TableField("cart_pos")
     private Integer cartPos;
 
+    @ApiModelProperty(value = "")
+    @TableField("report_sign")
+    private Integer reportSign;
+
 
     public String getIoTime$(){
         if (Cools.isEmpty(this.ioTime)){
diff --git a/src/main/java/com/zy/asrs/entity/param/SingleMountUnstackingCompleteParam.java b/src/main/java/com/zy/asrs/entity/param/SingleMountUnstackingCompleteParam.java
index 36cc902..ff15776 100644
--- a/src/main/java/com/zy/asrs/entity/param/SingleMountUnstackingCompleteParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/SingleMountUnstackingCompleteParam.java
@@ -14,7 +14,7 @@
 public class SingleMountUnstackingCompleteParam {
     private String barcode;//	鏄�	瀛楃涓�	鎵樼洏鐮�
     private String boxType;//	鏄�	瀛楃涓�	鐮佸灈鏈ㄧ绫诲瀷锛堝悓涓�鎵樼洏涓�绉嶇被鍨嬶級
-    private String palletizingNo;//	鏄�	瀛楃涓�	鐮佸灈鏈ㄧ绫诲瀷锛堝悓涓�鎵樼洏涓�绉嶇被鍨嬶級
+    private String palletizingNo;//	鏄�	瀛楃涓�	鐮佸灈鏈ㄧ绫诲瀷锛堝悓涓�鎵樼洏涓�绉嶇被鍨嬶級  搴熷純
     private String createTime;//		鏄�	瀛楃涓�	鍒涘缓鏃堕棿
     private String uuid;//		鏄�	瀛楃涓�	鏃堕棿鎴�
     private Integer staStart;//		鏄�	瀛楃涓�	璧峰绔欑偣锛堟墭鐩樻墍鍦ㄧ珯鐐癸級
diff --git a/src/main/java/com/zy/asrs/service/BasDevpService.java b/src/main/java/com/zy/asrs/service/BasDevpService.java
index 00b3589..3e8f21f 100644
--- a/src/main/java/com/zy/asrs/service/BasDevpService.java
+++ b/src/main/java/com/zy/asrs/service/BasDevpService.java
@@ -43,4 +43,10 @@
      */
     BasDevp checkSiteStatus(Integer devpNo, boolean pakin);
 
+    /**
+     * 鐩爣绔欑偣鐘舵�佹娴�
+     * @param pakin 鏄惁鍏ュ簱鎿嶄綔 true 鏄� 锛� false 涓嶆槸
+     */
+    BasDevp checkSiteStatusEmpty(Integer devpNo, boolean pakin);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
index babb339..fa2dd99 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
@@ -67,4 +67,30 @@
         }
         return station;
     }
+
+    @Override
+    public BasDevp checkSiteStatusEmpty(Integer devpNo, boolean pakin) {
+        BasDevp station = selectById(devpNo);
+        if (station == null){
+            throw new CoolException(devpNo+"绔欑偣涓嶅瓨鍦�");
+        }
+        if (pakin) {
+//            if(station.getAutoing()==null || !station.getAutoing().equals("Y")) {
+//                throw new CoolException(devpNo+"绔欑偣涓嶆槸鑷姩鐘舵��");
+//            }
+//            if(station.getLoading()==null || !station.getLoading().equals("Y")) {
+//                throw new CoolException(devpNo+"绔欑偣鏃犵墿");
+//            }
+//            if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) {
+//                throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�");
+//            }
+//            if(!station.getInEnable().equals("Y")) {
+//                throw new CoolException(devpNo+"绔欑偣涓嶆槸鍙叆鐘舵��");
+//            }
+            if(wrkMastService.getWorkingMast(devpNo)>0){
+                throw new CoolException(devpNo+"绔欑偣涓嶈兘鍚屾椂鐢熸垚涓ょ瑪鍏ュ簱宸ヤ綔妗�");
+            }
+        }
+        return station;
+    }
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 7b502ba..b6cbfdd 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -975,11 +975,11 @@
     @Transactional
     public void cs3() {
         //鎷嗙洏
-        WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),118);
+        WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),119);
         wrkMastSta1.setType(2);
         wrkMastSta1.setWrkType(2);
         wrkMastStaService.insert(wrkMastSta1);
-        WrkMastSta wrkMastSta2 = new WrkMastSta(new Date(),122);
+        WrkMastSta wrkMastSta2 = new WrkMastSta(new Date(),121);
         wrkMastSta2.setType(2);
         wrkMastSta2.setWrkType(2);
         wrkMastStaService.insert(wrkMastSta2);
diff --git a/src/main/java/com/zy/asrs/task/ReportToOKScheduler.java b/src/main/java/com/zy/asrs/task/ReportToOKScheduler.java
index 9e8eb7d..316f834 100644
--- a/src/main/java/com/zy/asrs/task/ReportToOKScheduler.java
+++ b/src/main/java/com/zy/asrs/task/ReportToOKScheduler.java
@@ -1,7 +1,6 @@
 package com.zy.asrs.task;
 
 import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.task.handler.ReportToDismantleTheStackHandler;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
@@ -13,18 +12,15 @@
 @Component
 public class ReportToOKScheduler {
 
-    @Autowired
-    private ReportToDismantleTheStackHandler reportToDismantleTheStackHandler;
-
 //    @Scheduled(cron = "0/3 * * * * ? ")
     private void execute(){//鎷嗗灈瀹屾垚淇℃伅澶勭悊
-        int[] staNos =new int[]{118,119,120,121};
-        for (int staNo : staNos){
-            ReturnT<String> result = reportToDismantleTheStackHandler.start(staNo);
-            if (result.getCode()==200){
-                break;
-            }
-        }
+//        int[] staNos =new int[]{118,119,120,121};
+//        for (int staNo : staNos){
+//            ReturnT<String> result = reportToDismantleTheStackHandler.start(staNo);
+//            if (result.getCode()==200){
+//                break;
+//            }
+//        }
     }
 
 }
diff --git a/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
index ef75d37..3c4f475 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastStaInItScheduler.java
@@ -49,6 +49,9 @@
                 if(Cools.isEmpty(wrkMast)){
                     continue;
                 }
+                if (wrkMast.getIoType()<100 || wrkMast.getIoType()==110){
+                    continue;
+                }
                 if (wrkMast.getWrkSts()!=14 && wrkMast.getWrkSts()!=15){
                     continue;
                 }
@@ -83,27 +86,27 @@
             BasDevp basDevp = basDevpService.selectById(staNo);
             if (basDevp.getWrkNo()!=0){
                 WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
-                if (wrkMast.getWrkSts()!=2){
+                if (wrkMast.getWrkSts()!=2 || wrkMast.getIoType()==10){
                     continue;
                 }
-                boolean wrkTypeSign = fullKM(wrkMast);
+//                boolean wrkTypeSign = fullKM(wrkMast);
 
                 if (!Cools.isEmpty(wrkMast)){
-                    if (wrkTypeSign){
+//                    if (wrkTypeSign){
                         ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,13);
                         if (result.getCode()==200) {
                             continue;
                         } else {
                             System.out.println(staNo+"澶辫触锛�");
                         }
-                    }else {
-                        ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,23);
-                        if (result.getCode()==200) {
-                            continue;
-                        } else {
-                            System.out.println(staNo+"澶辫触锛�");
-                        }
-                    }
+//                    }else {
+//                        ReturnT<String> result = wrkMastStaInItHandler.start(wrkMast,basDevp,23);
+//                        if (result.getCode()==200) {
+//                            continue;
+//                        } else {
+//                            System.out.println(staNo+"澶辫触锛�");
+//                        }
+//                    }
                 }
             }
         }
diff --git a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
index e9209ba..0da9fed 100644
--- a/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/ReportToDismantleTheStackHandler.java
@@ -50,7 +50,14 @@
     public ReturnT<String> start(int staNo) {
         try {
             BasDevp basDevp = basDevpService.selectById(staNo);
-            if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()!=0){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992锛堜綘鍙互鑷畾涔夛級
+            Integer staOther = getStaOther(staNo);
+            if (staOther==0) return SUCCESS;
+            BasDevp basDevpOther = basDevpService.selectById(staOther);
+            if (Cools.isEmpty(basDevpOther) || basDevpOther.getReportSign()==1){
+                return SUCCESS;
+            }
+            if (!Cools.isEmpty(basDevp) && basDevp.getAutoing().equals("Y") && basDevp.getWrkNo()!=0){ //涓婁紶鍓嶅伐浣滃彿璺熺數鎺х害瀹氫负9992涓帶(妗佹灦)锛氱爜鍨涘畬鎴愪笅鍙戝叆搴撲俊鎭紙浣犲彲浠ヨ嚜瀹氫箟锛�
+
                 WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
                 if (Cools.isEmpty(wrkMast) || !wrkMast.getSheetNo().equals("0")){
                     return SUCCESS;
@@ -61,7 +68,7 @@
                 }
                 SingleMountUnstackingCompleteParam singleMountUnstackingCompleteParam = new SingleMountUnstackingCompleteParam(wrkMast,wrkDetls);
                 singleMountUnstackingCompleteParam.setStaStart(staNo);
-                singleMountUnstackingCompleteParam.setStaEnd(staNo>119? 135:133);
+                singleMountUnstackingCompleteParam.setStaEnd(staNo>119? 135:131);
                 ReturnT<String> result = null;
                 result = postMesData(barcodeUploadpath,singleMountUnstackingCompleteParam);
                 System.out.println(result);
@@ -84,6 +91,8 @@
                     }
                     wrkMast.setSheetNo("1");
                     wrkMastService.updateById(wrkMast);
+                    basDevp.setReportSign(1);
+                    basDevpService.updateById(basDevp);
                     return SUCCESS;
                 }else {
                     log.error("鏉$爜涓婁紶涓帶澶辫触");
@@ -135,4 +144,19 @@
         }
         return SUCCESS;
     }
+
+    public Integer getStaOther(Integer staNo){
+        switch (staNo){
+            case 118:
+                return 119;
+            case 119:
+                return 118;
+            case 120:
+                return 121;
+            case 121:
+                return 120;
+            default:
+                return 0;
+        }
+    }
 }
diff --git a/src/main/java/com/zy/asrs/task/handler/WrkMastStaInItHandler.java b/src/main/java/com/zy/asrs/task/handler/WrkMastStaInItHandler.java
index 4b8a4be..f6d3f08 100644
--- a/src/main/java/com/zy/asrs/task/handler/WrkMastStaInItHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WrkMastStaInItHandler.java
@@ -41,7 +41,7 @@
                     if (Cools.isEmpty(wrkMastSta)){
                         WrkMastSta wrkMastSta1 = new WrkMastSta(wrkMast,new Date(),basDevp);
                         wrkMastSta1.setType(1);      //绫诲瀷 1:闈炵┖  2:绌烘澘
-                        wrkMastSta1.setWrkType(3);                      //宸ヤ綔绫诲瀷  1:鍙栵紙鍙犵洏锛�  2锛氭媶鐩�  3锛氬彇鏀� 5锛氭弧鍙�  6锛氭弧鏀�
+                        wrkMastSta1.setWrkType(3);                    //宸ヤ綔绫诲瀷  1:鍙栵紙鍙犵洏锛�  2锛氭媶鐩�  3锛氬彇鏀� 5锛氭弧鍙�  6锛氭弧鏀�
                         wrkMastStaService.insert(wrkMastSta1);
                     }
                     break;
@@ -49,15 +49,15 @@
                     if (Cools.isEmpty(wrkMastSta)){
                         WrkMastSta wrkMastSta1 = new WrkMastSta(wrkMast,new Date(),basDevp);
                         wrkMastSta1.setType(fullKM(wrkMast)? 1:2);
-                        wrkMastSta1.setWrkType(1);
+                        wrkMastSta1.setWrkType(1);//宸ヤ綔绫诲瀷  1:鍙栵紙鍙犵洏锛�  2锛氭媶鐩�  3锛氬彇鏀� 5锛氭弧鍙�  6锛氭弧鏀�
                         wrkMastStaService.insert(wrkMastSta1);
                     };
                     break;
-                case 22://2锛氭斁
+                case 22://2锛氭斁(鎷嗙洏)
                     if (Cools.isEmpty(wrkMastSta)){
                         WrkMastSta wrkMastSta1 = new WrkMastSta(wrkMast,new Date(),basDevp);
                         wrkMastSta1.setType(fullKM(wrkMast)? 1:2);
-                        wrkMastSta1.setWrkType(5);
+                        wrkMastSta1.setWrkType(5);//宸ヤ綔绫诲瀷  1:鍙栵紙鍙犵洏锛�  2锛氭媶鐩�  3锛氬彇鏀� 5锛氭弧鍙�  6锛氭弧鏀�
                         wrkMastStaService.insert(wrkMastSta1);
                     };
                     break;
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 51a8cbb..a6d7812 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -297,13 +297,14 @@
                 log.error("type_no={},stn_no={},crn_no={}", staDescId, sourceStaNo, crnNo);
 //                throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
                 crnNo = 0;
-            }
-            staNo = basDevpService.selectById(staDesc.getCrnStn());
-            if (!staNo.getAutoing().equals("Y")) {
+            }else {
+                staNo = basDevpService.selectById(staDesc.getCrnStn());
+                if (!staNo.getAutoing().equals("Y")) {
 //                throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�");
-                crnNo = 0;
+                    crnNo = 0;
+                }
+                startupDto.setStaNo(staNo.getDevNo());
             }
-            startupDto.setStaNo(staNo.getDevNo());
         }
 
         // 鏇存柊搴撲綅鎺掑彿
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index adfff62..16f7ce4 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -109,6 +109,59 @@
         return R.ok().add(dto);
     }
 
+    @PostMapping("/pakin/empty/loc/v1")
+    @ResponseBody
+    public synchronized R getLocNoEmpty(@RequestBody SearchLocParam param) {
+        log.info("鏀跺埌WCS鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param);
+        if (Cools.isEmpty(param.getIoType())) {
+            return R.error("鍏ュ嚭搴撶被鍨嬩笉鑳戒负绌�");
+        }
+        if (Cools.isEmpty(param.getSourceStaNo())) {
+            return R.error("婧愮珯缂栧彿涓嶈兘涓虹┖");
+        }
+        List<WaitPakin> waitPakins = null;
+        if (param.getIoType() == 1) {
+            if (Cools.isEmpty(param.getBarcode())) {
+                return R.error("鏉$爜涓嶈兘涓虹┖");
+            }
+            waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode()));
+            if (Cools.isEmpty(waitPakins)) {
+                WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode());
+                if (wrkMast != null && wrkMast.getIoType() == 103) {
+                    return R.parse(CodeRes.PICK_600);
+                }
+                return R.parse(CodeRes.NO_COMB_700);
+            }
+            int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
+            int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
+            if (countLoc > 0 || countWrk > 0) {
+                return R.error(CodeRes.EXIST_500);
+            }
+        }
+        if (Cools.isEmpty(param.getLocType1())){
+            return R.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
+        }
+
+        // 婧愮珯鐐圭姸鎬佹娴�
+        BasDevp sourceStaNo = basDevpService.checkSiteStatusEmpty(param.getSourceStaNo(), true);
+        sourceStaNo.setLocType1(param.getLocType1());
+        LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
+
+        StartupDto dto = null;
+        switch (param.getIoType()) {
+            case 10://绌烘墭鐩樺叆搴�
+                dto = emptyPlateInEmpty(param.getSourceStaNo(), locTypeDto, param.getBarcode());
+                break;
+//            case 201://鑷姩琛ョ┖鏉夸换鍔�
+//                dto = emptyPlateIn201(param.getSourceStaNo(), locTypeDto, param.getBarcode());
+//                break;
+            default:
+                break;
+        }
+        log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarcode());
+        return R.ok().add(dto);
+    }
+
     @PostMapping("/auto/emptyIn/v1")
     @ResponseBody
     public R autoEmptyIn(@RequestBody LocTypeDto locTypeDto){
@@ -290,6 +343,58 @@
         return dto;
     }
 
+    @Transactional
+    public StartupDto emptyPlateInEmpty(Integer devpNo, LocTypeDto locTypeDto, String barcode) {
+        // 婧愮珯鐐圭姸鎬佹娴�
+        BasDevp sourceStaNo = basDevpService.checkSiteStatusEmpty(devpNo, true);
+        // 妫�绱㈠簱浣�
+        StartupDto dto = commonService.getLocNo(1, 10, devpNo, null,null,null, locTypeDto);
+        int workNo = dto.getWorkNo();
+        // 鐢熸垚宸ヤ綔妗�
+        WrkMast wrkMast = new WrkMast();
+        wrkMast.setWrkNo(workNo);
+        wrkMast.setIoTime(new Date());
+        wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID
+        wrkMast.setIoType(10); // 鍏ュ嚭搴撶姸鎬侊細10.绌烘澘鍏ュ簱
+        wrkMast.setIoPri(13D); // 浼樺厛绾�
+        wrkMast.setCrnNo(dto.getCrnNo());
+        wrkMast.setSourceStaNo(dto.getSourceStaNo());
+        wrkMast.setStaNo(dto.getStaNo());
+        wrkMast.setLocNo(dto.getLocNo());
+        wrkMast.setFullPlt("N"); // 婊℃澘
+        wrkMast.setPicking("N"); // 鎷f枡
+        wrkMast.setExitMk("N"); // 閫�鍑�
+        wrkMast.setEmptyMk("Y"); // 绌烘澘
+        wrkMast.setLinkMis("Y");
+        wrkMast.setBarcode(barcode);
+        wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
+        // 鎿嶄綔浜哄憳鏁版嵁
+        wrkMast.setAppeTime(new Date());
+        wrkMast.setModiTime(new Date());
+        boolean res = wrkMastService.insert(wrkMast);
+        if (!res) {
+            throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+        }
+        // 鏇存柊婧愮珯鐐逛俊鎭�
+        sourceStaNo.setWrkNo(workNo);
+        sourceStaNo.setModiTime(new Date());
+        if (!basDevpService.updateById(sourceStaNo)){
+            throw new CoolException("鏇存柊婧愮珯澶辫触");
+        }
+        // 鏇存柊鐩爣搴撲綅鐘舵��
+        LocMast locMast = locMastService.selectById(dto.getLocNo());
+        if (locMast.getLocSts().equals("O")){
+            locMast.setLocSts("S"); // S.鍏ュ簱棰勭害
+            locMast.setModiTime(new Date());
+            if (!locMastService.updateById(locMast)){
+                throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�");
+            }
+        } else {
+            throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤");
+        }
+        return dto;
+    }
+
     /*...........................寰愬伐姹変簯..............浠ヤ笅.............涓婇ザ姹熼摐...........................*/
     /*............................Created by Monkey D. Luffy on 2023.07.19.............................*/
 

--
Gitblit v1.9.1