修改项目结构,施工产值
This commit is contained in:
@ -38,7 +38,6 @@ public class OutConstructionValueBo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 方阵id
|
* 方阵id
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "方阵id不能为空", groups = { AddGroup.class, EditGroup.class })
|
|
||||||
private Long matrixId;
|
private Long matrixId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -944,15 +944,57 @@ public class BusProjectServiceImpl extends ServiceImpl<BusProjectMapper, BusProj
|
|||||||
subProjectVo.setId(subProject.getId());
|
subProjectVo.setId(subProject.getId());
|
||||||
subProjectVo.setName(subProject.getProjectName());
|
subProjectVo.setName(subProject.getProjectName());
|
||||||
|
|
||||||
List<PgsProgressCategory> subCategory = subProgressCategoryList.stream()
|
List<PgsProgressCategory> sub1Category = subProgressCategoryList.stream()
|
||||||
.filter(c -> Objects.equals(c.getProjectId(), subProject.getId()))
|
.filter(c -> Objects.equals(c.getProjectId(), subProject.getId()))
|
||||||
|
.filter(c -> c.getAncestors().split(",").length == 1)
|
||||||
.toList();
|
.toList();
|
||||||
|
|
||||||
List<FacMatrixStructureVo> structureVoList = subCategory.stream()
|
List<PgsProgressCategory> sub2Category = subProgressCategoryList.stream()
|
||||||
|
.filter(c -> Objects.equals(c.getProjectId(), subProject.getId()))
|
||||||
|
.filter(c -> c.getAncestors().split(",").length == 2)
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
List<PgsProgressCategory> sub3Category = subProgressCategoryList.stream()
|
||||||
|
.filter(c -> Objects.equals(c.getProjectId(), subProject.getId()))
|
||||||
|
.filter(c -> c.getAncestors().split(",").length == 3)
|
||||||
|
.toList();
|
||||||
|
Map<Long, List<PgsProgressCategory>> sub2CategoryMap = new HashMap<>();
|
||||||
|
if (CollUtil.isNotEmpty(sub2Category)) {
|
||||||
|
sub2CategoryMap = sub2Category.stream()
|
||||||
|
.collect(Collectors.groupingBy(PgsProgressCategory::getParentId));
|
||||||
|
}
|
||||||
|
Map<Long, List<PgsProgressCategory>> finalSub2CategoryMap = sub2CategoryMap;
|
||||||
|
Map<Long, List<PgsProgressCategory>> sub3CategoryMap = new HashMap<>();
|
||||||
|
if (CollUtil.isNotEmpty(sub3Category)) {
|
||||||
|
sub3CategoryMap = sub3Category.stream()
|
||||||
|
.collect(Collectors.groupingBy(PgsProgressCategory::getParentId));
|
||||||
|
}
|
||||||
|
Map<Long, List<PgsProgressCategory>> finalSub3CategoryMap = sub3CategoryMap;
|
||||||
|
List<FacMatrixStructureVo> structureVoList = sub1Category.stream()
|
||||||
.map(category -> {
|
.map(category -> {
|
||||||
FacMatrixStructureVo matrixVo = new FacMatrixStructureVo();
|
FacMatrixStructureVo matrixVo = new FacMatrixStructureVo();
|
||||||
matrixVo.setId(category.getId());
|
Long id = category.getId();
|
||||||
|
matrixVo.setId(id);
|
||||||
matrixVo.setName(category.getName());
|
matrixVo.setName(category.getName());
|
||||||
|
if (CollUtil.isNotEmpty(finalSub2CategoryMap) && finalSub2CategoryMap.containsKey(id)) {
|
||||||
|
matrixVo.setChildren(finalSub2CategoryMap.get(id).stream()
|
||||||
|
.map(c -> {
|
||||||
|
PgsProgressCategoryStructureVo subSubCategoryVo = new PgsProgressCategoryStructureVo();
|
||||||
|
subSubCategoryVo.setId(c.getId());
|
||||||
|
subSubCategoryVo.setName(c.getName());
|
||||||
|
if (CollUtil.isNotEmpty(finalSub3CategoryMap) && finalSub3CategoryMap.containsKey(c.getId())) {
|
||||||
|
subSubCategoryVo.setChildren(finalSub3CategoryMap.get(c.getId()).stream()
|
||||||
|
.map(c3 -> {
|
||||||
|
PgsProgressCategoryStructureVo sub3CategoryVo = new PgsProgressCategoryStructureVo();
|
||||||
|
sub3CategoryVo.setId(c3.getId());
|
||||||
|
sub3CategoryVo.setName(c3.getName());
|
||||||
|
return sub3CategoryVo;
|
||||||
|
}).toList()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return subSubCategoryVo;
|
||||||
|
}).toList());
|
||||||
|
}
|
||||||
return matrixVo;
|
return matrixVo;
|
||||||
}).toList();
|
}).toList();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user