仙桃不导入1010工厂
This commit is contained in:
parent
3f6cde7e7a
commit
48d3a83e89
|
|
@ -7,6 +7,7 @@ import com.alibaba.excel.enums.BooleanEnum;
|
|||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||
import com.nflg.product.base.core.conmon.util.SessionUtil;
|
||||
import com.nflg.product.bomnew.constant.ConvertToPBomModelEnum;
|
||||
import com.nflg.product.bomnew.constant.EBomConstant;
|
||||
import com.nflg.product.bomnew.constant.PBomStatusEnum;
|
||||
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
||||
|
|
@ -16,9 +17,7 @@ import com.nflg.product.bomnew.util.ListCommonUtil;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
|
|
@ -27,6 +26,7 @@ import java.util.stream.Collectors;
|
|||
@NoArgsConstructor
|
||||
public class EBomToPBom extends EBomToPbomBase {
|
||||
|
||||
private Map<String, List<BomNewEbomParentVO>> facBomDataMp = new HashMap<>();
|
||||
|
||||
|
||||
|
||||
|
|
@ -39,6 +39,39 @@ public class EBomToPBom extends EBomToPbomBase {
|
|||
initEBomVersion();
|
||||
}
|
||||
|
||||
private void splitData() {
|
||||
this.facCodes = new ArrayList<>();
|
||||
//1020数据
|
||||
List<BomNewEbomParentVO> data1020 = new ArrayList<>();
|
||||
List<BomNewEbomParentVO> deliveryPackage1020 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && u.getMaterialName().contains("仙桃")).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(deliveryPackage1020)) {
|
||||
facCodes.add(EBomConstant.XIAN_TAO_FACTORY_CODE_1020);
|
||||
data1020.add(parent);
|
||||
for (BomNewEbomParentVO data : deliveryPackage1020) {
|
||||
List<BomNewEbomParentVO> subVos = getResultAllSubIncludeSelf(data);
|
||||
data1020.addAll(subVos);
|
||||
}
|
||||
facBomDataMp.put(EBomConstant.XIAN_TAO_FACTORY_CODE_1020, data1020);
|
||||
}
|
||||
|
||||
//1010 数据
|
||||
List<BomNewEbomParentVO> data1010 = new ArrayList<>();
|
||||
List<BomNewEbomParentVO> deliveryPackage1010 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId())).collect(Collectors.toList()); //&& !u.getMaterialName().contains("仙桃")
|
||||
if (CollUtil.isNotEmpty(deliveryPackage1010)) {
|
||||
facCodes.add(EBomConstant.MAIN_FACTORY_CODE_1010);
|
||||
data1010.add(parent);
|
||||
for (BomNewEbomParentVO data : deliveryPackage1010) {
|
||||
List<BomNewEbomParentVO> subVos = new ArrayList<>();
|
||||
if (!data.getMaterialName().contains("仙桃") ) { //只获取下降虚拟包(排除仙桃油漆包)
|
||||
subVos=getResultAllSubIncludeSelf(data);
|
||||
}
|
||||
data1010.addAll(subVos);
|
||||
}
|
||||
facBomDataMp.put(EBomConstant.MAIN_FACTORY_CODE_1010, data1010);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 31項体层
|
||||
|
|
@ -53,11 +86,20 @@ public class EBomToPBom extends EBomToPbomBase {
|
|||
changeImpact();
|
||||
//bom 提层
|
||||
liftingLayer();
|
||||
List<BomNewEbomParentVO> parentList = ListCommonUtil.toDistinct(result.stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
|
||||
splitData();
|
||||
|
||||
List<String> hasConvert = new ArrayList<>();
|
||||
|
||||
for (String facCode : facCodes) {
|
||||
//buildPBomParent(parent, facCode);
|
||||
//仙桃的不发1010工厂
|
||||
if(EBomConstant.MAIN_FACTORY_CODE_1010.equals(facCode) && parent.getMaterialName().contains("仙桃") ){
|
||||
continue;
|
||||
}
|
||||
List<BomNewEbomParentVO> parentList = ListCommonUtil.toDistinct(result.stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
if(EBomConstant.MAIN_FACTORY_CODE_1010.equals(facCode)){
|
||||
parentList = ListCommonUtil.toDistinct(facBomDataMp.get(facCode).stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
}
|
||||
for (BomNewEbomParentVO vo : parentList) {
|
||||
String hasConvertKey = StrUtil.join("-", facCode, vo.getBomRowId());
|
||||
if (hasConvert.contains(hasConvertKey)) {
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import com.alibaba.excel.enums.BooleanEnum;
|
|||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||
import com.nflg.product.base.core.conmon.util.SessionUtil;
|
||||
import com.nflg.product.bomnew.constant.ConvertToPBomModelEnum;
|
||||
import com.nflg.product.bomnew.constant.EBomConstant;
|
||||
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
||||
import com.nflg.product.bomnew.mapper.master.BomNewPbomParentMapper;
|
||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
||||
|
|
@ -18,9 +19,7 @@ import com.nflg.product.bomnew.util.ListCommonUtil;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
|
|
@ -30,6 +29,7 @@ import java.util.stream.Collectors;
|
|||
public class EBomToPBomForFormalNew extends FormalEBomToPbomBase {
|
||||
|
||||
|
||||
private Map<String, List<BomNewEbomParentVO>> facBomDataMp = new HashMap<>();
|
||||
|
||||
|
||||
public EBomToPBomForFormalNew(BomNewEbomParentVO inParent, List<BomNewEbomParentVO> inAllBomDetail, List<String> inFacCodes, Long parentRowId, ConvertToPBomModelEnum convertModelEnum) {
|
||||
|
|
@ -42,6 +42,39 @@ public class EBomToPBomForFormalNew extends FormalEBomToPbomBase {
|
|||
|
||||
}
|
||||
|
||||
private void splitData() {
|
||||
this.facCodes = new ArrayList<>();
|
||||
//1020数据
|
||||
List<BomNewEbomParentVO> data1020 = new ArrayList<>();
|
||||
List<BomNewEbomParentVO> deliveryPackage1020 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && u.getMaterialName().contains("仙桃")).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(deliveryPackage1020)) {
|
||||
facCodes.add(EBomConstant.XIAN_TAO_FACTORY_CODE_1020);
|
||||
data1020.add(parent);
|
||||
for (BomNewEbomParentVO data : deliveryPackage1020) {
|
||||
List<BomNewEbomParentVO> subVos = getResultAllSubIncludeSelf(data);
|
||||
data1020.addAll(subVos);
|
||||
}
|
||||
facBomDataMp.put(EBomConstant.XIAN_TAO_FACTORY_CODE_1020, data1020);
|
||||
}
|
||||
|
||||
//1010 数据
|
||||
List<BomNewEbomParentVO> data1010 = new ArrayList<>();
|
||||
List<BomNewEbomParentVO> deliveryPackage1010 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId())).collect(Collectors.toList()); //&& !u.getMaterialName().contains("仙桃")
|
||||
if (CollUtil.isNotEmpty(deliveryPackage1010)) {
|
||||
facCodes.add(EBomConstant.MAIN_FACTORY_CODE_1010);
|
||||
data1010.add(parent);
|
||||
for (BomNewEbomParentVO data : deliveryPackage1010) {
|
||||
List<BomNewEbomParentVO> subVos = new ArrayList<>();
|
||||
if (!data.getMaterialName().contains("仙桃") ) { //只获取下降虚拟包(排除仙桃油漆包)
|
||||
subVos=getResultAllSubIncludeSelf(data);
|
||||
}
|
||||
data1010.addAll(subVos);
|
||||
}
|
||||
facBomDataMp.put(EBomConstant.MAIN_FACTORY_CODE_1010, data1010);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 31項体层
|
||||
|
|
@ -53,10 +86,21 @@ public class EBomToPBomForFormalNew extends FormalEBomToPbomBase {
|
|||
check();
|
||||
//bom 提层
|
||||
liftingLayer();
|
||||
List<BomNewEbomParentVO> parentList = ListCommonUtil.toDistinct(result.stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
|
||||
splitData();
|
||||
|
||||
List<String> hasConvert = new ArrayList<>();
|
||||
|
||||
for (String facCode : facCodes) {
|
||||
//仙桃的不发1010工厂
|
||||
if(EBomConstant.MAIN_FACTORY_CODE_1010.equals(facCode) && parent.getMaterialName().contains("仙桃") ){
|
||||
continue;
|
||||
}
|
||||
List<BomNewEbomParentVO> parentList = ListCommonUtil.toDistinct(result.stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
if(EBomConstant.MAIN_FACTORY_CODE_1010.equals(facCode)){
|
||||
parentList = ListCommonUtil.toDistinct(facBomDataMp.get(facCode).stream().filter(u -> u.getBomRowId() > 0).collect(Collectors.toList()), BomNewEbomParentVO::getBomRowId);
|
||||
}
|
||||
|
||||
//buildPBomParent(parent, facCode);
|
||||
for (BomNewEbomParentVO vo : parentList) {
|
||||
String hasConvertKey = StrUtil.join("-", facCode, vo.getBomRowId());
|
||||
|
|
|
|||
Loading…
Reference in New Issue