From 44b6b79dd5dee0ebbd2d11b08abbc2be275bed58 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期一, 09 二月 2026 16:10:17 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   38 +++++++++++++++++++++++++++-----------
 1 files changed, 27 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 8fbbbbf..6298d71 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -420,7 +420,7 @@
         int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
         String wrkCode = null;
         if (!Objects.isNull(deviceNo)) {
-            wrkCode = workNo + "-1";
+            wrkCode = workNo + "";
             ioType = 101;
             generateOutStock(taskDto, userId, workNo, wrkCode, now, ioType, locMast, staDesc, deviceNo);
         } else {
@@ -454,7 +454,8 @@
         }
 
         LocAroundBind binds = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>()
-                .eq("dev_no", basDevice.getDevNo()).orderBy("is_default", false));
+                .eq("loc_type", LocStsType.LOC_STS_TYPE_O.type)
+                .eq("dev_no", basDevice.getType()).orderBy("order_no"));
 
         if (Objects.isNull(binds)) {
             throw new CoolException("鏈哄彴鏈缃粯璁ゅ伐浣滀綅锛侊紒");
@@ -499,6 +500,7 @@
             throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細" + locMasts.getLocNo());
         }
 
+
         List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locMasts.getLocNo(), 1);
         //TODO 1. 鑾峰彇鍏ュ簱绔欑偣锛� 鐩爣搴撲綅  3. 灏嗗嚭搴撴槑缁嗘坊鍔犺嚦鍏ュ簱鏄庣粏
         Integer staNo = staNos.stream().findFirst().get();
@@ -512,9 +514,11 @@
         wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
         wrkMast.setIoPri(13D); // 浼樺厛绾э細13
         wrkMast.setCrnNo(locMast.getCrnNo());
-        wrkMast.setSourceStaNo(staDesc.getCrnStn() + ""); // 婧愮珯
 //        wrkMast.setStaNo(staDesc.getStnNo() + ""); // 鐩爣绔�
-        wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
+        if(!Objects.equals(locMasts.getCrnNo(), locMast.getCrnNo())){
+            wrkMast.setSourceStaNo(staDesc.getCrnStn() + ""); // 婧愮珯
+            wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
+        }
         wrkMast.setLocNo(locMasts.getLocNo());
         wrkMast.setSourceLocNo(taskDto.getLocNo()); // 婧愬簱浣�
         wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
@@ -1239,6 +1243,16 @@
             // 鍑哄簱 ===>> F.鍦ㄥ簱
             if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
                 locSts = "F";
+                if (!Cools.isEmpty(wrkMast.getLocNo())) {
+                    LocAroundBind bLocId = locAroundBindService.selectOne(new EntityWrapper<LocAroundBind>().eq("b_loc_id", wrkMast.getLocNo()));
+                    if (!Objects.isNull(bLocId)) {
+                        bLocId.setLocType(LocStsType.LOC_STS_TYPE_O.type);
+                        if (!locAroundBindService.updateById(bLocId)) {
+
+                        }
+                    }
+                }
+
                 // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉�
             } else if (wrkMast.getIoType() == 110) {
                 locSts = "D";
@@ -1454,11 +1468,13 @@
             ioType = 1;
         }
         wokNo = commonService.getWorkNo(0);
+        LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()));
+
         // 鑾峰彇鐩爣绔�
         Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
                 .eq("type_no", ioType)
-                .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
-                .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
+//                .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+                .eq("crn_no", locMast1.getCrnNo()); // 鍫嗗灈鏈哄彿
         StaDesc staDesc = staDescService.selectOne(wrapper);
         if (Cools.isEmpty(staDesc)) {
             throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
@@ -1475,10 +1491,10 @@
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(locDetl);
 
         // 婧愮珯鐐圭姸鎬佹娴�
-        BasDevp sourceStaNo = basDevpService.checkSiteStatus(Integer.parseInt(wrkMast.getStaNo()), false);
+        BasDevp sourceStaNo = basDevpService.checkSiteStatus(staDesc.getCrnStn(), false);
         sourceStaNo.setLocType1((short) 1);
         LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
-        StartupDto locNo = commonService.getLocNo(1, Integer.parseInt(wrkMast.getStaNo()), findLocNoAttributeVo, locTypeDto);
+        StartupDto locNo = commonService.getLocNo1(locMast1.getCrnNo());
 
         Date now = new Date();
         // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
@@ -1488,9 +1504,9 @@
         mast.setWrkNo(wokNo);
         // 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
         mast.setIoType(ioType); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
-        mast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
-        mast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
-        mast.setStaNo(staNo + ""); // 鐩爣绔�
+        mast.setWrkSts(1L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
+        mast.setSourceStaNo(""); // 婧愮珯
+        mast.setStaNo(""); // 鐩爣绔�
         mast.setSourceLocNo(wrkMast.getLocNo());
         mast.setLocNo(locNo.getLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
         mast.setModiTime(now);

--
Gitblit v1.9.1