diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CategoryListResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CategoryListResultDTO.java index ae61ba1769..8f719ff94c 100644 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CategoryListResultDTO.java +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CategoryListResultDTO.java @@ -27,6 +27,14 @@ public class CategoryListResultDTO implements Serializable { private Integer count; + /** + * 颜色 + */ + private String colour; + + /** + * 1级分类长度 + */ private Integer codeLength; public CategoryListResultDTO() { @@ -34,5 +42,6 @@ public class CategoryListResultDTO implements Serializable { this.categoryName = ""; this.count = NumConstant.ZERO; this.codeLength = NumConstant.ZERO; + this.colour = ""; } } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml index 6c5d46eedd..7730d467f4 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml @@ -250,7 +250,8 @@ SELECT CATEGORY_CODE, CATEGORY_NAME, - LENGTH(CATEGORY_CODE) AS codeLength + LENGTH(CATEGORY_CODE) AS codeLength, + IFNULL(colour,'') AS colour FROM issue_project_category_dict WHERE DEL_FLAG = 0 AND CUSTOMER_ID = #{customerId} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java index ec003c035b..d0d71cab98 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java @@ -256,4 +256,15 @@ public interface ProjectDao extends BaseDao { @Param("categoryCode")String categoryCode, @Param("excludeProjectId") String excludeProjectId, @Param("epmetUserIds")List epmetUserIds); + + /** + * @Description 查询组织下的项目数 + * @param orgIds + * @param startDate + * @param endDate + * @author zxc + * @date 2021/12/10 10:31 上午 + */ + List selectProjectCountByOrg(@Param("orgIds")List orgIds,@Param("startDate")String startDate,@Param("endDate")String endDate); + } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java index ad06a13462..59e08ee55a 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -2861,7 +2861,14 @@ public class ProjectServiceImpl extends BaseServiceImpl orgList = new ArrayList<>(); if (!agencyInfo.getLevel().equals(ProjectConstant.ORG_LEVEL_COMMUNITY)){ - + Result> sonAgencyIdResult = govOrgOpenFeignClient.getSonAgencyId(formDTO.getOrgId()); + if (!sonAgencyIdResult.success()){ + throw new EpmetException(String.format("查询组织{%s}的下级组织失败...",formDTO.getOrgId())); + } + List agencyIds = sonAgencyIdResult.getData(); + if (CollectionUtils.isNotEmpty(agencyIds)){ + orgList = baseDao.selectProjectCountByOrg(agencyIds,formDTO.getStartDate(),formDTO.getEndDate()); + } }else { Result> projectCountByGrid = govIssueOpenFeignClient.getProjectCountByGrid(formDTO); if (!projectCountByGrid.success()){ @@ -2871,6 +2878,21 @@ public class ProjectServiceImpl extends BaseServiceImpl allCount = orgList.stream().map(m -> m.getCount()).collect(Collectors.toList()); + Integer max = Collections.max(allCount); + Integer min = Collections.min(allCount); + if (orgList.size() == NumConstant.ONE || max.compareTo(min) == NumConstant.ZERO){ + result.setUnder(orgList.get(NumConstant.ZERO).getCount().toString()); + return result; + } + Integer minRange = min + ((max - min) / NumConstant.THREE); + Integer maxRange = min + ((max - min) * NumConstant.TWO / NumConstant.THREE); + result.setUnder(minRange.toString().concat("以下")); + result.setMiddle(minRange.toString().concat("-").concat(maxRange.toString())); + result.setAbove(maxRange.toString().concat("以上")); return result; } diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml index 5f2a063bab..83332f7dfb 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml @@ -469,4 +469,18 @@ ORDER BY p.CREATED_TIME DESC + + + \ No newline at end of file