1、发货文案匹配问题
This commit is contained in:
parent
0f25a80253
commit
e90c7c2818
|
|
@ -9,18 +9,18 @@ import lombok.Getter;
|
||||||
public enum VirtualPackageTypeEnum implements ValueEnum<Integer>{
|
public enum VirtualPackageTypeEnum implements ValueEnum<Integer>{
|
||||||
//1-发货包 2-制作包 4-直发包 8-发货前装配包
|
//1-发货包 2-制作包 4-直发包 8-发货前装配包
|
||||||
|
|
||||||
UN_VIRTUAL_PACKAGE(0,"非虚拟包","" ,"", "",""),
|
UN_VIRTUAL_PACKAGE(0,"非虚拟包","" ,"", "",0),
|
||||||
DELIVERY_PACKAGE(1,"发货包","发货" ,"201101", "","(发货)"),
|
DELIVERY_PACKAGE(1,"发货包","发货" ,"201101", "",1),
|
||||||
MAKING_PACKAGE(2,"制作包","制作","201101","","(制作)"),
|
MAKING_PACKAGE(2,"制作包","制作","201101","",2),
|
||||||
DIRECT_DELIVERY_PACKAGE(4,"直发包","直发","201101","F","(直发)"),
|
DIRECT_DELIVERY_PACKAGE(4,"直发包","直发","201101","F",4),
|
||||||
PRE_ASSEMBLY_PACKAGE(8,"发货前装配包","发货前装配","200601","Z","(发货前装配)");
|
PRE_ASSEMBLY_PACKAGE(8,"发货前装配包","发货前装配","200601","Z",8);
|
||||||
|
|
||||||
private final Integer value;
|
private final Integer value;
|
||||||
private final String description;
|
private final String description;
|
||||||
private final String conMaterialName;
|
private final String conMaterialName;
|
||||||
private final String materialCategoryCode;
|
private final String materialCategoryCode;
|
||||||
private final String productTypeKey;
|
private final String productTypeKey;
|
||||||
private final String findConMaterialName;
|
private final Integer virtualPartType;
|
||||||
|
|
||||||
|
|
||||||
public static Integer getAll(){
|
public static Integer getAll(){
|
||||||
|
|
|
||||||
|
|
@ -859,15 +859,15 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
//检查该版本是否已转换过该工厂的Pbom
|
//检查该版本是否已转换过该工厂的Pbom
|
||||||
for (BomNewEbomParentEntity parent : parents){
|
// for (BomNewEbomParentEntity parent : parents){
|
||||||
List<BomNewPbomParentEntity> list = pBomParentService.lambdaQuery().eq(BomNewPbomParentEntity::getMaterialNo, parent.getMaterialNo()).eq(BomNewPbomParentEntity::getCurrentVersion, parent.getCurrentVersion())
|
// List<BomNewPbomParentEntity> list = pBomParentService.lambdaQuery().eq(BomNewPbomParentEntity::getMaterialNo, parent.getMaterialNo()).eq(BomNewPbomParentEntity::getCurrentVersion, parent.getCurrentVersion())
|
||||||
.select(BomNewPbomParentEntity::getFacCode).list();
|
// .select(BomNewPbomParentEntity::getFacCode).list();
|
||||||
if(CollUtil.isNotEmpty(list)){
|
// if(CollUtil.isNotEmpty(list)){
|
||||||
Set<String> dbExistsFac = list.stream().map(u -> u.getFacCode()).collect(Collectors.toSet());
|
// Set<String> dbExistsFac = list.stream().map(u -> u.getFacCode()).collect(Collectors.toSet());
|
||||||
Set<String> checkResultFac = Sets.intersection(dbExistsFac, new HashSet<>(paramDto.getFacCodes()));
|
// Set<String> checkResultFac = Sets.intersection(dbExistsFac, new HashSet<>(paramDto.getFacCodes()));
|
||||||
VUtils.isTure(CollUtil.isNotEmpty(checkResultFac)).throwMessage("物料:"+parent.getMaterialNo()+"已经转换过"+ StrUtil.join(",", checkResultFac)+"工厂");
|
// VUtils.isTure(CollUtil.isNotEmpty(checkResultFac)).throwMessage("物料:"+parent.getMaterialNo()+"已经转换过"+ StrUtil.join(",", checkResultFac)+"工厂");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
for (Long bomRowId : paramDto.getBomRowIds()) {
|
for (Long bomRowId : paramDto.getBomRowIds()) {
|
||||||
BomNewEbomParentVO parent = Convert.convert(BomNewEbomParentVO.class, this.getById(bomRowId));
|
BomNewEbomParentVO parent = Convert.convert(BomNewEbomParentVO.class, this.getById(bomRowId));
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ public class EBomToPBomFor31 extends EBomToPbomBase {
|
||||||
this.facCodes=new ArrayList<>();
|
this.facCodes=new ArrayList<>();
|
||||||
//1020数据
|
//1020数据
|
||||||
List<BomNewEbomParentVO> data1020=new ArrayList<>();
|
List<BomNewEbomParentVO> data1020=new ArrayList<>();
|
||||||
List<BomNewEbomParentVO> deliveryPackage1020 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && u.getMaterialName().contains("仙桃") && u.getMaterialName().contains("(发货)")).collect(Collectors.toList());
|
List<BomNewEbomParentVO> deliveryPackage1020 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && u.getMaterialName().contains("仙桃") ).collect(Collectors.toList());
|
||||||
if(CollUtil.isNotEmpty(deliveryPackage1020)){
|
if(CollUtil.isNotEmpty(deliveryPackage1020)){
|
||||||
facCodes.add(EBomConstant.XIAN_TAO_FACTORY_CODE_1020);
|
facCodes.add(EBomConstant.XIAN_TAO_FACTORY_CODE_1020);
|
||||||
data1020.add(parent);
|
data1020.add(parent);
|
||||||
|
|
@ -58,7 +58,7 @@ public class EBomToPBomFor31 extends EBomToPbomBase {
|
||||||
//1010 数据
|
//1010 数据
|
||||||
|
|
||||||
List<BomNewEbomParentVO> data1010=new ArrayList<>();
|
List<BomNewEbomParentVO> data1010=new ArrayList<>();
|
||||||
List<BomNewEbomParentVO> deliveryPackage1010 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && !u.getMaterialName().contains("仙桃") && u.getMaterialName().contains("(发货)")).collect(Collectors.toList());
|
List<BomNewEbomParentVO> deliveryPackage1010 = result.stream().filter(u -> u.getParentRowId().equals(parent.getRowId()) && !u.getMaterialName().contains("仙桃")).collect(Collectors.toList());
|
||||||
if(CollUtil.isNotEmpty(deliveryPackage1010)){
|
if(CollUtil.isNotEmpty(deliveryPackage1010)){
|
||||||
facCodes.add(EBomConstant.MAIN_FACTORY_CODE_1010);
|
facCodes.add(EBomConstant.MAIN_FACTORY_CODE_1010);
|
||||||
data1010.add(parent);
|
data1010.add(parent);
|
||||||
|
|
|
||||||
|
|
@ -349,7 +349,7 @@ public abstract class EBomToPbomBase {
|
||||||
|
|
||||||
|
|
||||||
private BomNewEbomParentVO getLastVirtualPackage(BomNewEbomParentVO vo, VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
private BomNewEbomParentVO getLastVirtualPackage(BomNewEbomParentVO vo, VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
||||||
List<BomNewEbomParentVO> zhiFaList = allBomDetail.stream().filter(u -> vo.getLevelNumber().compareTo(u.getLevelNumber()) > 0 && u.getMaterialName().contains(virtualPackageTypeEnum.getConMaterialName())).collect(Collectors.toList());
|
List<BomNewEbomParentVO> zhiFaList = allBomDetail.stream().filter(u -> vo.getLevelNumber().compareTo(u.getLevelNumber()) > 0 && virtualPackageTypeEnum.getVirtualPartType().equals(u.getVirtualPartType())).collect(Collectors.toList());
|
||||||
if (CollUtil.isNotEmpty(zhiFaList)) {
|
if (CollUtil.isNotEmpty(zhiFaList)) {
|
||||||
return Collections.max(zhiFaList, Comparator.comparing(BomNewEbomParentVO::getLevelNumber));
|
return Collections.max(zhiFaList, Comparator.comparing(BomNewEbomParentVO::getLevelNumber));
|
||||||
}
|
}
|
||||||
|
|
@ -359,7 +359,7 @@ public abstract class EBomToPbomBase {
|
||||||
|
|
||||||
|
|
||||||
private BomNewEbomParentVO getVirtualPackageByName(VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
private BomNewEbomParentVO getVirtualPackageByName(VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
||||||
List<BomNewEbomParentVO> list = allBomDetail.stream().filter(u -> u.getMaterialName().contains(virtualPackageTypeEnum.getConMaterialName())).collect(Collectors.toList());
|
List<BomNewEbomParentVO> list = allBomDetail.stream().filter(u -> u.getLevelNumber().compareTo(u.getLevelNumber()) > 0 && virtualPackageTypeEnum.getVirtualPartType().equals(u.getVirtualPartType())).collect(Collectors.toList());
|
||||||
if (CollUtil.isNotEmpty(list)) {
|
if (CollUtil.isNotEmpty(list)) {
|
||||||
return list.get(0);
|
return list.get(0);
|
||||||
}
|
}
|
||||||
|
|
@ -383,7 +383,7 @@ public abstract class EBomToPbomBase {
|
||||||
String preAssemblyPackageLevelNo = StrUtil.isNotBlank(parentDrawingNoRe) ? StrUtil.join("-", parentDrawingNoRe, "1") : "1";
|
String preAssemblyPackageLevelNo = StrUtil.isNotBlank(parentDrawingNoRe) ? StrUtil.join("-", parentDrawingNoRe, "1") : "1";
|
||||||
for (BomNewEbomParentVO firstLevelBom : firstLevelBoms) {
|
for (BomNewEbomParentVO firstLevelBom : firstLevelBoms) {
|
||||||
|
|
||||||
if (firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getFindConMaterialName()) || firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getFindConMaterialName())) {
|
if (VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getVirtualPartType().equals(firstLevelBom.getVirtualPartType()) || VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getVirtualPartType().equals(firstLevelBom.getVirtualPartType())) {
|
||||||
firstLevelBom.setLevelNumber(levelToNum(preAssemblyPackageLevelNo));
|
firstLevelBom.setLevelNumber(levelToNum(preAssemblyPackageLevelNo));
|
||||||
firstLevelBom.setLevelNo(preAssemblyPackageLevelNo);
|
firstLevelBom.setLevelNo(preAssemblyPackageLevelNo);
|
||||||
continue;
|
continue;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue