From 585023c7abdd062c51ecf33b6b2119f3a4fbf993 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 12 一月 2026 08:16:08 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/web/WcsController.java |   74 ++++++++++++++++++++++++++++++++-----
 1 files changed, 64 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 953753a..a4a65d0 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -10,6 +10,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.EmptyPlateOutParam;
 import com.zy.asrs.entity.param.StatusParam;
+import com.zy.asrs.entity.result.FindLocNoAttributeVo;
 import com.zy.asrs.mapper.WrkMastMapper;
 import com.zy.asrs.service.*;
 import com.zy.common.CodeRes;
@@ -17,6 +18,8 @@
 import com.zy.common.model.StartupDto;
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.HttpHandler;
+import com.zy.common.web.param.ApplyChangeEnd;
+import com.zy.common.web.param.ErrorMsg;
 import com.zy.common.web.param.SearchEmptyParam;
 import com.zy.common.web.param.SearchLocParam;
 import lombok.extern.slf4j.Slf4j;
@@ -104,7 +107,7 @@
                 return Re.error("鏉$爜涓嶈兘涓虹┖");
             }
             waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarCode()));
-            if (Cools.isEmpty(waitPakins) && param.getIoType() != 10) {
+            if (Cools.isEmpty(waitPakins)) {
                 WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarCode());
                 if (wrkMast != null && wrkMast.getIoType() == 103) {
                     return Re.parse(CodeRes.PICK_600);
@@ -131,10 +134,18 @@
         if (Cools.isEmpty(param.getCargoHeight())) {
             return Re.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
         }
+//        if (!param.getBarCode().startsWith("7")&&!param.getBarCode().startsWith("8")){
+//            return Re.error("鏈畾涔夌殑鎵樼洏鐮佽鍒�");
+//        }
 
         // 婧愮珯鐐圭姸鎬佹娴�
         BasDevp sourceStaNo = basDevpService.checkSiteStatus(Integer.valueOf(param.getFromPort()), true);
-        sourceStaNo.setLocType1(param.getCargoHeight().shortValue());
+        sourceStaNo.setLocType1(param.getCargoHeight().shortValue()); // 楂樹綆搴撲綅
+//        if (param.getBarCode().startsWith("7")){
+//            sourceStaNo.setLocType2((short) 1); // 瀹界獎搴撲綅 1.绐勫簱浣�1200*1000*990
+//        }else if (param.getBarCode().startsWith("8")){
+//            sourceStaNo.setLocType2((short) 2); // 瀹界獎搴撲綅 2.瀹藉簱浣�1200*1000*1270
+//        }
         LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
 
         StartupDto dto = null;
@@ -153,7 +164,7 @@
             default:
                 break;
         }
-        log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarCode());
+        log.info("WCS婊℃澘鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarCode());
         return Re.ok();
     }
 
@@ -175,8 +186,48 @@
         StartupDto dto = null;
 
         dto = emptyPlateIn(Integer.valueOf(param.getFromPort()), locTypeDto);
-        log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto);
+        log.info("WCS绌烘澘鍏ュ簱鎺ュ彛杩斿弬:{}", dto);
         return Re.ok();
+    }
+
+    @PostMapping("/fromwcs/errorReport")
+    @ResponseBody
+    public synchronized Re errReport(@RequestBody ErrorMsg param){
+        log.info("鏀跺埌WCS浠诲姟鍏ュ簱寮傚父涓婃姤===>>鍏ュ弬:{}",param);
+        if(Cools.isEmpty(param.getWarehouse())){
+            return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+        }
+        if(!param.getWarehouse().equals(warehouse)){
+            return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+        }
+        return Re.ok();
+    }
+
+    @PostMapping("/fromwcs/applyChangeEnd")
+    @ResponseBody
+    public synchronized Re applyChangeEnd(@RequestBody ApplyChangeEnd param){
+        log.info("鏀跺埌WCS鐢宠鏈�缁堢洰鐨勪綅缃�===>>鍏ュ弬:{}",param);
+        if(Cools.isEmpty(param.getWarehouse())){
+            return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+        }
+        if(!param.getWarehouse().equals(warehouse)){
+            return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+        }
+        if (Cools.isEmpty(param.getTaskId())){
+            return Re.error("浠诲姟缂栧彿涓嶈兘涓虹┖");
+        }
+        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", param.getTaskId()));
+        if (wrkMast == null){
+            return Re.error("WMS涓嶅瓨鍦ㄤ换鍔″彿:" + param.getTaskId() + "浠诲姟");
+        }
+        if (wrkMast.getIoType() > 100){
+            return Re.error("浠诲姟鍙�:" + param.getTaskId() + "鏄嚭搴撲换鍔�");
+        }
+        if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 5 || wrkMast.getWrkSts() == 14 || wrkMast.getWrkSts() == 15){
+            return Re.error("浠诲姟鍙�:" + param.getTaskId() + "宸茬粨鏉�");
+        }
+        String targetNo = wrkMast.getLocNo();
+        return Re.ok(targetNo);
     }
 
 
@@ -328,7 +379,7 @@
         // 婧愮珯鐐圭姸鎬佹娴�
         BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
         // 妫�绱㈠簱浣�
-        StartupDto dto = commonService.getLocNo(10, devpNo, null, null, null, locTypeDto);
+        StartupDto dto = commonService.getLocNoNew(10, devpNo, null, null, null);
         int workNo = dto.getWorkNo();
         // 鐢熸垚宸ヤ綔妗�
         WrkMast wrkMast = new WrkMast();
@@ -408,7 +459,10 @@
                 LocTypeDto locTypeDto = new LocTypeDto();
                 locTypeDto.setLocType1(locType1);
                 //娉ㄦ剰涓�涓澘鍙兘鏀惧悓涓�绉嶇墿鏂欙紙妫�绱㈡柊搴撲綅锛�
-                StartupDto dto = commonService.getLocNoRunPick(4, 1, 101, wrkDetls.get(0).getMatnr(), wrkDetls.get(0).getBatch(), null, 4, locTypeDto, 2);
+//                StartupDto dto = commonService.getLocNoRunPick(4, 1, 101, wrkDetls.get(0).getMatnr(), wrkDetls.get(0).getBatch(), null, 4, locTypeDto, 2);
+                FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
+                findLocNoAttributeVo.setMatnr(wrkDetls.get(0).getMatnr());
+                StartupDto dto = commonService.getLocNoNew(1, 101, findLocNoAttributeVo,locTypeDto,null);
                 Date now = new Date();
                 wrkMast.setIoTime(now);
                 wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
@@ -499,7 +553,7 @@
                 map.put("posiY", locMast.getBay1());
                 map.put("posiZ", locMast.getLev1());
                 map.put("cargoNo", locMast.getLocNo());
-                if(locMast.getLev1() == 1 && locMast.getRow1() == 8 && locMast.getBay1() == 1){
+                if(locMast.getLev1() == 1 && locMast.getRow1() == 6 && locMast.getBay1() == 1){
                     map.put("type", "6");
                 }else {
                     map.put("type", "0");
@@ -543,17 +597,17 @@
                     success = true;
                 } else {
                     log.error("wms鍚屾wcs搴撲綅澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", url + "/" + loc, JSON.toJSONString(mapList), response);
-                    throw new CoolException("wms涓嬪彂浠诲姟缁檞cs澶辫触");
+                    throw new CoolException("wms鍚屾wcs搴撲綅澶辫触");
                 }
             } catch (Exception e) {
                 log.error("fail", e);
 //            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                throw new CoolException("wms涓嬪彂浠诲姟缁檞cs澶辫触");
+                throw new CoolException("wms鍚屾wcs搴撲綅澶辫触");
             } finally {
                 try {
                     // 淇濆瓨鎺ュ彛鏃ュ織
                     apiLogService.save(
-                            "wms鍚屾wcs搴撲綅澶辫触",
+                            "wms鍚屾wcs搴撲綅",
                             url + "/" + loc,
                             null,
                             "127.0.0.1",

--
Gitblit v1.9.1