Merge remote-tracking branch 'origin/feature/DM/nflg-bom' into feature/DM/nflg-bom

This commit is contained in:
大米 2024-05-28 12:09:30 +08:00
commit a990f4804e
3 changed files with 83 additions and 45 deletions

View File

@ -1007,7 +1007,18 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
.list(); .list();
if (CollUtil.isNotEmpty(children)) { if (CollUtil.isNotEmpty(children)) {
String dateYMD = DateUtil.format(new Date(), "yyyyMMdd"); String dateYMD = DateUtil.format(new Date(), "yyyyMMdd");
children.forEach(c -> { for (BomNewEbomChildEntity c : children) {
BomNewEbomParentEntity cp = lambdaQuery()
.eq(BomNewEbomParentEntity::getMaterialNo, c.getMaterialNo())
.eq(BomNewEbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue())
.orderByDesc(BomNewEbomParentEntity::getRowId)
.last(" limit 1")
.one();
if (Objects.equals(c.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue())) {
if (Objects.nonNull(cp) && !ebomChildService.lambdaQuery().eq(BomNewEbomChildEntity::getParentRowId, cp.getRowId()).exists()) {
continue;
}
}
T1DTO t1 = new T1DTO(); T1DTO t1 = new T1DTO();
t1.setID(RandomUtil.randomNumbers(5)); t1.setID(RandomUtil.randomNumbers(5));
t1.setMATNR(parent.getMaterialNo()); t1.setMATNR(parent.getMaterialNo());
@ -1021,14 +1032,11 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
} }
t1.setDATUM(dateYMD); t1.setDATUM(dateYMD);
t1s.add(t1); t1s.add(t1);
BomNewEbomParentEntity cp = lambdaQuery()
.eq(BomNewEbomParentEntity::getMaterialNo, c.getMaterialNo())
.eq(BomNewEbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue())
.one();
if (!Objects.isNull(cp)) { if (!Objects.isNull(cp)) {
buildChildrenForSap(cp, t1s); buildChildrenForSap(cp, t1s);
} }
}); }
} }
} }
@ -2386,23 +2394,28 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
if (CollUtil.isNotEmpty(keys)) { if (CollUtil.isNotEmpty(keys)) {
datas.addAll(SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(keys)); datas.addAll(SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(keys));
} }
List<QueryMaterialsVO> vos = Convert.toList(QueryMaterialsVO.class, datas); return datas.stream().map(d -> {
query.forEach(it -> { QueryMaterialsVO vo = new QueryMaterialsVO();
if (Objects.nonNull(it.getUnitWeight()) || StrUtil.isNotBlank(it.getProjectType())) { vo.setMaterialNo(d.getMaterialNo());
QueryMaterialsVO vo = vos.stream().filter(m -> StrUtil.equals(m.getMaterialNo(), it.getMaterialNo()) vo.setMaterialName(d.getMaterialName());
|| StrUtil.equals(m.getDrawingNo(), it.getDrawingNo())) vo.setMaterialDesc(d.getMaterialDesc());
.findFirst().orElse(null); vo.setUnitWeight(d.getMaterialWeight());
if (Objects.nonNull(vo)) { vo.setMaterialCategoryCode(d.getMaterialCategoryCode());
if (Objects.nonNull(it.getUnitWeight())) { vo.setMaterialState(d.getMaterialState());
vo.setUnitWeight(it.getUnitWeight()); vo.setDrawingNo(d.getDrawingNo());
} vo.setMaterialTexture(d.getMaterialTexture());
if (StrUtil.isNotBlank(it.getProjectType())) { vo.setMaterialUnit(d.getMaterialUnit());
vo.setProjectType(it.getProjectType()); vo.setCategoryName(d.getCategoryName());
} QueryMaterialsQuery q = query.stream()
} .filter(f -> StrUtil.equals(f.getMaterialNo(), vo.getMaterialNo()) || StrUtil.equals(f.getDrawingNo(), vo.getDrawingNo()))
.findFirst()
.orElse(null);
if (Objects.nonNull(q)) {
vo.setUnitWeight(q.getUnitWeight());
vo.setProjectType(q.getProjectType());
} }
}); return vo;
return vos; }).collect(Collectors.toList());
} }
public Integer getSapErrorNum() { public Integer getSapErrorNum() {

View File

@ -1152,7 +1152,19 @@ public class BomNewPbomParentService extends ServiceImpl<BomNewPbomParentMapper,
.list(); .list();
if (CollUtil.isNotEmpty(children)) { if (CollUtil.isNotEmpty(children)) {
String dateYMD = DateUtil.format(new Date(), "yyyyMMdd"); String dateYMD = DateUtil.format(new Date(), "yyyyMMdd");
children.forEach(c -> { for (BomNewPbomChildEntity c : children) {
BomNewPbomParentEntity cp = lambdaQuery()
.eq(BomNewPbomParentEntity::getMaterialNo, c.getMaterialNo())
.eq(BomNewPbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue())
.orderByDesc(BomNewPbomParentEntity::getRowId)
.last(" limit 1")
.one();
if (Objects.equals(c.getVirtualPartType(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getValue())) {
if (Objects.nonNull(cp) && !pbomChildService.lambdaQuery().eq(BomNewPbomChildEntity::getParentRowId, cp.getRowId()).exists()) {
continue;
}
}
T1DTO t1 = new T1DTO(); T1DTO t1 = new T1DTO();
t1.setID(RandomUtil.randomNumbers(5)); t1.setID(RandomUtil.randomNumbers(5));
t1.setMATNR(parent.getMaterialNo()); t1.setMATNR(parent.getMaterialNo());
@ -1166,14 +1178,11 @@ public class BomNewPbomParentService extends ServiceImpl<BomNewPbomParentMapper,
} }
t1.setDATUM(dateYMD); t1.setDATUM(dateYMD);
t1s.add(t1); t1s.add(t1);
BomNewPbomParentEntity cp = lambdaQuery()
.eq(BomNewPbomParentEntity::getMaterialNo, c.getMaterialNo())
.eq(BomNewPbomParentEntity::getStatus, EBomStatusEnum.PUBLISHED.getValue())
.one();
if (!Objects.isNull(cp)) { if (!Objects.isNull(cp)) {
buildChildrenForSap(cp, t1s); buildChildrenForSap(cp, t1s);
} }
}); }
} }
} }

View File

@ -683,23 +683,28 @@ public class DQBomService {
if (CollUtil.isNotEmpty(keys)) { if (CollUtil.isNotEmpty(keys)) {
datas.addAll(SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(keys)); datas.addAll(SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(keys));
} }
List<QueryMaterialsVO> vos = Convert.toList(QueryMaterialsVO.class, datas); return datas.stream().map(d -> {
query.forEach(it -> { QueryMaterialsVO vo = new QueryMaterialsVO();
if (Objects.nonNull(it.getUnitWeight()) || StrUtil.isNotBlank(it.getProjectType())) { vo.setMaterialNo(d.getMaterialNo());
QueryMaterialsVO vo = vos.stream().filter(m -> StrUtil.equals(m.getMaterialNo(), it.getMaterialNo()) vo.setMaterialName(d.getMaterialName());
|| StrUtil.equals(m.getDrawingNo(), it.getDrawingNo())) vo.setMaterialDesc(d.getMaterialDesc());
.findFirst().orElse(null); vo.setUnitWeight(d.getMaterialWeight());
if (Objects.nonNull(vo)) { vo.setMaterialCategoryCode(d.getMaterialCategoryCode());
if (Objects.nonNull(it.getUnitWeight())) { vo.setMaterialState(d.getMaterialState());
vo.setUnitWeight(it.getUnitWeight()); vo.setDrawingNo(d.getDrawingNo());
} vo.setMaterialTexture(d.getMaterialTexture());
if (StrUtil.isNotBlank(it.getProjectType())) { vo.setMaterialUnit(d.getMaterialUnit());
vo.setProjectType(it.getProjectType()); vo.setCategoryName(d.getCategoryName());
} QueryMaterialsQuery q = query.stream()
} .filter(f -> StrUtil.equals(f.getMaterialNo(), vo.getMaterialNo()) || StrUtil.equals(f.getDrawingNo(), vo.getDrawingNo()))
.findFirst()
.orElse(null);
if (Objects.nonNull(q)) {
vo.setUnitWeight(q.getUnitWeight());
vo.setProjectType(q.getProjectType());
} }
}); return vo;
return vos; }).collect(Collectors.toList());
} }
public QueryMaterialsVO queryMaterial(QueryMaterialsQuery query) { public QueryMaterialsVO queryMaterial(QueryMaterialsQuery query) {
@ -710,7 +715,18 @@ public class DQBomService {
vos = SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(Collections.singletonList(query.getDrawingNo())); vos = SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(Collections.singletonList(query.getDrawingNo()));
} }
if (CollUtil.isNotEmpty(vos)) { if (CollUtil.isNotEmpty(vos)) {
QueryMaterialsVO vo = Convert.convert(QueryMaterialsVO.class, vos.get(0)); BaseMaterialVO d = vos.get(0);
QueryMaterialsVO vo = new QueryMaterialsVO();
vo.setMaterialNo(d.getMaterialNo());
vo.setMaterialName(d.getMaterialName());
vo.setMaterialDesc(d.getMaterialDesc());
vo.setUnitWeight(d.getMaterialWeight());
vo.setMaterialCategoryCode(d.getMaterialCategoryCode());
vo.setMaterialState(d.getMaterialState());
vo.setDrawingNo(d.getDrawingNo());
vo.setMaterialTexture(d.getMaterialTexture());
vo.setMaterialUnit(d.getMaterialUnit());
vo.setCategoryName(d.getCategoryName());
if (Objects.nonNull(query.getUnitWeight())) { if (Objects.nonNull(query.getUnitWeight())) {
vo.setUnitWeight(query.getUnitWeight()); vo.setUnitWeight(query.getUnitWeight());
} }