From f0eeec1f6db4cfc0f9e3f2de5c765d06d5831201 Mon Sep 17 00:00:00 2001
From: 18516761980 <tqsxp@163.com>
Date: 星期六, 04 二月 2023 11:41:50 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/ints/task/scheduler/ErpLkScheduler.java |   46 ++++++++++++++++++++++++++++------------------
 1 files changed, 28 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/ints/task/scheduler/ErpLkScheduler.java b/src/main/java/com/zy/ints/task/scheduler/ErpLkScheduler.java
index 3b6cb09..e5e7c3f 100644
--- a/src/main/java/com/zy/ints/task/scheduler/ErpLkScheduler.java
+++ b/src/main/java/com/zy/ints/task/scheduler/ErpLkScheduler.java
@@ -46,8 +46,10 @@
     public void proofread() {
         if (!erpEnabled) return;
         String sqlSelectErpLk = "select prd_no as prdNo,prd_mark as prdMark,qty,wh,status,temp1,temp2,temp3 from bas_erp_lk where 1=1";
+        String sqlSelectErpLkBak = "select prd_no as prdNo,prd_mark as prdMark,qty,wh,status,temp1,temp2,temp3 from bas_erp_lk_bak where 1=1";
         String sqlUpDateErpLkOne = "update bas_erp_lk set status=1 where prd_no=";
         String sqlUpDateErpLkTwo = "update bas_erp_lk set status=2 where prd_no=";
+        String sqlUpDateErpLkBak = "update bas_erp_lk_bak set qty=";
 
         try {
             List<ErpLk> erpLks = erpSqlServer.select(sqlSelectErpLk, ErpLk.class);
@@ -61,7 +63,7 @@
                         param.put("matnr", erpLk.getPrdNo());
                         param.put("batch", erpLk.getPrdMark());
                         Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(1, 10, param, LocDetl.class));
-                        if (stockStatis.getSize() == 1) {
+                        if (stockStatis.getRecords().size() == 1) {
                             for (LocDetl locDetl : stockStatis.getRecords()) {
                                 if (locDetl.getAnfme() - erpLk.getQty() == 0) {
                                     erpSqlServer.update(sqlUpDateErpLkOne + "'" + erpLk.getPrdNo() + "' and prd_mark='" + erpLk.getPrdMark() + "'");
@@ -75,27 +77,35 @@
                             callApiLogSave(erpLk, "bas_erp_lk", "绔嬪簱搴撳瓨寮傚父锛侊紒锛佺浉鍚屽搧鍙枫�佽揣鍝佺壒寰佺殑璐х墿閲嶅锛侊紒锛�", false);
                         }
                     } else if (status == 1) {
-                        HashMap<String, Object> condition = new HashMap<>();
-                        condition.put("prd_no", "'" + erpLk.getPrdNo() + "'");
-                        condition.put("prd_mark", "'" + erpLk.getPrdMark() + "'");
-                        condition.put("qty", "'" + erpLk.getQty() + "'");
-                        condition.put("wh", "'" + erpLk.getWh() + "'");
-                        condition.put("status", "'" + erpLk.getStatus() + "'");
-                        condition.put("temp1", "'" + erpLk.getTemp1() + "'");
-                        condition.put("temp2", "'" + erpLk.getTemp2() + "'");
-                        condition.put("temp3", "'" + erpLk.getTemp3() + "'");
-                        erpSqlServer.insert(ErpLkBak.class, condition);
-
-                        callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮璁板綍澶囦唤鎴愬姛锛侊紒锛佹�婚噺涓猴細" + erpLk.getQty(), true);
+                        List<ErpLkBak> erpLkBaks = erpSqlServer.select(sqlSelectErpLkBak + " and prd_no='" + erpLk.getPrdNo() + "' and prd_mark='" + erpLk.getPrdMark() + "'", ErpLkBak.class);
+                        if (erpLkBaks.size() == 1) {
+                            erpSqlServer.update(sqlUpDateErpLkBak + "'" + erpLk.getQty() + "' where 1=1  " +
+                                    "and prd_no='" + erpLk.getPrdNo() + "'" +
+                                    "and prd_mark='" + erpLk.getPrdMark() + "'"
+                            );
+                        } else if (erpLkBaks.size() == 0) {
+                            HashMap<String, Object> condition = new HashMap<>();
+                            condition.put("prd_no", "'" + erpLk.getPrdNo() + "'");
+                            condition.put("prd_mark", "'" + erpLk.getPrdMark() + "'");
+                            condition.put("qty", "'" + erpLk.getQty() + "'");
+                            condition.put("wh", "'" + erpLk.getWh() + "'");
+                            condition.put("status", "'" + erpLk.getStatus() + "'");
+                            condition.put("temp1", "'" + erpLk.getTemp1() + "'");
+                            condition.put("temp2", "'" + erpLk.getTemp2() + "'");
+                            condition.put("temp3", "'" + erpLk.getTemp3() + "'");
+                            erpSqlServer.insert(ErpLkBak.class, condition);
+                        } else {
+                            callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮璁板綍澶囦唤瀛樺湪寮傚父锛侊紒锛�", false);
+                        }
+//                        callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮璁板綍澶囦唤鎴愬姛锛侊紒锛佹�婚噺涓猴細" + erpLk.getQty(), true);
 
                         HashMap<String, String> condition2 = new HashMap<>();
                         condition2.put("prd_no", "'" + erpLk.getPrdNo() + "'");
-                        condition2.put("prd_mark", "'" + erpLk.getPrdNo() + "'");
+                        condition2.put("prd_mark", "'" + erpLk.getPrdMark() + "'");
                         erpSqlServer.delete(ErpLk.class, condition2);
+//                        callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮璁板綍澶囦唤鍚庡垹闄ゆ垚鍔燂紒锛侊紒鎬婚噺涓猴細" + erpLk.getQty(), true);
 
-                        callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮璁板綍澶囦唤鍚庡垹闄ゆ垚鍔燂紒锛侊紒鎬婚噺涓猴細" + erpLk.getQty(), true);
-
-                    }else {
+                    } else {
                         callApiLogSave(erpLk, "bas_erp_lk", "搴撳瓨瀵规瘮瀛樺湪寮傚父鏁版嵁鏈鐞嗭紒锛侊紒", false);
                     }
                 }
@@ -108,7 +118,7 @@
 
     public void callApiLogSave(ErpLk erpLk, String tableName, String response, Boolean bool) {
         apiLogService.save("ERP涓巐k搴撳瓨鏁版嵁姣斿", tableName, "null", ip,
-                "鍝佸彿锛�" + erpLk.getPrdNo() + "銆佽揣鍝佺壒寰侊細" + erpLk.getPrdMark() + "銆佹暟閲忥細" + erpLk.getQty() + "銆佺姸鎬侊細" + erpLk.getStatus(),
+                "鍝佸彿锛�" + erpLk.getPrdNo() + "銆佽揣鍝佺壒寰侊細" + erpLk.getPrdMark() + "銆佹暟閲忥細" + erpLk.getQty() + "銆佺姸鎬侊細" + erpLk.getStatus$(),
                 response, bool);
     }
 }

--
Gitblit v1.9.1