From 728621ba2f24bb9f41c7f2cd1c6cdc990247928c Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期四, 15 五月 2025 16:58:36 +0800
Subject: [PATCH] 优化同步WorkOrder:先全部删除,再进行同步
---
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomServiceImpl.java | 61 ++++++++++++++++++++++++++----
1 files changed, 52 insertions(+), 9 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..0b9717b 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,43 @@
@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);
+ }
+ }
+// else {
+// bomLineList = selectApsBomLineList(plant, itemNumber);
+// }
+ return bomLineList;
+ }
}
--
Gitblit v1.9.3