From 918eb3afde4886ab9d87e9f2fafbde1bf9e83587 Mon Sep 17 00:00:00 2001
From: huangjiayang <5265313@qq.com>
Date: 星期四, 15 五月 2025 16:30:26 +0800
Subject: [PATCH] 【ADD】新增将钣金子单数据存到redis中定时任务

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java |   35 ++++++++++++++++++++++++++++++++---
 1 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
index 15d21c4..3792967 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlatePlanServiceImpl.java
@@ -1,6 +1,7 @@
 package com.aps.core.service.impl;
 
 import cn.hutool.core.util.IdUtil;
+import com.alibaba.fastjson2.JSONObject;
 import com.aps.common.core.utils.DateUtils;
 import com.aps.common.core.utils.uuid.IdUtils;
 import com.aps.common.security.utils.DictUtils;
@@ -14,12 +15,12 @@
 import org.apache.logging.log4j.util.Strings;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 閽i噾璁″垝绠$悊Service涓氬姟灞傚鐞�
@@ -35,8 +36,12 @@
 
     @Autowired
     private ApsPartPlanTempMapper apsPartPlanTempMapper;
+
     @Autowired
     private ApsPlatePlanTempMapper apsPlatePlanTempMapper;
+
+    @Autowired
+    public RedisTemplate redisTemplate;
 
     /**
      * 鏌ヨ閽i噾璁″垝绠$悊
@@ -211,4 +216,28 @@
            }
        }
     }
+
+    @Override
+    public boolean setSubPlansToRedis() {
+        try {
+            Set<String> keys = redisTemplate.keys("PLATE_SUB_PLAN:*");
+            if (keys != null && !keys.isEmpty()) {
+                redisTemplate.delete(keys);
+            }
+            List<JSONObject> subPlans = apsPlatePlanMapper.selectApsSubPlatePlan();
+//            ApsPlatePlan a = JSONObject.parseObject(String.valueOf(subPlans.get(0)), ApsPlatePlan.class);
+            Map<String, List<JSONObject>> groupByItemNumber = subPlans.stream().collect(Collectors.groupingBy(obj -> obj.getString("itemNumber")));
+            Map<String, Object> bulkData = new HashMap<>();
+            for (Map.Entry<String, List<JSONObject>> entry : groupByItemNumber.entrySet()) {
+                String key = entry.getKey();
+                List<JSONObject> value = entry.getValue();
+                bulkData.put("PLATE_SUB_PLAN:"+key, value);
+            }
+            redisTemplate.opsForValue().multiSet(bulkData);
+            return true;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return false;
+        }
+    }
 }

--
Gitblit v1.9.3