diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index b28e2119..d34c2564 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -55,6 +55,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.ForkJoinPool; import java.util.concurrent.ForkJoinTask; import java.util.stream.Collectors; +import java.util.stream.IntStream; /** @@ -534,7 +535,14 @@ public class BomNewEbomParentService extends ServiceImpl workDetailsListByPage(BomNewPbomParentQuery query) { - - - Page result = this.getBaseMapper().workDetailsListByPage(new Page<>(query.getPage(), query.getPageSize()), query, userRoleService.getUserFactory()); - materialMainService.intiMaterialInfo(result.getRecords(), EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT); - return result; + //物料编码搜索或图号搜索 +// if (StrUtil.isNotBlank(query.getMaterialNo()) || StrUtil.isNotBlank(query.getDrawingNo())) { +// String materialNo = query.getMaterialNo(); +// if (StrUtil.isBlank(materialNo)) { +// List materialList = materialMainService.lambdaQuery().eq(MaterialMainEntity::getDrawingNo, query.getDrawingNo()).list(); +// if (CollUtil.isNotEmpty(materialList)) { +// materialNo = materialList.get(0).getMaterialNo(); +// } +// } +// if (StrUtil.isNotBlank(materialNo)) { +// List parentMaterialByMaterialNo = getParentMaterialByMaterialNo(materialNo, !userRoleService.technician()).stream().collect(Collectors.toList()); +// if (CollUtil.isNotEmpty(parentMaterialByMaterialNo)) { +// List parents = this.getBaseMapper().getParentForMaterialNoSeach(parentMaterialByMaterialNo); +// List childs = this.getBaseMapper().getChildForMaterialNoSeach(parentMaterialByMaterialNo, materialNo); +// List data = new ArrayList<>(); +// data.addAll(parents); +// data.addAll(childs); +// materialMainService.intiMaterialInfo(data, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT); +// returnResult = handSeachToTree(parents, childs); +// } +// } +// return null; +// } +// else { + Page result = this.getBaseMapper().workDetailsListByPage(new Page<>(query.getPage(), query.getPageSize()), query, userRoleService.getUserFactory()); + materialMainService.intiMaterialInfo(result.getRecords(), EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT); + return result; +// } } + /** + * 获取物料所有子级 + * @param materialNo + * @param selfIs + * @return + */ +// public Set getParentMaterialByMaterialNo(String materialNo, Boolean selfIs) { +// BomNewEbomMaterialUseEntity materialBom = bomNewEbomMaterialUseService.lambdaQuery().eq(BomNewEbomMaterialUseEntity::getMaterialNo, materialNo).one(); +// Set result = new HashSet<>(); +// if (Objects.nonNull(materialBom) && StrUtil.isNotBlank(materialBom.getParentMaterialNo())) { +// Set relSkuNo = Sets.newHashSet(StrUtil.split(materialBom.getParentMaterialNo(), ",")); +// if (selfIs && CollUtil.isNotEmpty(relSkuNo)) { +// relSkuNo = getSelfMaterialNo(relSkuNo); +// } +// while (CollUtil.isNotEmpty(relSkuNo)) { +// result.addAll(relSkuNo); +// List relSkuList = bomNewEbomMaterialUseService.lambdaQuery().in(BomNewEbomMaterialUseEntity::getMaterialNo, relSkuNo).list(); +// relSkuNo.clear(); +// Set finalRelSkuNo = relSkuNo; +// relSkuList.forEach(k -> { +// if (StrUtil.isNotBlank(k.getParentMaterialNo())) { +// finalRelSkuNo.addAll(Sets.newHashSet(StrUtil.split(k.getParentMaterialNo(), ","))); +// } +// }); +// relSkuNo = finalRelSkuNo; +// if (CollUtil.isNotEmpty(relSkuNo) && selfIs) { +// relSkuNo = getSelfMaterialNo(relSkuNo); +// } +// } +// } +// return result; +// } + /** * 已 * @param query