From 94c1bea63d0557a1f806e13df95074d652d26ad8 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期五, 03 一月 2025 09:11:31 +0800
Subject: [PATCH] #ddth开发

---
 src/main/java/com/zy/common/web/WcsController.java |   37 ++++++++++++++++++++++---------------
 1 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 5a4001e..d426bd7 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -67,25 +67,25 @@
     public synchronized Re getLocNo(@RequestBody SearchLocParam param) {
         log.info("鏀跺埌WCS鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param);
         if (Cools.isEmpty(param.getCargoHeight())) {
-            return Re.error("鍏ュ嚭搴撶被鍨嬩笉鑳戒负绌�");
+            return Re.error("楂樹綆搴撶被鍨嬩笉鑳戒负绌�");
         }
         if (Cools.isEmpty(param.getFromPort())) {
             return Re.error("婧愮珯缂栧彿涓嶈兘涓虹┖");
         }
         List<WaitPakin> waitPakins = null;
-        if (param.getFromPort().equals("100")) {
+        if (param.getFromPort().equals("101")) {
 
             //鏈夌┖鏉垮嚭搴撴椂绂佹鍏ュ簱
-            int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type",110).eq("sta_no",100));
+            int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type",110).eq("sta_no",100).notIn("wrk_sts",7));
             if(wrkCount > 0){
                 return Re.error("鏈夌┖鏉垮嚭搴撳埌100绔欐椂鏃剁姝㈠叆搴�");
             }
 
-            if (Cools.isEmpty(param.getBarCode())) {
+            if (Cools.isEmpty(param.getBarCode()) && param.getIoType() != 10) {
                 return Re.error("鏉$爜涓嶈兘涓虹┖");
             }
             waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarCode()));
-            if (Cools.isEmpty(waitPakins)) {
+            if (Cools.isEmpty(waitPakins) && param.getIoType() != 10) {
                 WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarCode());
                 if (wrkMast != null && wrkMast.getIoType() == 103) {
                     return Re.parse(CodeRes.PICK_600);
@@ -99,7 +99,7 @@
             }
         }else {
             //鏈夋弧鏉垮嚭搴撴椂绂佹绌烘澘鍏ュ簱
-            int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type",101).or().eq("io_type",110));
+            int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no",100).andNew().eq("io_type",101).or().eq("io_type",110));
             if(wrkCount > 0){
                 return Re.error("鏈夋弧鏉垮嚭搴撴椂绂佹绌烘澘鍏ュ簱");
             }
@@ -119,12 +119,12 @@
         LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
 
         StartupDto dto = null;
-        switch (param.getFromPort()) {
-            case "100"://婊℃墭鐩樺叆搴�
+        switch (param.getIoType()) {
+            case 1://婊℃墭鐩樺叆搴�
                 assert waitPakins != null;
                 dto = startupFullPutStore(Integer.valueOf(param.getFromPort()), param.getBarCode(), locTypeDto, waitPakins);
                 break;
-            case "200"://绌烘墭鐩樺叆搴�
+            case 10://绌烘墭鐩樺叆搴�
                 dto = emptyPlateIn(Integer.valueOf(param.getFromPort()), locTypeDto, param.getBarCode());
                 break;
             default:
@@ -195,6 +195,9 @@
         List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList());
         List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList());
         StartupDto dto = commonService.getLocNo(1, devpNo, matnrs.get(0), batchs.get(0), null, locTypeDto);
+        if(dto == null){
+            throw new CoolException("娌℃湁妫�绱㈠埌绌哄簱浣�");
+        }
         int workNo = dto.getWorkNo();
         Date now = new Date();
         // 鐢熸垚宸ヤ綔妗�
@@ -216,6 +219,7 @@
         wrkMast.setLinkMis("Y");
         wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷
         wrkMast.setMk("N");//鏄惁瀹屾垚涓婃姤wcs
+        wrkMast.setFullPlt("N");//鍑哄簱绌烘澘娑堥櫎鏍囪
         // 鎿嶄綔浜哄憳鏁版嵁
         wrkMast.setAppeTime(now);
         wrkMast.setModiTime(now);
@@ -321,8 +325,12 @@
     @ResponseBody
     public Re status(@RequestBody StatusParam statusParam) {
         WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", statusParam.getTaskId()));
-        if(Cools.isEmpty(wrkMast)){
+        if(Cools.isEmpty(wrkMast)&&statusParam.getTaskStatus()!=8){
             return Re.error("娌℃湁鎵惧埌:"+statusParam.getTaskId()+"杩欐潯浠诲姟");
+        }else if(Cools.isEmpty(wrkMast)&&statusParam.getTaskStatus()==8){
+            return Re.ok();
+        }else if(!Cools.isEmpty(wrkMast)&&statusParam.getTaskStatus()==8&&wrkMast.getIoType()==110){
+            return Re.ok();
         }
         /**
          * 浠诲姟鐘舵��
@@ -341,12 +349,11 @@
             wrkMast.setWrkSts(3L);//3.鍙栬揣瀹屾垚
         }else if (statusParam.getTaskStatus()==3){
             wrkMast.setWrkSts(6L);//6.浠诲姟涓柇
-        } else if (statusParam.getTaskStatus()==4){
-            wrkMast.setWrkSts(7L);//6.鏀捐揣瀹屾垚
-        }if (statusParam.getTaskStatus()==8){
-            if(wrkMast.getIoType()==1 || wrkMast.getIoType() == 10){
+        } else if (statusParam.getTaskStatus()==4 || statusParam.getTaskStatus()==8){
+//            wrkMast.setWrkSts(7L);//6.鏀捐揣瀹屾垚
+            if(wrkMast.getIoType()==1 || wrkMast.getIoType() == 10 || wrkMast.getIoType() == 11){
                 wrkMast.setWrkSts(4L);//4.鍏ュ簱瀹屾垚
-            }else if (wrkMast.getIoType()==101 || wrkMast.getIoType() == 110){
+            }else if (wrkMast.getIoType()==101 || wrkMast.getIoType()==110){
                 wrkMast.setWrkSts(14L);//14.宸插嚭搴撴湭纭
             }
         }

--
Gitblit v1.9.1