From b5f5d11e518ac4ef7eafb4c5c5f3e9c710c55e38 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期一, 08 九月 2025 21:29:24 +0800
Subject: [PATCH] agv对接,许可证更新

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   37 +++++++++++++++++++++++++++----------
 1 files changed, 27 insertions(+), 10 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 a3616dc..7e7c2ad 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -157,8 +157,7 @@
     @Override
     @Transactional
     public void startupFullTakeStore(StockOutParam param, Long userId) {
-        // 鐩爣绔欑偣鐘舵�佹娴�
-        BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+        String agvStaNo = param.getOutSite();
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -168,8 +167,9 @@
             }
         }
         if (!locDetlDtos.isEmpty()) {
+
             // 鍚姩鍑哄簱寮�濮� 101.鍑哄簱
-            stockOut(staNo, locDetlDtos, null, userId);
+            stockOut(null, locDetlDtos, null, userId,agvStaNo);
         } else {
             throw new CoolException("搴撳瓨涓嶅瓨鍦�");
         }
@@ -177,7 +177,7 @@
 
     @Override
     @Transactional
-    public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId) {
+    public void stockOut(BasDevp staNo, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId,String agvStaNo) {
         Date now = new Date();
         // 鍚堝苟鍚岀被椤�
         Set<String> locNos = new HashSet<>();
@@ -215,8 +215,15 @@
             if(!locMast.getLocSts().equals("F")){
                 throw new CoolException(dto.getLocNo()+"鎵樼洏闈炲湪搴撶姸鎬�");
             }
+            Integer outSta = 0;
+            if(locMast.getCrnNo()==1){
+                outSta = 105;
+            }else if(locMast.getCrnNo()==2){
+                outSta = 103;
+            }else if(locMast.getCrnNo()==3){
+                outSta = 101;
+            }
 
-            Integer outSta = staNo.getDevNo();
             //2鍙峰爢鍨涙満鍏ㄦ澘鍑哄簱绔欐寚瀹氫负204绔欙紝鎷f枡绔欐寚瀹氫负202
 //            if(locMast.getCrnNo()==2){
 //                outSta = ioType == 101 ? 204 : 202;
@@ -247,6 +254,7 @@
             wrkMast.setAppeTime(now);
             wrkMast.setModiUser(userId);
             wrkMast.setModiTime(now);
+            wrkMast.setMemo(Cools.isEmpty(agvStaNo) ? "" : agvStaNo);
             if (!wrkMastService.insert(wrkMast)) {
                 throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+dto.getLocNo());
             }
@@ -285,7 +293,7 @@
 
     @Override
     @Transactional
-    public void stockOut(BasDevp staNo, TaskDto taskDto, Long userId) {
+    public void stockOut(BasDevp staNo, TaskDto taskDto, Long userId,String agvStaNo) {
         Date now = new Date();
         List<LocDto> locDtos = taskDto.getLocDtos();
         for (LocDto locDto : locDtos) {
@@ -297,7 +305,16 @@
         LocMast locMast = locMastService.selectById(taskDto.getLocNo());
         // 鑾峰彇璺緞
         int ioType = taskDto.isAll() ? 101 : 103;
-        StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo());
+        Integer outSta = 0;
+        if(locMast.getCrnNo()==1){
+            outSta = 106;
+        }else if(locMast.getCrnNo()==2){
+            outSta = 104;
+        }else if(locMast.getCrnNo()==3){
+            outSta = 102;
+        }
+
+        StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(),outSta);
         // 鐢熸垚宸ヤ綔鍙�
         int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
         // 鐢熸垚宸ヤ綔妗�
@@ -321,6 +338,7 @@
         wrkMast.setAppeTime(now);
         wrkMast.setModiUser(userId);
         wrkMast.setModiTime(now);
+        wrkMast.setMemo(Cools.isEmpty(agvStaNo) ? "" : agvStaNo);
         if (!wrkMastService.insert(wrkMast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+taskDto.getLocNo());
         }
@@ -493,8 +511,7 @@
     @Override
     @Transactional
     public void locCheckOut(StockOutParam param, Long userId) {
-        // 鐩爣绔欑偣鐘舵�佹娴�
-        BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite());
+
         // 鑾峰彇搴撲綅鏄庣粏
         List<LocDetlDto> locDetlDtos = new ArrayList<>();
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
@@ -505,7 +522,7 @@
         }
         if (!locDetlDtos.isEmpty()) {
             // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
-            stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId);
+            stockOut(null, locDetlDtos, IoWorkType.CHECK_OUT, userId,null);
         } else {
             throw new CoolException("搴撲綅鐗╂枡涓嶅瓨鍦�");
         }

--
Gitblit v1.9.1