diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java index d61f8c8dd..936f46f88 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectLibraryBase.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.jero.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -25,6 +26,7 @@ import java.util.List; @TableName("project_library_base") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) +@JsonIgnoreProperties public class ProjectLibraryBase implements Comparable { private static final long serialVersionUID = 1L; @@ -153,5 +155,44 @@ public class ProjectLibraryBase implements Comparable { return projectName+yearName+targetMarket+projectVersion; } - + @Override + public String toString() { + return "ProjectLibraryBase{" + + "id='" + id + '\'' + + ", projectNameId='" + projectNameId + '\'' + + ", projectName='" + projectName + '\'' + + ", yearNameId='" + yearNameId + '\'' + + ", yearName='" + yearName + '\'' + + ", targetMarket='" + targetMarket + '\'' + + ", projectStatus='" + projectStatus + '\'' + + ", studioEngineer='" + studioEngineer + '\'' + + ", studioEngineerName='" + studioEngineerName + '\'' + + ", certificationEngineer='" + certificationEngineer + '\'' + + ", certificationEngineerName='" + certificationEngineerName + '\'' + + ", vehiclePlatform='" + vehiclePlatform + '\'' + + ", digitalPlatform='" + digitalPlatform + '\'' + + ", ipdInfo='" + ipdInfo + '\'' + + ", vehicleDevelopmentPlan='" + vehicleDevelopmentPlan + '\'' + + ", attestationPlan='" + attestationPlan + '\'' + + ", createBy='" + createBy + '\'' + + ", createTime=" + createTime + + ", updateBy='" + updateBy + '\'' + + ", sysOrgCode='" + sysOrgCode + '\'' + + ", updateTime=" + updateTime + + ", cut='" + cut + '\'' + + ", startTime='" + startTime + '\'' + + ", endTime='" + endTime + '\'' + + ", targetMarketName='" + targetMarketName + '\'' + + ", parentId='" + parentId + '\'' + + ", projectVersion='" + projectVersion + '\'' + + ", softwareVersion='" + softwareVersion + '\'' + + ", versionLast='" + versionLast + '\'' + + ", explanation='" + explanation + '\'' + + ", sort='" + sort + '\'' + + ", flag='" + flag + '\'' + + ", brand='" + brand + '\'' + + ", brandText='" + brandText + '\'' + + ", brandTextEn='" + brandTextEn + '\'' + + '}'; + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java index 1b393189d..1a97e88b3 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java @@ -874,9 +874,10 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImple.getProjectName().toLowerCase().contains(String.valueOf(params.get("projectName")).toLowerCase())).collect(Collectors.toList()); } - + List projectLibraryBaseParentList = result.stream().filter(e -> StringUtils.isBlank(e.getParentId())).distinct().collect(Collectors.toList()); //处理搜索版本号,(因为列表展示数据是以主项目为主并绑定子项目, 所以搜索的时候只有子项目这种情况需要特殊处理) List resultNew = getProjectLibraryBases(result, projectLibraryBaseListParent); + disposeData(resultNew,"",false); //数据组装 @@ -887,7 +888,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl children = result.stream() .filter(e -> StringUtils.isNotBlank(e.getParentId()) && projectLibraryBase.getId().equals(e.getParentId())).collect(Collectors.toList()); @@ -916,9 +917,13 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl collect1 = result.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList()); resultNew.addAll(collect1); + List projectLibraryBaseList = new ArrayList<>(); for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseListParent) { + List resultNewTemp = new ArrayList<>(); //子项目 List collect = result.stream().filter(e -> projectLibraryBase.getId().equals(e.getParentId())).collect(Collectors.toList()); if(ObjectUtils.isNotEmpty(collect)){ - resultNew.add(projectLibraryBase); + resultNewTemp.addAll(collect); } //子项目的子项目 if(ObjectUtils.isNotEmpty(resultChild)){ List collect2 = resultChild.stream().filter(e -> e.getParentId().equals(projectLibraryBase.getId())).collect(Collectors.toList()); if(ObjectUtils.isNotEmpty(collect2)){ - resultNew.add(projectLibraryBase); + resultNewTemp.addAll(collect2); } } + if(ObjectUtils.isNotEmpty(resultNewTemp)){ + projectLibraryBase.setChildren(resultNewTemp); + projectLibraryBaseList.add(projectLibraryBase); + } } - resultNew = resultNew.stream().distinct().collect(Collectors.toList()); - return resultNew; +// resultNew = resultNew.stream().distinct().collect(Collectors.toList()); + return projectLibraryBaseList; } // /** // * 分页列表查询