From 9e3ac50b27cbbfc6d82da8177a1a8fcf1c009247 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 08 九月 2025 09:32:21 +0800
Subject: [PATCH] #根据1,2楼rgv任务数,分配生成4楼盘点衔接任务

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java    |    4 ++++
 src/main/java/com/zy/asrs/service/StaDescService.java          |    1 +
 src/main/java/com/zy/common/web/WcsController.java             |    2 +-
 src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java         |    2 ++
 src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java |   33 ++++++++++++++++++++++++++++++++-
 src/main/resources/application.yml                             |    4 ++--
 src/main/resources/mapper/WrkMastStaMapper.xml                 |   12 ++++++++++++
 7 files changed, 54 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
index a3d0d37..4d65648 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
@@ -8,5 +8,7 @@
 @Mapper
 @Repository
 public interface WrkMastStaMapper extends BaseMapper<WrkMastSta> {
+    Integer wrkCount1();
+    Integer wrkCount2();
 
 }
diff --git a/src/main/java/com/zy/asrs/service/StaDescService.java b/src/main/java/com/zy/asrs/service/StaDescService.java
index 13d18b8..1f8c3b7 100644
--- a/src/main/java/com/zy/asrs/service/StaDescService.java
+++ b/src/main/java/com/zy/asrs/service/StaDescService.java
@@ -10,6 +10,7 @@
     List<Integer> queryOutStaNosByLocNo(String locNo, Integer typeNo);
 
     StaDesc queryCrnStn(Integer typeNo, Integer crnNo, Integer stnNo);
+    StaDesc queryCrnStnCheck(Integer typeNo, Integer crnNo, Integer stnNo);
 
     StaDesc queryCrnStnAuto(Integer typeNo, Integer crnNo, Integer stnNo);
 
diff --git a/src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java
index 1b995a3..f898eff 100644
--- a/src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/StaDescServiceImpl.java
@@ -7,14 +7,18 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.StaDesc;
 import com.zy.asrs.mapper.StaDescMapper;
+import com.zy.asrs.mapper.WrkMastStaMapper;
+import com.zy.asrs.service.MatService;
 import com.zy.asrs.service.StaDescService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
 
 @Service("staDescService")
 public class StaDescServiceImpl extends ServiceImpl<StaDescMapper, StaDesc> implements StaDescService {
-
+    @Autowired
+    private WrkMastStaMapper wrkMastStaMapper;
     @Override
     public List<Integer> queryOutStaNosByLocNo(String locNo, Integer typeNo) {
         return this.baseMapper.queryOutStaNosByLocNo(locNo, typeNo);
@@ -34,6 +38,33 @@
     }
 
     @Override
+    public StaDesc queryCrnStnCheck(Integer typeNo, Integer crnNo, Integer stnNo) {
+        Integer wrkRgv1 = wrkMastStaMapper.wrkCount1();
+        Integer wrkRgv2 = wrkMastStaMapper.wrkCount2();
+
+        Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>();
+
+        // 鉁� 濡傛灉 wrkRgv1 < wrkRgv2锛屽垯澶氬姞涓�涓潯浠�
+        if (wrkRgv1 < wrkRgv2) {
+            wrapper.eq("type_no", typeNo)
+                    .eq("stn_no", stnNo)
+                    .eq("crn_no", crnNo)
+                    .lt("crn_stn", 2000);
+        }else{
+            wrapper.eq("type_no", typeNo)
+                    .eq("stn_no", stnNo)
+                    .eq("crn_no", crnNo)
+                    .gt("crn_stn", 2000);
+        }
+        StaDesc staDesc = this.selectOne(wrapper);
+        if (staDesc == null) {
+            throw new CoolException("鍑哄簱璺緞涓嶅瓨鍦�");
+        }
+        return staDesc;
+    }
+
+
+    @Override
     public StaDesc queryCrnStnAuto(Integer typeNo, Integer crnNo, Integer stnNo) {
         Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
                 .eq("type_no", typeNo)
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 c41d17a..2cfd50a 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -341,6 +341,10 @@
 
             // 鑾峰彇璺緞
             StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta);
+            if(ioType.equals(107)){
+                staDesc = staDescService.queryCrnStnCheck(ioType, locMast.getCrnNo(), outSta);
+            }
+
             // 鐢熸垚宸ヤ綔鍙�
             int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
             // 鐢熸垚宸ヤ綔妗�
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 9b03a77..9243442 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -179,7 +179,7 @@
         wrkMast.setIoType(12);
         wrkMast.setCrnNo(3);
         wrkMast.setBarcode(transplantWork.getBarcode());
-        wrkMast.setSourceStaNo(1015);
+        wrkMast.setSourceStaNo(transplantWork.getSourceStaNo());
         wrkMast.setStaNo(transplantWork.getStaNo());
         wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
         wrkMast.setPicking("N"); // 鎷f枡
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index dfc59bc..e6f8768 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -10,8 +10,8 @@
     enabled: false
   datasource:
     driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
-#    url: jdbc:sqlserver://127.0.0.1:1433;databasename=jshdasrs
-    url: jdbc:sqlserver://10.10.10.235:1433;databasename=jshdasrs
+    url: jdbc:sqlserver://127.0.0.1:1433;databasename=jshdasrs
+#    url: jdbc:sqlserver://10.10.10.235:1433;databasename=jshdasrs
     username: sa
     password: sa@123
   mvc:
diff --git a/src/main/resources/mapper/WrkMastStaMapper.xml b/src/main/resources/mapper/WrkMastStaMapper.xml
index 11ad76d..af48c7c 100644
--- a/src/main/resources/mapper/WrkMastStaMapper.xml
+++ b/src/main/resources/mapper/WrkMastStaMapper.xml
@@ -22,4 +22,16 @@
 
     </resultMap>
 
+    <select id="wrkCount1" resultType="Integer">
+        SELECT COUNT(*) FROM asr_wrk_mast_sta WHERE wrk_start &lt; 2000
+    </select>
+
+
+    <select id="wrkCount2" resultType="Integer">
+        SELECT COUNT(*)
+        FROM asr_wrk_mast_sta
+        WHERE wrk_start &gt; 2000
+    </select>
+
+
 </mapper>

--
Gitblit v1.9.1