From e5eb8fcccaf673805f1d0f38937a07cc58767d27 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期四, 08 五月 2025 16:50:00 +0800
Subject: [PATCH] BOM Line的需求数量被库存数量满足时,终止【3.2展开BOM Line流程】
---
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomHeaderServiceImpl.java | 47 +++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 43 insertions(+), 4 deletions(-)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomHeaderServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomHeaderServiceImpl.java
index 7ec3fdd..f1edfa2 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomHeaderServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsBomHeaderServiceImpl.java
@@ -1,12 +1,16 @@
package com.aps.core.service.impl;
-import java.util.List;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
import com.aps.common.core.utils.DateUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import com.aps.core.mapper.ApsBomHeaderMapper;
import com.aps.core.domain.ApsBomHeader;
+import com.aps.core.mapper.ApsBomHeaderMapper;
import com.aps.core.service.IApsBomHeaderService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
/**
* BOM Header 鏁版嵁绠$悊Service涓氬姟灞傚鐞�
@@ -19,6 +23,9 @@
{
@Autowired
private ApsBomHeaderMapper apsBomHeaderMapper;
+
+ @Autowired
+ public RedisTemplate redisTemplate;
/**
* 鏌ヨBOM Header 鏁版嵁绠$悊
@@ -93,4 +100,36 @@
{
return apsBomHeaderMapper.deleteApsBomHeaderById(id);
}
+
+ /**
+ * 璁剧疆BOM鏁版嵁鍒癛edis
+ * @return
+ */
+ @Override
+ public boolean setBomDataToRedis(String orgCode) {
+ try {
+ List<JSONObject> bomRedisData = apsBomHeaderMapper.selectBomRedisData(orgCode);
+ String nowMainItemCode = "";
+ JSONArray bomLine = new JSONArray();
+ for (int i=0,size=bomRedisData.size();i<size;i++) {
+ JSONObject jsonObject = bomRedisData.get(i);
+ if("".equals(nowMainItemCode)){
+ nowMainItemCode = jsonObject.getString("mainitemcode");
+ }
+ if(!nowMainItemCode.equals(jsonObject.getString("mainitemcode"))){
+ redisTemplate.opsForValue().set("BOM:BOM_"+orgCode+"_"+nowMainItemCode, bomLine);
+ bomLine = new JSONArray();
+ }
+ bomLine.add(jsonObject);
+ nowMainItemCode = jsonObject.getString("mainitemcode");
+ if(i==size-1){
+ redisTemplate.opsForValue().set("BOM:BOM_"+orgCode+"_"+nowMainItemCode, bomLine);
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ return false;
+ }
+ return true;
+ }
}
--
Gitblit v1.9.3