|
|
@@ -230,7 +230,18 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
List<String> jds=UtilMap.getList(data,"checkboxField_me9n37rs");
|
|
|
Map<String,List<Map>> gysOrderData=new HashMap<>(); // 采购需求数据 按照供应商拆分BOM
|
|
|
|
|
|
+ Map<String,String> seriesDevNumMap = new HashMap<>(); //系列与研发部订单需求数量映射数据 add by Jason 20260320
|
|
|
+ String nameSeries; //系列 add by Jason 20260320
|
|
|
+ String devNum; //研发部订单需求数量 add by Jason 20260320
|
|
|
for(Map map:table){
|
|
|
+ //获取系列与研发部订单需求数量映射 add by Jason 20260320 start
|
|
|
+ nameSeries = UtilMap.getString(map,"selectField_me2f7tw4"); //系列
|
|
|
+ devNum = UtilMap.getString(map,"numberField_mmke3fdc"); //研发部订单需求数量
|
|
|
+ if(seriesDevNumMap.get(nameSeries) == null){
|
|
|
+ seriesDevNumMap.put(nameSeries,devNum);
|
|
|
+ }
|
|
|
+ //获取系列与研发部订单需求数量映射 add by Jason 20260320 end
|
|
|
+
|
|
|
Map taskMap=UtilMap.map("projectId, tasklistId, scenariofieldconfigId, stageId",tbProjectId,tasklistId,scenariofieldconfigId,stageId);
|
|
|
taskMap.put("content",getValue(map,"selectField_me2f7tw4","-")+getValue(map,"textField_me2f7tvo","")); //系列 配件
|
|
|
String gysName=UtilMap.getString(map,"textField_me2f7tvz");
|
|
|
@@ -269,6 +280,8 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
List<String> jdList=Arrays.asList("白样", "产前样","大货样", "大货");
|
|
|
Object demoValue = orderData.get("textField_me2f7tvd");
|
|
|
// 项目阶段处理
|
|
|
+ String numOfSets; //工厂采购数量 add by Jason 20260320
|
|
|
+ int allSupplyNum; //总采购数量 add by Jason 20260320
|
|
|
for(String jd:jds){
|
|
|
System.out.println("项目阶段:"+jd);
|
|
|
if(jdList.contains(jd)){
|
|
|
@@ -292,7 +305,16 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
procuremenType ="配件采购";
|
|
|
taskStatus ="待排期";
|
|
|
taskType ="大货";
|
|
|
+ //计算总采购数量 add by Jason 20260320 start
|
|
|
+ numOfSets = map.get("numberField_mifp03el")==null?null:map.get("numberField_mifp03el").toString();
|
|
|
+ devNum = map.get("numberField_mmmwu4cg")==null?null:map.get("numberField_mmmwu4cg").toString();
|
|
|
+ allSupplyNum = 0;
|
|
|
+ if(StringUtils.isNotEmpty(devNum) && StringUtils.isNotEmpty(numOfSets)){
|
|
|
+ allSupplyNum = Integer.parseInt(devNum) + Integer.parseInt(numOfSets); //计算总采购数量
|
|
|
+ }
|
|
|
+ //计算总采购数量 add by Jason 20260320 end
|
|
|
Map<String, Object> copiedMap = new HashMap<>(map); // 关键:创建副本
|
|
|
+ copiedMap.put("numberField_mmmwu4ci",allSupplyNum); //总采购数量 add by Jason 20260320
|
|
|
copiedMap.put("dateField_mizvc5oi", planTimestamp);
|
|
|
modifiedList.add(copiedMap);
|
|
|
} else{
|
|
|
@@ -307,6 +329,8 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
copiedMap.put("dateField_mizvc5oi", planTimestamp);
|
|
|
copiedMap.put("numberField_mkosp94h", demoValue);
|
|
|
copiedMap.put("numberField_mifp03el", demoValue);
|
|
|
+ copiedMap.put("numberField_mmmwu4cg",0); //研发部订单需求数量 add by Jason 20260320
|
|
|
+ copiedMap.put("numberField_mmmwu4ci",demoValue); //总采购数量 add by Jason 20260320
|
|
|
modifiedList.add(copiedMap);
|
|
|
}
|
|
|
}
|
|
|
@@ -334,17 +358,30 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
}
|
|
|
// 生成包装任务:打样不需要生成包装
|
|
|
if("大货".equals(orderType)){
|
|
|
- savePackTask(tbProjectId, orderLangConf, data, pName, pId, pMainId, projectOrder, mchDDIdMap);
|
|
|
+ //seriesDevNumMap 系列与研发部订单需求数量映射数据 add by Jason 20260320
|
|
|
+ savePackTask(tbProjectId, orderLangConf, data, pName, pId, pMainId, projectOrder, mchDDIdMap, seriesDevNumMap);
|
|
|
}
|
|
|
return Collections.emptyMap();
|
|
|
}
|
|
|
|
|
|
// 生成包装任务
|
|
|
- private List<Map> savePackTask(String tbProjectId, List <Map> orderLangConf,Map data,String pName,String pId,String pMainId,List projectOrder,Map mchDDIdMap) {
|
|
|
+ //seriesDevNumMap 系列与研发部订单需求数量映射数据 add by Jason 20260320
|
|
|
+ private List<Map> savePackTask(String tbProjectId, List <Map> orderLangConf,Map data,String pName,String pId,String pMainId,List projectOrder,Map mchDDIdMap,Map<String,String> seriesDevNumMap) {
|
|
|
Map<String, List<Map>> packOrderData = new HashMap<>();
|
|
|
+ String nameSeries; //系列 add by Jason 20260320
|
|
|
+ String devNum; //研发部订单需求数量 add by Jason 20260320
|
|
|
+ int allSupplyNum; //总采购数量 add by Jason 20260320
|
|
|
for (Map orderMap : orderLangConf) {
|
|
|
String supplier = UtilMap.getString(orderMap, "textField_mkp7yv76");
|
|
|
String setsValue = UtilMap.getString(orderMap, "numberField_meqqj4wd");
|
|
|
+ //计算总采购数量 add by Jason 20260320 start
|
|
|
+ nameSeries = UtilMap.getString(orderMap, "textField_meqqj4wa"); //系列
|
|
|
+ devNum = seriesDevNumMap.get(nameSeries);
|
|
|
+ allSupplyNum = 0;
|
|
|
+ if(StringUtils.isNotEmpty(devNum) && StringUtils.isNotEmpty(setsValue)){
|
|
|
+ allSupplyNum = Integer.parseInt(devNum) + Integer.parseInt(setsValue); //计算总采购数量
|
|
|
+ }
|
|
|
+ //计算总采购数量 add by Jason 20260320 end
|
|
|
Map packTask = UtilMap.map(
|
|
|
"textField_mecmytpr, textField_mifp03eo, textField_mjr129o4, selectField_me2f7tw4, numberField_mkosp94h, numberField_mifp03el, " +
|
|
|
"numberField_mmmwu4cg, " + //研发部订单需求数量 add by Jason 20260312
|
|
|
@@ -355,8 +392,8 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
UtilMap.getString(orderMap, "textField_meqqj4wa"),
|
|
|
setsValue,
|
|
|
setsValue,
|
|
|
- 0, //研发部订单需求数量 add by Jason 20260312
|
|
|
- 0 //总采购数量 add by Jason 20260312
|
|
|
+ devNum, //研发部订单需求数量 add by Jason 20260320
|
|
|
+ allSupplyNum //总采购数量 add by Jason 20260320
|
|
|
|
|
|
);
|
|
|
packOrderData.computeIfAbsent(supplier, k -> new ArrayList<>()).add(packTask);
|
|
|
@@ -396,7 +433,7 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
if (PublicUtil.isNull(taskMap,"executorId")){
|
|
|
taskMap.remove("executorId");
|
|
|
}
|
|
|
- String rdNum = UtilMap.getString(cgDetail,"numberField_mmke3fdc"); //研发部订单需求数量 add by Jason 20260312
|
|
|
+ String rdNum; //研发部订单需求数量 add by Jason 20260312
|
|
|
for(Map map: orderConf){
|
|
|
Map tMap=new HashMap();
|
|
|
tMap.putAll(taskMap);
|
|
|
@@ -430,21 +467,14 @@ public class EastarTbServiceImpl implements EastarTbService {
|
|
|
log.info("最终任务名称:{},详细参数:{}",tMap.get("content"),tMap);
|
|
|
Map result=tbTask.createTask(tbConf.getOperatorId(), tMap);// 更新任务所属任务列表
|
|
|
Map recod=new HashMap(cgDetail);
|
|
|
- //计算总采购数量 add by Jason 20260312 start
|
|
|
- int allSupplyNum = 0;
|
|
|
- if(StringUtils.isNotEmpty(rdNum) && StringUtils.isNotEmpty(value)){
|
|
|
- allSupplyNum = Integer.parseInt(rdNum) + Integer.parseInt(value);
|
|
|
- }
|
|
|
- //计算总采购数量 add by Jason 20260312 end
|
|
|
+ rdNum = UtilMap.getString(cgDetail,"numberField_mmke3fdc"); //研发部订单需求数量 add by Jason 20260312
|
|
|
recod.putAll(
|
|
|
UtilMap.map(
|
|
|
"textField_mecmytpr, textField_mecmytps, textField_mecmytpt, numberField_mifp03el, " +
|
|
|
"numberField_mmmwu4cg, " + //研发部订单需求数量 add by Jason 20260312
|
|
|
- "numberField_mmmwu4ci, " + //总采购数量 add by Jason 20260312
|
|
|
"textField_mifp03eo, textField_miib17jx, textField_mizvc5oj, textField_mjr129o4, numberField_mkosp94h, numberField_me2f7tw0",
|
|
|
result.get("content"),result.get("taskId"),"未开始",value,
|
|
|
rdNum, //研发部订单需求数量 add by Jason 20260312
|
|
|
- allSupplyNum, //总采购数量 add by Jason 20260312
|
|
|
sku,pId,result.get("taskId"),lang,value,UtilMap.getString(map, "numberField_mkf4bc4j")));
|
|
|
recodTable.add(recod);
|
|
|
// for (String son:sonconf){
|