顶层同步主数据
This commit is contained in:
parent
24edba0da3
commit
fe3536f13d
|
|
@ -27,4 +27,5 @@ public class ChildBomReportQuery {
|
|||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,7 @@ import cn.hutool.core.convert.Convert;
|
|||
import cn.hutool.core.lang.TypeReference;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.nflg.product.bomnew.constant.EBomConstant;
|
||||
import com.nflg.product.bomnew.constant.EBomStatusEnum;
|
||||
import com.nflg.product.bomnew.constant.OriginalConstant;
|
||||
import com.nflg.product.bomnew.constant.ReportConstant;
|
||||
import com.nflg.product.bomnew.constant.*;
|
||||
import com.nflg.product.bomnew.mapper.master.BomNewPbomParentMapper;
|
||||
import com.nflg.product.bomnew.pojo.entity.*;
|
||||
import com.nflg.product.bomnew.pojo.query.ChildBomReportQuery;
|
||||
|
|
@ -167,17 +164,14 @@ public class ForwardReportService {
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
List<ForwardReportVO> chilidEBomList(ChildBomReportQuery query) {
|
||||
|
||||
|
||||
BomNewEbomParentVO parentEntity=null;
|
||||
|
||||
List<BomNewEbomParentVO> parentChildList=null;
|
||||
|
||||
|
||||
boolean isNewVersion=false;
|
||||
if (query.getVersionStrategy().compareTo(ReportConstant.VersionStrategyEnum.NEW.getValue()) == 0) {
|
||||
isNewVersion=true;
|
||||
}
|
||||
if (isNewVersion) {
|
||||
parentEntity= Convert.convert(BomNewEbomParentVO.class,SpringUtil.getBean(BomNewEbomParentService .class).getById(query.getBomRowId()));
|
||||
parentChildList
|
||||
= Convert.toList(BomNewEbomParentVO.class,SpringUtil.getBean(BomNewEbomParentService.class). getParentChild(query.getBomRowId()));
|
||||
|
|
@ -187,51 +181,41 @@ public class ForwardReportService {
|
|||
= Convert.toList(BomNewEbomParentVO.class,SpringUtil.getBean(BomNewEbomParentFormalService.class). getParentChild(query.getBomRowId()));
|
||||
}
|
||||
|
||||
|
||||
if(CollUtil.isEmpty(parentChildList)){
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(parentChildList, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
||||
|
||||
Map<Long, BomNewEbomParentVO > parentEntityMap=null;
|
||||
if (query.getVersionStrategy().compareTo(ReportConstant.VersionStrategyEnum.NEW.getValue()) == 0) {
|
||||
Map<String, BomNewEbomParentVO > parentEntityMap=null;
|
||||
if (isNewVersion) {
|
||||
List<String> materialNos = parentChildList.stream().filter(u -> StrUtil.isNotBlank(u.getMaterialNo()) )
|
||||
.map(BomNewEbomParentVO::getMaterialNo).collect(Collectors.toList());
|
||||
|
||||
List<BomNewEbomParentEntity> childBomlist = SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery()
|
||||
.in(BomNewEbomParentEntity::getMaterialNo, materialNos)
|
||||
.eq(BomNewEbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue()).list();
|
||||
|
||||
List<BomNewEbomParentVO> covertList=Convert.toList(BomNewEbomParentVO.class,childBomlist);
|
||||
|
||||
|
||||
parentEntityMap = covertList.parallelStream()
|
||||
.collect(Collectors.toMap(
|
||||
BomNewEbomParentVO::getRowId,
|
||||
BomNewEbomParentVO::getMaterialNo,
|
||||
Function.identity(),
|
||||
BinaryOperator.maxBy(Comparator.comparing(BomNewEbomParentVO::getCurrentVersion))
|
||||
));
|
||||
|
||||
|
||||
}else {
|
||||
List<Long> bomRowIds=parentChildList.stream().filter(u -> Objects.nonNull(u.getBomRowId()) && u.getBomRowId()>0 )
|
||||
.map(BomNewEbomParentVO::getBomRowId).collect(Collectors.toList());
|
||||
|
||||
if(CollUtil.isNotEmpty(bomRowIds)) {
|
||||
List<BomNewEbomParentFormalEntity> bomlist = SpringUtil.getBean(BomNewEbomParentFormalService.class).lambdaQuery()
|
||||
.in(BomNewEbomParentFormalEntity::getRowId, bomRowIds).list();
|
||||
|
||||
parentEntityMap = ListCommonUtil.listToMap(Convert.toList(BomNewEbomParentVO.class,bomlist), BomNewEbomParentVO::getRowId);
|
||||
|
||||
parentEntityMap = ListCommonUtil.listToMap(Convert.toList(BomNewEbomParentVO.class,bomlist), BomNewEbomParentVO::getMaterialNo);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
for (BomNewEbomParentVO vo :
|
||||
parentChildList) {
|
||||
|
||||
if (Objects.nonNull(parentEntityMap) && parentEntityMap.containsKey(vo.getParentRowId())) {
|
||||
BomNewEbomParentVO ebomParentEntity = parentEntityMap.get(vo.getParentRowId());
|
||||
if (Objects.nonNull(parentEntityMap) && parentEntityMap.containsKey(vo.getMaterialNo())) {
|
||||
BomNewEbomParentVO ebomParentEntity = parentEntityMap.get(vo.getMaterialNo());
|
||||
vo.setDeviseName(ebomParentEntity.getDeviseName());
|
||||
vo.setDeviseUserCode(ebomParentEntity.getDeviseUserCode());
|
||||
vo.setCurrentVersion(ebomParentEntity.getCurrentVersion());
|
||||
|
|
@ -248,21 +232,19 @@ public class ForwardReportService {
|
|||
// }
|
||||
}
|
||||
}
|
||||
|
||||
List<ForwardReportVO> childBomLit = Convert.convert(new TypeReference<List<ForwardReportVO>>() {}, parentChildList);
|
||||
|
||||
|
||||
return childBomLit;
|
||||
}
|
||||
|
||||
List<ForwardReportVO> chilidPBomList(ChildBomReportQuery query) {
|
||||
|
||||
BomNewPbomParentVO parentEntity=null;
|
||||
|
||||
List<BomNewPbomParentVO> parentChildList=null;
|
||||
|
||||
|
||||
boolean isNewVersion=false;
|
||||
if (query.getVersionStrategy().compareTo(ReportConstant.VersionStrategyEnum.NEW.getValue()) == 0) {
|
||||
isNewVersion=true;
|
||||
}
|
||||
|
||||
if (isNewVersion) {
|
||||
parentEntity= Convert.convert(BomNewPbomParentVO.class,SpringUtil.getBean(BomNewPbomParentService .class).getById(query.getBomRowId()));
|
||||
parentChildList
|
||||
= Convert.toList(BomNewPbomParentVO.class,SpringUtil.getBean(BomNewPbomParentMapper.class). getParentChild(query.getBomRowId()));
|
||||
|
|
@ -272,28 +254,24 @@ public class ForwardReportService {
|
|||
= Convert.toList(BomNewPbomParentVO.class,SpringUtil.getBean(BomNewPbomParentFormalService.class). getParentChild(query.getBomRowId()));
|
||||
}
|
||||
|
||||
|
||||
if(CollUtil.isEmpty(parentChildList)){
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(parentChildList, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
||||
|
||||
|
||||
Map<Long, BomNewPbomParentVO > parentEntityMap=null;
|
||||
if (query.getVersionStrategy().compareTo(ReportConstant.VersionStrategyEnum.NEW.getValue()) == 0) {
|
||||
Map<String, BomNewPbomParentVO > parentEntityMap=null;
|
||||
if (isNewVersion) {
|
||||
List<String> materialNos = parentChildList.stream().filter(u -> StrUtil.isNotBlank(u.getMaterialNo()) )
|
||||
.map(BomNewPbomParentVO::getMaterialNo).collect(Collectors.toList());
|
||||
|
||||
List<BomNewPbomParentEntity> childBomlist = SpringUtil.getBean(BomNewPbomParentService.class).lambdaQuery()
|
||||
.in(BomNewPbomParentEntity::getMaterialNo, materialNos)
|
||||
.ge( BomNewPbomParentEntity::getStatus, PBomStatusEnum.PUBLISH.getValue())
|
||||
.eq(BomNewPbomParentEntity::getFacCode, parentEntity.getFacCode()).list();
|
||||
|
||||
List<BomNewPbomParentVO> covertList=Convert.toList(BomNewPbomParentVO.class,childBomlist);
|
||||
|
||||
parentEntityMap = covertList.stream()
|
||||
.collect(Collectors.groupingBy(
|
||||
BomNewPbomParentVO::getRowId,
|
||||
BomNewPbomParentVO::getMaterialNo,
|
||||
Collectors.collectingAndThen(
|
||||
Collectors.maxBy(Comparator.comparing(BomNewPbomParentVO::getCurrentVersion)),
|
||||
Optional::get
|
||||
|
|
@ -309,20 +287,17 @@ public class ForwardReportService {
|
|||
List<BomNewPbomParentFormalEntity> bomlist = SpringUtil.getBean(BomNewPbomParentFormalService.class).lambdaQuery()
|
||||
.in(BomNewPbomParentFormalEntity::getRowId, bomRowIds).list();
|
||||
|
||||
parentEntityMap = ListCommonUtil.listToMap(Convert.toList(BomNewPbomParentVO.class,bomlist), BomNewPbomParentVO::getRowId);
|
||||
parentEntityMap = ListCommonUtil.listToMap(Convert.toList(BomNewPbomParentVO.class,bomlist), BomNewPbomParentVO::getMaterialNo);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
for (BomNewPbomParentVO vo:
|
||||
parentChildList) {
|
||||
|
||||
if (Objects.nonNull(parentEntityMap) && parentEntityMap.containsKey(vo.getParentRowId())) {
|
||||
BomNewPbomParentVO pbomParentEntity = parentEntityMap.get(vo.getBomRowId());
|
||||
|
||||
if (Objects.nonNull(parentEntityMap) && parentEntityMap.containsKey(vo.getMaterialNo())) {
|
||||
BomNewPbomParentVO pbomParentEntity = parentEntityMap.get(vo.getMaterialNo());
|
||||
vo.setDeviseName(pbomParentEntity.getDeviseName());
|
||||
vo.setCurrentVersion(pbomParentEntity.getCurrentVersion());
|
||||
vo.setExpireEndTime(pbomParentEntity.getReleaseTime());
|
||||
|
|
@ -339,8 +314,6 @@ public class ForwardReportService {
|
|||
// }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
List<ForwardReportVO> childBomLit = Convert.convert(
|
||||
new TypeReference<List<ForwardReportVO>>() {
|
||||
|
||||
|
|
@ -363,8 +336,6 @@ public class ForwardReportService {
|
|||
if (item.getParentRowId().longValue() == 0l) {
|
||||
item.setParentRowId(bomRowId);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
List<ForwardReportVO> childBomLit = Convert.convert(
|
||||
|
|
|
|||
|
|
@ -172,7 +172,9 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
|
||||
if (CollectionUtil.isNotEmpty(parentChildList)) {
|
||||
|
||||
List<Long> bomRowIds = parentChildList.stream().filter(u -> Objects.nonNull(u.getBomRowId()) && u.getBomRowId() > 0).map(BomNewEbomParentVO::getBomRowId).collect(Collectors.toList());
|
||||
List<Long> bomRowIds = parentChildList.stream().filter(u -> Objects.nonNull(u.getBomRowId()) && u.getBomRowId() > 0)
|
||||
.map(BomNewEbomParentVO::getBomRowId)
|
||||
.collect(Collectors.toList());
|
||||
Map<Long, BomNewEbomParentVO> parentEntityMap = null;
|
||||
if (CollUtil.isNotEmpty(bomRowIds)) {
|
||||
List<BomNewEbomParentVO> bomlist = getParentList(bomRowIds);
|
||||
|
|
@ -185,7 +187,6 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
|
||||
Map<Long, BomNewEbomParentVO> noBomParentEntityMap = ListCommonUtil.listToMap(parent, BomNewEbomParentVO::getRowId);
|
||||
|
||||
|
||||
for (BomNewEbomParentVO vo :
|
||||
parentChildList) {
|
||||
|
||||
|
|
@ -203,15 +204,12 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
} else {
|
||||
vo.setLevelNum(levelNum);
|
||||
vo.setOrderNumber(orderNum.getAndIncrement() + "");
|
||||
|
||||
if (Objects.nonNull(noBomParentEntityMap) && noBomParentEntityMap.containsKey(vo.getParentRowId())) {
|
||||
BomNewEbomParentVO parentVO = noBomParentEntityMap.get(vo.getParentRowId());
|
||||
vo.setDeviseName(parentVO.getDeviseName());
|
||||
vo.setDeviseUserCode(parentVO.getDeviseUserCode());
|
||||
|
||||
}
|
||||
|
||||
|
||||
// if (MaterialshouldBomExistUtil.checkShouldBomExist(vo)) {
|
||||
// vo.setCurrentVersion(OriginalConstant.NO_BOM_VERSION);
|
||||
// } else {
|
||||
|
|
@ -278,6 +276,7 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
List<BomNewEbomParentVO> parentChildList = getParentChildList(ImmutableList.of(parentFormal.getRowId()));
|
||||
|
||||
initMaterialInfo(parentChildList);
|
||||
initMaterialInfo(ImmutableList.of(parentFormal));
|
||||
AtomicInteger orderNum = new AtomicInteger(1);
|
||||
parentFormal.setLevelNum(1);
|
||||
parentFormal.setOrderNumber(orderNum.getAndIncrement() + "");
|
||||
|
|
@ -345,7 +344,7 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
ForkJoinPool pool = new ForkJoinPool();
|
||||
ForkJoinTask<List<BomNewEbomParentVO>> submit = pool.submit(task);
|
||||
List<BomNewEbomParentVO> bomList = submit.join();
|
||||
initMaterialInfo(bomList);
|
||||
|
||||
return bomList;
|
||||
}
|
||||
return null;
|
||||
|
|
@ -361,7 +360,7 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
parentBomRow.setOrderNumber("1");
|
||||
bomDetails.add(0, parentBomRow);
|
||||
}
|
||||
|
||||
initMaterialInfo(bomDetails);
|
||||
return bomDetails;
|
||||
} else {
|
||||
return bomDetailFormalList(parentBomRow);
|
||||
|
|
@ -409,10 +408,10 @@ public class EBomForwardReport extends BaseForwardReport {
|
|||
if (CollUtil.isNotEmpty(nextBomId)) {
|
||||
rowIdList.addAll(nextBomId);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
initMaterialInfo(voList);
|
||||
return voList;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -224,7 +224,7 @@ public class PBomForwardReport extends BaseForwardReport {
|
|||
parentBomRow.setOrderNumber("1");
|
||||
bomDetails.add(0, parentBomRow);
|
||||
}
|
||||
|
||||
initMaterialInfo(bomDetails);
|
||||
return bomDetails;
|
||||
} else {
|
||||
return bomDetailFormalList(parentBomRow);
|
||||
|
|
@ -271,6 +271,7 @@ public class PBomForwardReport extends BaseForwardReport {
|
|||
}
|
||||
|
||||
}
|
||||
initMaterialInfo(voList);
|
||||
return voList;
|
||||
|
||||
}
|
||||
|
|
@ -300,11 +301,11 @@ public class PBomForwardReport extends BaseForwardReport {
|
|||
|
||||
|
||||
List<BomNewPbomParentVO> parentChildList = getParentChildList(ImmutableList.of(parentFormal.getRowId()));
|
||||
|
||||
initMaterialInfo(parentChildList);
|
||||
|
||||
initMaterialInfo(ImmutableList.of(parentFormal));
|
||||
if (CollectionUtil.isNotEmpty(parentChildList)) {
|
||||
|
||||
|
||||
AtomicInteger orderNum = new AtomicInteger(1);
|
||||
parentFormal.setLevelNum(1);
|
||||
parentFormal.setOrderNumber(orderNum.getAndIncrement() + "");
|
||||
|
|
@ -312,6 +313,9 @@ public class PBomForwardReport extends BaseForwardReport {
|
|||
bomUpAndLowLevel(ImmutableList.of(parentFormal), parentChildList, null, 2, orderNum);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
List<ForwardReportVO> nodeList = Convert.convert(new TypeReference<List<ForwardReportVO>>() {
|
||||
}, parentChildList);
|
||||
nodesList.addAll(nodeList);
|
||||
|
|
@ -450,7 +454,7 @@ public class PBomForwardReport extends BaseForwardReport {
|
|||
ForkJoinTask<List<BomNewPbomParentVO>> submit = pool.submit(task);
|
||||
|
||||
List<BomNewPbomParentVO> bomList = submit.join();
|
||||
initMaterialInfo(bomList);
|
||||
|
||||
return bomList;
|
||||
}
|
||||
return null;
|
||||
|
|
|
|||
Loading…
Reference in New Issue