EBOM正式转PBOM全新逻辑-优化
This commit is contained in:
parent
2067ddf802
commit
7106ca269f
|
|
@ -3,18 +3,15 @@ package com.nflg.product.bomnew.service.domain.EBom.topbomnew;
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
|
||||||
import com.alibaba.excel.enums.BooleanEnum;
|
import com.alibaba.excel.enums.BooleanEnum;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||||
import com.nflg.product.base.core.conmon.util.SessionUtil;
|
import com.nflg.product.base.core.conmon.util.SessionUtil;
|
||||||
import com.nflg.product.bomnew.constant.ConvertToPBomModelEnum;
|
import com.nflg.product.bomnew.constant.ConvertToPBomModelEnum;
|
||||||
import com.nflg.product.bomnew.constant.EBomConstant;
|
import com.nflg.product.bomnew.constant.EBomConstant;
|
||||||
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
||||||
import com.nflg.product.bomnew.mapper.master.BomNewPbomParentMapper;
|
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomParentEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewPbomParentEntity;
|
||||||
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
||||||
import com.nflg.product.bomnew.service.domain.EBom.EBomToPbomBase;
|
|
||||||
import com.nflg.product.bomnew.util.ListCommonUtil;
|
import com.nflg.product.bomnew.util.ListCommonUtil;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
|
@ -116,9 +113,14 @@ public class EBomToPBomForFormal31New extends FormalEBomToPbomBase {
|
||||||
List<BomNewEbomParentVO> child = facBomDataMp.get(facCode).stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList());
|
List<BomNewEbomParentVO> child = facBomDataMp.get(facCode).stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList());
|
||||||
List<BomNewEbomParentVO> mergeChild = mergeChild(child);
|
List<BomNewEbomParentVO> mergeChild = mergeChild(child);
|
||||||
//对比PBOM 版本是否一致(跟节点除外)
|
//对比PBOM 版本是否一致(跟节点除外)
|
||||||
if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && compareContentIsSame(vo, mergeChild, facCode)){
|
if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && !VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) || VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){
|
||||||
|
if(compareContentIsSame(vo,mergeChild,facCode)){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList);
|
BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList);
|
||||||
if(Objects.isNull(parentEnt)){
|
if(Objects.isNull(parentEnt)){
|
||||||
continue;
|
continue;
|
||||||
|
|
|
||||||
|
|
@ -72,9 +72,16 @@ public class EBomToPBomForFormalNew extends FormalEBomToPbomBase {
|
||||||
//子级
|
//子级
|
||||||
List<BomNewEbomParentVO> child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList());
|
List<BomNewEbomParentVO> child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId()) && !childDelMaterialNos.contains(u.getMaterialNo())).distinct().collect(Collectors.toList());
|
||||||
List<BomNewEbomParentVO> mergeChild = mergeChild(child);
|
List<BomNewEbomParentVO> mergeChild = mergeChild(child);
|
||||||
if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && compareContentIsSame(vo, mergeChild, facCode)){
|
|
||||||
|
//对比PBOM 版本是否一致(跟节点除外)
|
||||||
|
if(!parent.getMaterialNo().equals(vo.getMaterialNo()) && !VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) && !VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.equalsValue(vo.getVirtualPartType()) || VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.equalsValue(vo.getVirtualPartType())){
|
||||||
|
if(compareContentIsSame(vo,mergeChild,facCode)){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList);
|
BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode,parentList);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue