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/ApsBomServiceImpl.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 49 insertions(+), 10 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 6036b4f..bd7b3c8 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.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
+import com.alibaba.fastjson2.JSONArray;
 import com.aps.common.core.utils.DateUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.aps.core.mapper.ApsBomMapper;
 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 java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
 
 /**
  * BOM鏁版嵁绠$悊Service涓氬姟灞傚鐞�
@@ -23,6 +27,12 @@
 {
     @Autowired
     private ApsBomMapper apsBomMapper;
+
+    @Resource
+    private ApsBomHeaderMapper bomHeaderMapper;
+
+    @Autowired
+    public RedisTemplate redisTemplate;
 
     /**
      * 鏌ヨBOM鏁版嵁绠$悊
@@ -97,10 +107,39 @@
     @Override
     public List<ApsBom> selectApsBomList(ApsBom apsBom)
     {
-
         return apsBomMapper.selectApsBomList(apsBom);
+    }
+    /**
+     * 閫氳繃鏂欏彿銆佸伐鍘傛煡璇OMLine鏁版嵁鍒楄〃
+     * */
+    @Override
+    public List<ApsBom> selectApsBomLineList(String plant, String itemNumber)
+    {
+        List<ApsBom> bomLineList =new ArrayList<>();
+        ApsBomHeader headerParam = ApsBomHeader.builder().itemCode(itemNumber).orgCode(plant).build();
+        Optional<ApsBomHeader> first = bomHeaderMapper.selectApsBomHeaderList(headerParam).stream().findFirst();
+        if (first.isPresent()){
+            ApsBomHeader apsBomHeader = first.get();
+            ApsBom build = new  ApsBom();
+            build.setBomHeaderId(apsBomHeader.getBomHeaderId());
+            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);
+            }
+        }
+        return bomLineList;
+    }
 }

--
Gitblit v1.9.3