From 7eb9b6f8c60a244e1a96597319c7b54963ba6612 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期二, 07 一月 2025 09:03:09 +0800
Subject: [PATCH] 优化MES库存同步逻辑及AGV告警字段

---
 src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java |   25 ++++++++++++++++++++++---
 1 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java b/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
index e9b0f01..c46da1d 100644
--- a/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/ReportDataHandler.java
@@ -27,6 +27,7 @@
 
 import java.util.*;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 /**
  * Created by vincent on 2020/7/7
@@ -114,7 +115,7 @@
                 throw new CoolException("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭�:" + jsonObject);
             }
             success = true;
-            return null;
+            return response;
 
         } catch (Exception e) {
             log.error("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭細{}", e.getMessage());
@@ -128,7 +129,22 @@
 
     @Transactional
     public ReturnT<String> stock(Map<String, Object> mesTokenInfo) {
-        mesLocDetlService.delete(new EntityWrapper<MesLocDetl>().eq("1", 1));
+        List<MesLocDetl> all = mesLocDetlService.selectList(new EntityWrapper<>());
+        if (all != null) {
+            List<Long> collect = all.stream().map(MesLocDetl::getId).collect(Collectors.toList());
+            boolean del = true;
+            int d = 1;
+            while (del && collect.size() > 0) {
+                if (collect.size() > d * 1000) {
+                    mesLocDetlService.deleteBatchIds(collect.subList((d - 1) * 1000, d * 1000));
+                } else {
+                    mesLocDetlService.deleteBatchIds(collect.subList((d - 1) * 1000, collect.size()));
+                    del = false;
+                }
+                d++;
+            }
+        }
+
         boolean flag = true;
         Map<String, Object> req = new HashMap<>();
         int i = 1;
@@ -155,16 +171,19 @@
                         mesLocDetl.setBatch(mesStock.getBatchNo());
                         mesLocDetl.setAnfme(mesStock.getOpAmount().getAmount().getAmount());
                         mesLocDetls.add(mesLocDetl);
+                        mesLocDetlService.insert(mesLocDetl);
                     }
                 } else {
                     flag = false;
                 }
             }
             if (!mesLocDetls.isEmpty()) {
-                mesLocDetlService.insertBatch(mesLocDetls);
+                //mesLocDetlService.insertBatch(mesLocDetls);
             }
             i++;
         }
         return SUCCESS;
     }
+
+
 }

--
Gitblit v1.9.1