From b06acfb67829c7a2db6696ae288cf325bf168580 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期二, 01 十一月 2022 12:02:02 +0800
Subject: [PATCH] #暂存

---
 src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java |    4 ++++
 src/main/resources/mapper/LocMastMapper.xml                    |   42 ++++++++++++++++++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/mapper/LocMastMapper.java            |    1 +
 src/main/java/com/zy/asrs/service/LocMastService.java          |    1 +
 src/main/java/com/zy/common/service/CommonService.java         |    5 ++++-
 src/main/resources/application.yml                             |    4 ++--
 6 files changed, 54 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
index da9fcbc..94cf9cc 100644
--- a/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocMastMapper.java
@@ -14,6 +14,7 @@
 public interface LocMastMapper extends BaseMapper<LocMast> {
 
     List<LocMast> queryFreeLocMast(@Param("rows") List<Integer> rows, @Param("rowsLen") Integer rowsLen, @Param("locType1") Short locType1);
+    List<LocMast> queryFreeLocMast2(@Param("rows") List<Integer> rows, @Param("rowsLen") Integer rowsLen, @Param("locType1") Short locType1, @Param("inout_everyday") Boolean inoutEveryday);
 
     @Select("select loc_no from asr_loc_mast where 1=1 and loc_sts = 'O' and crn_no = #{crnNo}")
     List<String> queryGroupEmptyStock(Integer crnNo);
diff --git a/src/main/java/com/zy/asrs/service/LocMastService.java b/src/main/java/com/zy/asrs/service/LocMastService.java
index f54455b..8983351 100644
--- a/src/main/java/com/zy/asrs/service/LocMastService.java
+++ b/src/main/java/com/zy/asrs/service/LocMastService.java
@@ -12,6 +12,7 @@
      * 妫�绱㈠彲鐢ㄥ簱浣�
      */
     List<LocMast> queryFreeLocMast(List<Integer> rows, Integer rowsLen, Short locType1);
+    List<LocMast> queryFreeLocMast2(List<Integer> rows, Integer rowsLen, Short locType1,Boolean inoutEveryday);
 
     /**
      * 鑾峰彇鍚岀粍璐ф灦鐨勭┖搴撲綅
diff --git a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
index ec77dd4..5ba6512 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java
@@ -30,6 +30,10 @@
     public List<LocMast> queryFreeLocMast(List<Integer> rows, Integer rowsLen, Short locType1) {
         return this.baseMapper.queryFreeLocMast(rows, rowsLen, locType1);
     }
+    @Override
+    public List<LocMast> queryFreeLocMast2(List<Integer> rows, Integer rowsLen, Short locType1,Boolean inoutEveryday) {
+        return this.baseMapper.queryFreeLocMast2(rows, rowsLen, locType1,inoutEveryday);
+    }
 
     @Override
     public List<String> queryGroupEmptyStock(String sourceLocNo) {
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 40639a2..0071933 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -55,6 +55,8 @@
     private LocDetlService locDetlService;
     @Autowired
     private SlaveProperties slaveProperties;
+    @Autowired
+    private MatService matService;
 
     /**
      * 鐢熸垚宸ヤ綔鍙�
@@ -274,7 +276,8 @@
         if (locMast == null) {
             List<Integer> rows = Utils.getGroupLoc(curRow);
 
-            List<LocMast> locMasts = locMastService.queryFreeLocMast(rows, rows.size(), locTypeDto.getLocType1());
+            Mat mat = matService.selectByMatnr(matNos.get(0));
+            List<LocMast> locMasts = locMastService.queryFreeLocMast2(rows, rows.size(), locTypeDto.getLocType1(),mat.getInoutEveryday());
             if (!Cools.isEmpty(locMasts)) {
                 Integer innermostRow = Utils.getInnermostRow(locMasts.get(0).getLocNo());
                 for (LocMast one : locMasts) {
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 180b469..5114c81 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -11,8 +11,8 @@
   datasource:
     driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
 #    url: jdbc:sqlserver://10.10.10.100:1433;databasename=bfasrs
-    url: jdbc:sqlserver://localhost:1433;databasename=bfasrs
-#    url: jdbc:sqlserver://192.168.4.15:1433;databasename=bfasrs
+#    url: jdbc:sqlserver://localhost:1433;databasename=bfasrs
+    url: jdbc:sqlserver://192.168.4.15:1433;databasename=bfasrs
     username: sa
 #    password: Zoneyung@zy56$
     password: sa@123
diff --git a/src/main/resources/mapper/LocMastMapper.xml b/src/main/resources/mapper/LocMastMapper.xml
index 12a1b11..97b44e7 100644
--- a/src/main/resources/mapper/LocMastMapper.xml
+++ b/src/main/resources/mapper/LocMastMapper.xml
@@ -77,4 +77,46 @@
         )
     </select>
 
+    <select id="queryFreeLocMast2" resultMap="BaseResultMap">
+        select
+        *
+        from asr_loc_mast
+        where 1=1
+        <if test="inoutEveryday == 2.0">
+            and bay1 >= 10
+        </if>
+        <if test="inoutEveryday != 2.0">
+            and bay1 &lt; 10
+        </if>
+        and row1 in
+        <foreach item="item" collection="rows" index="index"  separator="," open="(" close=")">
+            #{item}
+        </foreach>
+        and ctn_no =
+        (
+        select
+        top 1
+        ctn_no
+        from (
+        select
+        ctn_no,
+        count(1) as count
+        from asr_loc_mast
+        where 1=1
+        and row1 in
+        <foreach item="item" collection="rows" index="index"  separator="," open="(" close=")">
+            #{item}
+        </foreach>
+        and loc_sts = 'O'
+        <if test="locType1 != null">
+            and loc_type1 = #{locType1}
+        </if>
+        and loc_no not in ('0100101', '0200101', '0300101', '1200701', '1300701', '1400701', '1900401', '2000401', '2100401')
+        group by ctn_no
+        ) a
+        where count = #{rowsLen}
+        order by right(ctn_no, 2) + 0 asc, left(ctn_no, 3) + 0 asc
+        )
+    </select>
+
 </mapper>

--
Gitblit v1.9.1