From a9725909b6b65eb31d26882794612e3da00b4ed7 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期一, 12 五月 2025 15:27:40 +0800
Subject: [PATCH] 钣金计划:从Redis中读取库存信息

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java |   36 +++++++++++++++++++++++++++++++-----
 1 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java
index 03f6973..36c0220 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java
@@ -1,16 +1,20 @@
 package com.aps.core.service.impl;
 
-import java.util.*;
-
+import com.alibaba.fastjson2.JSONArray;
 import com.aps.common.core.utils.DateUtils;
+import com.aps.core.domain.ApsBom;
 import com.aps.core.domain.ApsBomHeader;
 import com.aps.core.mapper.ApsBomHeaderMapper;
+import com.aps.core.mapper.ApsBomMapper;
+import com.aps.core.service.IApsBomService;
 import jakarta.annotation.Resource;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
-import com.aps.core.mapper.ApsBomMapper;
-import com.aps.core.domain.ApsBom;
-import com.aps.core.service.IApsBomService;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
 
 /**
  * BOM鏁版嵁绠$悊Service涓氬姟灞傚鐞�
@@ -26,6 +30,10 @@
 
     @Resource
     private ApsBomHeaderMapper bomHeaderMapper;
+
+    @Autowired
+    public RedisTemplate redisTemplate;
+
     /**
      * 鏌ヨBOM鏁版嵁绠$悊
      * 
@@ -117,6 +125,24 @@
             build.setOrgCode(apsBomHeader.getOrgCode());
             bomLineList = apsBomMapper.selectApsBomList(build);
         }
+
+        return bomLineList;
+    }
+
+    @Override
+    public List<ApsBom> selectRdsBomLineList(String plant, String itemNumber)
+    {
+        List<ApsBom> bomLineList =new ArrayList<>();
+        JSONArray jsonArray = (JSONArray)redisTemplate.opsForValue().get("BOM:BOM_"+plant+"_"+itemNumber);
+        if (jsonArray != null && !jsonArray.isEmpty()) {
+            for (int i = 0; i < jsonArray.size(); i++){
+                ApsBom apsBom = jsonArray.getJSONObject(i).to(ApsBom.class);
+                bomLineList.add(apsBom);
+            }
+        }else {
+            bomLineList = selectApsBomLineList(plant, itemNumber);
+        }
+
         return bomLineList;
     }
 }

--
Gitblit v1.9.3