diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/QueryMaterialsVO.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/QueryMaterialsVO.java index 47992feb..b54b160a 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/QueryMaterialsVO.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/vo/QueryMaterialsVO.java @@ -10,6 +10,7 @@ import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.util.Objects; /** * @author 曹鹏飞 @@ -65,6 +66,9 @@ public class QueryMaterialsVO extends BaseMaterialVO implements Serializable { private BigDecimal unitWeight; public BigDecimal getUnitWeight() { + if (Objects.nonNull(unitWeight)) { + return unitWeight; + } return getMaterialWeight(); } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java index 68b1e08c..4c75d060 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/DQBomService.java @@ -683,23 +683,29 @@ public class DQBomService { if (CollUtil.isNotEmpty(keys)) { datas.addAll(SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(keys)); } - List vos = Convert.toList(QueryMaterialsVO.class, datas); - query.forEach(it -> { - if (Objects.nonNull(it.getUnitWeight()) || StrUtil.isNotBlank(it.getProjectType())) { - QueryMaterialsVO vo = vos.stream().filter(m -> StrUtil.equals(m.getMaterialNo(), it.getMaterialNo()) - || StrUtil.equals(m.getDrawingNo(), it.getDrawingNo())) - .findFirst().orElse(null); - if (Objects.nonNull(vo)) { - if (Objects.nonNull(it.getUnitWeight())) { - vo.setUnitWeight(it.getUnitWeight()); - } - if (StrUtil.isNotBlank(it.getProjectType())) { - vo.setProjectType(it.getProjectType()); - } - } + return datas.stream().map(d -> { + 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()); + vo.setRelCategoryCode(d.getRelCategoryCode()); + 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 vos; + return vo; + }).collect(Collectors.toList()); } public QueryMaterialsVO queryMaterial(QueryMaterialsQuery query) { @@ -710,7 +716,19 @@ public class DQBomService { vos = SpringUtil.getBean(MaterialMainMapper.class).getMaterialByDrawingNo(Collections.singletonList(query.getDrawingNo())); } 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()); + vo.setRelCategoryCode(d.getRelCategoryCode()); if (Objects.nonNull(query.getUnitWeight())) { vo.setUnitWeight(query.getUnitWeight()); }