From 2a64b537e8e3bce9ce030585a3da17d48379c0ad Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期一, 26 五月 2025 15:04:45 +0800
Subject: [PATCH] 修改json类型转换错误

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessStatServiceImpl.java |   26 ++++++++------------------
 1 files changed, 8 insertions(+), 18 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessStatServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessStatServiceImpl.java
index 410a1d6..de1582f 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessStatServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlate/ApsPlateProcessStatServiceImpl.java
@@ -107,18 +107,18 @@
     /**
      * 淇濆瓨閽i噾缁熻鏁版嵁
      */
-    @Transactional
     @Override
-    public void savePlateProcessStat() {
+    public List<ApsPlateProcessStat> computePlateProcessStat() {
         String batchNum = IdUtils.fastSimpleUUID();
         List<ApsPlateProcessStat> tempList = apsPlateProcessStatMapper.queryTempStat();
-        ApsPlateProcessStat apsPlateProcessStat = tempList.stream().filter(x -> x.getWorkOrderNo().equals("MO-250409003498")).findFirst().get();
         Map<String, List<ApsPlateProcessStat>> groupByOrderNo = tempList.stream().collect(groupingBy(ApsPlateProcessStat::getWorkOrderNo));
-        Boolean hasBefore = false;
+
         LocalDateTime now = LocalDateTime.now();
         List<ApsPlateProcessStat> totalList=new ArrayList<>();
-        for (Map.Entry<String, List<ApsPlateProcessStat>> entry : groupByOrderNo.entrySet()) {
-            List<ApsPlateProcessStat> statPerOrder = entry.getValue();
+        ArrayList<Map.Entry<String, List<ApsPlateProcessStat>>> orderProcessRoutes = new ArrayList<>(groupByOrderNo.entrySet());
+        orderProcessRoutes.stream().parallel().forEach(x->{
+            boolean hasBefore = false;
+            List<ApsPlateProcessStat>  statPerOrder = x.getValue();
             /*num 涓烘牴鎹畬宸ユ椂闂存帓搴忓嚭鐨勫簭鍙凤紝鎸夋鎺掑簭锛屽彲淇濊瘉鏄寜瀹屽伐鏃堕棿鍊掑彊鎺掑垪*/
             statPerOrder.sort((a, b)->a.getNum().compareTo(b.getNum()));
             ApsPlateProcessStat last=null;
@@ -182,20 +182,10 @@
                 }
                 last = stat;
                 totalList.add(stat);
-                //apsPlateProcessStatMapper.insertApsPlateProcessStat(stat);
             }
             hasBefore=false;
-        }
-        apsPlateProcessStatMapper.removeOtherStat(batchNum);
-        if(!totalList.isEmpty()){
-            int batchSize = 1000;
-            totalList.forEach(x->x.setId(String.valueOf(IdUtil.getSnowflakeNextId())));
-            for (int i = 0; i < totalList.size(); i += batchSize) {
-                int end = Math.min(i + batchSize, totalList.size());
-                List<ApsPlateProcessStat> batch = totalList.subList(i, end);
-                apsPlateProcessStatMapper.batchInsertPlateStat(batch);
-            }
-        }
+        });
+        return totalList;
     }
 
 

--
Gitblit v1.9.3