From 6cd08fe4de88df0a21851f96bdc4e617c5d92e36 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期三, 29 四月 2026 11:57:31 +0800
Subject: [PATCH] 工单相关功能完善

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   64 ++++++++++++++++++++------------
 1 files changed, 40 insertions(+), 24 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 e3430a6..cd8b554 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -119,7 +119,7 @@
             throw new CoolException("鏌ヨ搴撲綅澶辫触锛侊紒==銆媠tartupFullPutStore ==銆� commonService.getLocNo");
         }
         // 鐢熸垚宸ヤ綔鍙�
-        int workNo = dto.getTaskNo();
+        int workNo = dto.getWorkNo();
         // 鐢熸垚宸ヤ綔妗�
         WrkMast wrkMast = new WrkMast();
         wrkMast.setWrkNo(workNo);
@@ -184,7 +184,7 @@
     @Transactional
     public void startupFullTakeStore(StockOutParam param, Long userId) {
         // 鐩爣绔欑偣鐘舵�佹娴�
-//        BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+        BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -332,7 +332,7 @@
 //            }
 
             // 鑾峰彇璺緞
-//            StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta);
+            StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta);
             // 鐢熸垚宸ヤ綔鍙�
             int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
             // 鐢熸垚宸ヤ綔妗�
@@ -343,7 +343,7 @@
             wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
             wrkMast.setIoPri(13D); // 浼樺厛绾э細13
             wrkMast.setCrnNo(locMast.getCrnNo());
-            wrkMast.setSourceStaNo("0"); // 婧愮珯
+            wrkMast.setSourceStaNo(staDesc.getCrnStn$()); // 婧愮珯
             wrkMast.setStaNo(String.valueOf(outSta)); // 鐩爣绔�
             wrkMast.setSourceLocNo(dto.getLocNo()); // 婧愬簱浣�
             wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
@@ -494,7 +494,7 @@
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
 
         StartupDto dto = commonService.getLocNo(10, devpNo, findLocNoAttributeVo, locTypeDto);
-        int workNo = dto.getTaskNo();
+        int workNo = dto.getWorkNo();
         Date now = new Date();
         // 鐢熸垚宸ヤ綔妗�
         WrkMast wrkMast = new WrkMast();
@@ -569,15 +569,15 @@
                 throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篋鐨勫簱浣嶏紝搴撲綅鍙凤細" + locMast.getLocNo() + " 銆佸綋鍓嶇姸鎬侊細" + locMast.getLocSts() + "-" + locMast.getLocSts$());
             }
             // 鑾峰彇婧愮珯
-//            Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
-//                    .eq("type_no", 110)
-//                    .eq("stn_no", param.getOutSite())
-//                    .eq("crn_no", locMast.getCrnNo());
-//            StaDesc staDesc = staDescService.selectOne(wrapper);
-//            Integer sourceStaNo = staDesc.getCrnStn();
-//            if (Cools.isEmpty(sourceStaNo)) {
-//                throw new CoolException("妫�绱㈡簮绔欏け璐�");
-//            }
+            Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+                    .eq("type_no", 110)
+                    .eq("stn_no", param.getOutSite())
+                    .eq("crn_no", locMast.getCrnNo());
+            StaDesc staDesc = staDescService.selectOne(wrapper);
+            Integer sourceStaNo = staDesc.getCrnStn();
+            if (Cools.isEmpty(sourceStaNo)) {
+                throw new CoolException("妫�绱㈡簮绔欏け璐�");
+            }
             Date now = new Date();
             // 淇濆瓨宸ヤ綔妗�
             WrkMast wrkMast = new WrkMast();
@@ -586,7 +586,7 @@
             wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
             wrkMast.setIoType(110); // 鍏ュ嚭搴撶姸鎬侊細 110.绌烘澘鍑哄簱
             wrkMast.setIoPri(10D);
-            wrkMast.setSourceStaNo("0"); // 婧愮珯
+            wrkMast.setSourceStaNo(staDesc.getCrnStn$()); // 婧愮珯
             wrkMast.setStaNo(param.getOutSite() + ""); // 鐩爣绔�
             wrkMast.setCrnNo(locMast.getCrnNo());
             wrkMast.setSourceLocNo(locNo); // 婧愬簱浣�
@@ -1239,14 +1239,30 @@
             throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
         }
         // 鑾峰彇鐩爣绔�
-//        Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
-//                .eq("type_no", wrkMast.getIoType() - 50)
-//                .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
-//                .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
-//        StaDesc staDesc = staDescService.selectOne(wrapper);
-//        if (Cools.isEmpty(staDesc)) {
-//            throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
-//        }
+        int stn_no = 0;
+        switch (wrkMast.getStaNo().substring(0, 2)) {
+            case "11":
+                stn_no = 1109;
+                break;
+            case "12":
+                stn_no = 1209;
+                break;
+            case "13":
+                stn_no = 1309;
+                break;
+            case "14":
+                stn_no = 1402;
+                break;
+            default:
+        }
+        Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+                .eq("type_no", wrkMast.getIoType() - 50)
+                .eq("stn_no", stn_no) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+                .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
+        StaDesc staDesc = staDescService.selectOne(wrapper);
+        if (Cools.isEmpty(staDesc)) {
+            throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+        }
         Date now = new Date();
         // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
 //        Integer staNo = staDesc.getCrnStn();
@@ -1254,7 +1270,7 @@
         wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
         wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
         wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
-        wrkMast.setStaNo("0"); // 鐩爣绔�
+        wrkMast.setStaNo(staDesc.getCrnStn$()); // 鐩爣绔�
         wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
         wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
         wrkMast.setModiTime(now);

--
Gitblit v1.9.1