Jelajahi Sumber

修改抓取数据为正常库位数据;修改库位货物表抓取数据,有则修改,无则新增;application.yml为本地启动信息,打包上线需将服务配置以及数据库连接改为注释中的服务配置以及数据库连接

dq 5 tahun lalu
induk
melakukan
835ec4c40d

+ 31 - 5
src/main/java/com/emato/cus/supervise/biz/acqGoodsSeat/AcqGoodsOnSeatCusData.java

@@ -11,8 +11,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
-import java.util.List;
-import java.util.Map;
+
+import java.util.*;
 import java.util.stream.Collectors;
 
 
@@ -43,9 +43,18 @@ public class AcqGoodsOnSeatCusData implements CusData {
 
         List<CusAcqGoodsSeat06> cusList = (List<CusAcqGoodsSeat06>) list;
 
+        // 新增库存list
+        List<CusAcqGoodsSeat06> insertList = new ArrayList<>();
+        // 修改库存list
+        List<CusAcqGoodsSeat06> updateList = new ArrayList<>();
+
         List<String> gUnitNameList = Lists.newArrayList();
         cusList.forEach(i -> gUnitNameList.add(i.getgUnit()));
 
+        // 查询已有库存信息表对应sku数据
+        List<CusAcqGoodsSeat06> listgoodsSeat = cusAcqGoodsSeatService06.listCusAcqGoodsSeat(cusList);
+        Map<String, String> exitGoodsSeat = listgoodsSeat.stream().collect(Collectors.toMap(k->k.getSkuNo()+k.getSeatNo(), v->v.getLocalEmsNo()));
+
         List<OmsCusUnitCode> codeList = omsCusUnitCodeMapper.getOmsCusUnitCodeList(gUnitNameList);
         Map<String,OmsCusUnitCode> omsCusUnitCodeMap = codeList.stream().collect(Collectors.toMap(k->k.getgUnitName(), v->v));
 
@@ -54,13 +63,30 @@ public class AcqGoodsOnSeatCusData implements CusData {
             if(omsProductInfo != null) {
                 seat.setgUnit(omsProductInfo.getgUnitCode());
             }
+
+            String key = seat.getSkuNo() + seat.getSeatNo();
+            if (exitGoodsSeat.containsKey(key)) {
+                // 存在, 则更新
+                updateList.add(seat);
+            } else {
+                // 不存在, 则插入
+                insertList.add(seat);
+            }
         }
 
-        int result = cusAcqGoodsSeatService06.addCusAcqGoodsSeat06(cusList);
+        int insertResult = 0;
+        int updateResult = 0;
+
+        if (insertList.size() > 0) {
+            insertResult = cusAcqGoodsSeatService06.addCusAcqGoodsSeat06(insertList);
+        }
+        if (updateList.size() > 0) {
+            updateResult = cusAcqGoodsSeatService06.updateCusAcqGoodsSeat06(updateList);
+        }
 
-        logger.info("---【" + DATA_TYPE_INFO + "】写入监控数据:{} 条", result);
+        logger.info("---【" + DATA_TYPE_INFO + "】写入监控数据:{} 条, 更新监控数据:{}条", insertResult, updateResult);
 
         logger.info("---------- 库位货物数据::写入本次监控数据结束 --------------------");
-        return result;
+        return insertResult + updateResult;
     }
 }

+ 7 - 7
src/main/java/com/emato/cus/supervise/biz/acqInventoryInfo/AcqInventoryInfoCusData.java

@@ -70,24 +70,24 @@ public class AcqInventoryInfoCusData implements CusData {
                 });
         // 查询已有库存信息表对应sku数据
         List<CusAcqInventoryInfo03> listInveInfo = cusAcqInventoryInfoService03.listCusAcqInventoryInfo(listSku);
-        Map<String, String> exitInveInfo = listInveInfo.stream().collect(Collectors.toMap(i -> i.getSkuNo(), i -> i.getLocalEmsNo()));
+        Map<String, String> exitInveInfo = listInveInfo.stream().collect(Collectors.toMap(k->k.getSkuNo(), v->v.getLocalEmsNo()));
 
 
         List<OmsCusUnitCode> codeList = omsCusUnitCodeMapper.getOmsCusUnitCodeList(gUnitNameList);
         Map<String,OmsCusUnitCode> omsCusUnitCodeMap = codeList.stream().collect(Collectors.toMap(k->k.getgUnitName(), v->v));
 
-        for (CusAcqInventoryInfo03 seat:cusList) {
-            OmsCusUnitCode omsProductInfo = omsCusUnitCodeMap.get(seat.getGUnit());
+        for (CusAcqInventoryInfo03 info:cusList) {
+            OmsCusUnitCode omsProductInfo = omsCusUnitCodeMap.get(info.getGUnit());
             if(omsProductInfo != null) {
-                seat.setGUnit(omsProductInfo.getgUnitCode());
+                info.setGUnit(omsProductInfo.getgUnitCode());
             }
 
-            if (exitInveInfo.containsKey(seat.getSkuNo())) {
+            if (exitInveInfo.containsKey(info.getSkuNo())) {
                 // 存在, 则更新
-                updateList.add(seat);
+                updateList.add(info);
             } else {
                 // 不存在, 则插入
-                insertList.add(seat);
+                insertList.add(info);
             }
 
         }

+ 4 - 0
src/main/java/com/emato/cus/supervise/mapperCus/CusAcqGoodsSeatMapper06.java

@@ -20,4 +20,8 @@ public interface CusAcqGoodsSeatMapper06 {
      * @return
      */
     int addCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list);
+
+    List<CusAcqGoodsSeat06> listCusAcqGoodsSeat(List<CusAcqGoodsSeat06> list);
+
+    int updateCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list);
 }

+ 14 - 0
src/main/java/com/emato/cus/supervise/service/cus/CusAcqGoodsSeatService06.java

@@ -17,4 +17,18 @@ public interface CusAcqGoodsSeatService06 {
      * @return
      */
     int addCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list);
+
+    /**
+     * 查询现有库位货物信息
+     * @param list
+     * @return
+     */
+    List<CusAcqGoodsSeat06> listCusAcqGoodsSeat(List<CusAcqGoodsSeat06> list);
+
+    /**
+     * 更新库位货物信息
+     * @param updateList
+     * @return
+     */
+    int updateCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list);
 }

+ 11 - 0
src/main/java/com/emato/cus/supervise/service/cus/impl/CusAcqGoodsMoveSeatServiceImpl06.java

@@ -27,4 +27,15 @@ public class CusAcqGoodsMoveSeatServiceImpl06 implements CusAcqGoodsSeatService0
     public int addCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list) {
         return cusAcqGoodsSeatMapper06.addCusAcqGoodsSeat06(list);
     }
+
+    @Override
+    public List<CusAcqGoodsSeat06> listCusAcqGoodsSeat(List<CusAcqGoodsSeat06> list) {
+        return cusAcqGoodsSeatMapper06.listCusAcqGoodsSeat(list);
+    }
+
+    @Override
+    @Transactional(value ="secondTransactionManager")
+    public int updateCusAcqGoodsSeat06(List<CusAcqGoodsSeat06> list) {
+        return cusAcqGoodsSeatMapper06.updateCusAcqGoodsSeat06(list);
+    }
 }

+ 20 - 21
src/main/resources/application.yml

@@ -8,8 +8,8 @@ app:
 
 # 服务配置
 server:
-  address: 172.18.0.193
-#  address: 127.0.0.1
+#  address: 172.18.0.193
+  address: 127.0.0.1
   port: 6666
 
 
@@ -33,13 +33,12 @@ spring:
       # 数据源zaxxer HikariCP 读取通天晓数据库
       type: com.zaxxer.hikari.HikariDataSource
       driver-class-name: org.mariadb.jdbc.Driver
-      # url: jdbc:sqlserver://120.24.12.161:60001;DatabaseName=qhwms
-      # url: jdbc:mysql://120.24.12.161:60002/wms_test?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-      # username: qhdsrds
-      # password: Cb!uk3vXPW
-      url: jdbc:mysql://rm-wz9rps8173a1nx63g819.mysql.rds.aliyuncs.com:3306/wms_qhds?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-      username: qhdsf_wms
-      password: g$2tX98$tX
+      url: jdbc:mysql://out-rm-wz9rps8173a1nx63gio.mysql.rds.aliyuncs.com:3306/wms_qhds?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+      username: cout_qw
+      password: 1#DR1yZCN$
+#      url: jdbc:mysql://rm-wz9rps8173a1nx63g819.mysql.rds.aliyuncs.com:3306/wms_qhds?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+#      username: qhdsf_wms
+#      password: g$2tX98$tX
       # hikari连接池配置
       hikari:
         readOnly: true
@@ -53,12 +52,12 @@ spring:
       # 数据源zaxxer HikariCP 写入数据库
       type: com.zaxxer.hikari.HikariDataSource
       driver-class-name: org.mariadb.jdbc.Driver
-#      url: jdbc:mysql://120.76.84.45:3306/wms_data?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-#      username: tuser
-#      password: Qq!123
-      url: jdbc:mysql://183.3.221.144:3306/wms_data?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-      username: wms_admin
-      password: DsuBkL2w$q
+      url: jdbc:mysql://127.0.0.1:3306/wms_data?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+      username: root
+      password: 111111
+#      url: jdbc:mysql://183.3.221.144:3306/wms_data?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+#      username: wms_admin
+#      password: DsuBkL2w$q
       # hikari连接池配置
       hikari:
         connectionTimeout: 10000
@@ -71,12 +70,12 @@ spring:
           # 数据源zaxxer HikariCP 读取oms
           type: com.zaxxer.hikari.HikariDataSource
           driver-class-name: org.mariadb.jdbc.Driver
-#          url: jdbc:mysql://120.24.12.161:60002/oms_write?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-#          username: out_qhm
-#          password: r%4PEusOn&
-          url: jdbc:mysql://rm-wz9rps8173a1nx63g819.mysql.rds.aliyuncs.com:3306/oms_write?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
-          username: qhdsi_oms
-          password: ZuQhCA#px3
+          url: jdbc:mysql://out-rm-wz9rps8173a1nx63gio.mysql.rds.aliyuncs.com:3306/oms_write?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+          username: out_qhm
+          password: r%4PEusOn&
+#          url: jdbc:mysql://rm-wz9rps8173a1nx63g819.mysql.rds.aliyuncs.com:3306/oms_write?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull
+#          username: qhdsi_oms
+#          password: ZuQhCA#px3
           # hikari连接池配置
           hikari:
             connectionTimeout: 10000

+ 5 - 1
src/main/resources/mybatis/mapper/wms-acq-goods-move.xml

@@ -22,9 +22,13 @@
 		FROM
 		task_detail td
 		LEFT JOIN item i on td.itemcode = i.CODE
+		LEFT JOIN location l1 ON td.toLoc = l1.CODE
+		LEFT JOIN location l2 ON td.fromLoc = l2.CODE
 		<where>
+			1 = 1
+			and (l1.zoneCode in ('A区', 'B区', 'C区', 'D区') or l2.zoneCode in ('A区', 'B区', 'C区', 'D区'))
 			<if test="thisTime != null">
-				td.lastUpdated &gt;= #{thisTime}
+				and td.lastUpdated &gt;= #{thisTime}
 			</if>
 		</where>
     </select>

+ 6 - 2
src/main/resources/mybatis/mapper/wms-acq-goods-on-seat.xml

@@ -25,10 +25,14 @@
         ) AS goodsModel
         FROM
         location_inventory li
-        LEFT JOIN item i ON li.itemCode = i. CODE
+        LEFT JOIN item i ON li.itemCode = i.CODE
+        LEFT JOIN location l ON li.locationCode = l.CODE
         <where>
+            1 = 1
+            and li.inventorySts = '正常'
+            and l.zoneCode in ('A区', 'B区', 'C区', 'D区')
             <if test="thisTime != null">
-                li.lastUpdated &gt;= #{thisTime}
+                and li.lastUpdated &gt;= #{thisTime}
             </if>
         </where>
     </select>

+ 6 - 2
src/main/resources/mybatis/mapper/wms-acq-inventory-info.xml

@@ -16,10 +16,14 @@
 			CONCAT(i.itemSize,'-',i.itemColor,'-',i.itemStyle) as goodsModel
 		FROM
 			location_inventory li
-		LEFT JOIN item i ON li.itemCode = i. CODE
+		LEFT JOIN item i ON li.itemCode = i.CODE
+		LEFT JOIN location l ON li.locationCode = l.CODE
 		<where>
+			1 = 1
+			and li.inventorySts = '正常'
+			and l.zoneCode in ('A区', 'B区', 'C区', 'D区')
 			<if test="thisTime != null">
-				li.lastUpdated &gt;= #{thisTime}
+				and li.lastUpdated &gt;= #{thisTime}
 			</if>
 		</where>
 		GROUP BY

+ 8 - 2
src/main/resources/mybatis/mapper/wms-acq-shelf-load.xml

@@ -26,9 +26,12 @@
 			FROM
 				receipt_container rc
 			LEFT JOIN item i ON rc.itemcode = i. CODE
+			LEFT JOIN location l ON rc.toLocation = l.CODE
 		<where>
+			1 = 1
+			and l.zoneCode in ('A区', 'B区', 'C区', 'D区')
 			<if test="thisTime != null">
-				rc.lastUpdated &gt;= #{thisTime}
+				and rc.lastUpdated &gt;= #{thisTime}
 			</if>
 		</where>
     </select>
@@ -56,9 +59,12 @@
 		FROM
 		Shipping_container_detail scd
 		LEFT JOIN item i ON scd.itemCode = i.`code`
+		LEFT JOIN location l ON scd.originalPickLoc = l.CODE
 		<where>
+			1 = 1
+			and l.zoneCode in ('A区', 'B区', 'C区', 'D区')
 			<if test="thisTime != null">
-				scd.lastUpdated &gt;= #{thisTime}
+				and scd.lastUpdated &gt;= #{thisTime}
 			</if>
 		</where>
 	</select>

+ 3 - 3
src/main/resources/mybatis/mapperCus/cus-acq-inventory-info.xml

@@ -35,9 +35,9 @@
         select * from acq_inventory_info
         <where>
             <if test="list != null and list.size()>0">
-                sku IN
-                <foreach collection="list" item="i" index="idx" open="(" separator="," close=")">
-                    #{i.sku}
+                sku_no IN
+                <foreach collection="list" item="sku" index="idx" open="(" separator="," close=")">
+                    #{sku}
                 </foreach>
             </if>
         </where>