diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/LingShanScreenController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/LingShanScreenController.java index 91a30760f7..ab9b8a7240 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/LingShanScreenController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/LingShanScreenController.java @@ -30,9 +30,10 @@ public class LingShanScreenController { * @date: 2023/4/27 10:20 AM */ @GetMapping("specialCrowdStats/qtyOfSubOrg") - public Result specialCrowdStatsCountBySubOrg(@RequestParam("parentAgencyId") String parentAgencyId) { + public Result specialCrowdStatsCountBySubOrg(@RequestParam("parentAgencyId") String parentAgencyId, + @RequestParam(value = "specialType", required = false) String specialType) { - List l = lingShanScreenService.specialCrowdStatsCountBySubOrg(parentAgencyId); + List l = lingShanScreenService.specialCrowdStatsCountBySubOrg(parentAgencyId, specialType); return new Result().ok(l); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/LingShanScreenService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/LingShanScreenService.java index bcea4e338b..b52d51fc12 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/LingShanScreenService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/LingShanScreenService.java @@ -8,7 +8,7 @@ import java.util.List; public interface LingShanScreenService { - List specialCrowdStatsCountBySubOrg(String parentAgencyId); + List specialCrowdStatsCountBySubOrg(String parentAgencyId, String specialType); List specialCrowdStatsCountBySpecialType(String parentAgencyId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/LingShanScreenServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/LingShanScreenServiceImpl.java index 45bb14cc74..fc2912ebb6 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/LingShanScreenServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/LingShanScreenServiceImpl.java @@ -15,6 +15,7 @@ import com.epmet.entity.*; import com.epmet.enums.LingShanSpecialCrowdTypeEnums; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.LingShanScreenService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -44,7 +45,7 @@ public class LingShanScreenServiceImpl implements LingShanScreenService, ResultD private GovOrgOpenFeignClient govOrgOpenFeignClient; @Override - public List specialCrowdStatsCountBySubOrg(String parentAgencyId) { + public List specialCrowdStatsCountBySubOrg(String parentAgencyId, String specialType) { List subOrgs = getResultDataOrThrowsException(govOrgOpenFeignClient.subOrgList(parentAgencyId), ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, null); List orgIdPaths = subOrgs.stream().map(sub -> PidUtils.convertPid2OrgIdPath(sub.getOrgId(), sub.getPids())).collect(Collectors.toList()); @@ -58,11 +59,22 @@ public class LingShanScreenServiceImpl implements LingShanScreenService, ResultD }).collect(Collectors.toList()); - List ol = azbjDao.statsCountsByOrgIds(orgIdPaths); - ol.addAll(sqjzDao.statsCountsByOrgIds(orgIdPaths)); - ol.addAll(xfryDao.statsCountsByOrgIds(orgIdPaths)); - ol.addAll(jdryDao.statsCountsByOrgIds(orgIdPaths)); - ol.addAll(jzhzDao.statsCountsByOrgIds(orgIdPaths)); + List ol = new ArrayList<>(); + if (LingShanSpecialCrowdTypeEnums.AZBJ.getType().equals(specialType) || StringUtils.isBlank(specialType)) { + ol.addAll(azbjDao.statsCountsByOrgIds(orgIdPaths)); + } + if (LingShanSpecialCrowdTypeEnums.SQJZ.getType().equals(specialType) || StringUtils.isBlank(specialType)) { + ol.addAll(sqjzDao.statsCountsByOrgIds(orgIdPaths)); + } + if (LingShanSpecialCrowdTypeEnums.XFRY.getType().equals(specialType) || StringUtils.isBlank(specialType)) { + ol.addAll(xfryDao.statsCountsByOrgIds(orgIdPaths)); + } + if (LingShanSpecialCrowdTypeEnums.JDRY.getType().equals(specialType) || StringUtils.isBlank(specialType)) { + ol.addAll(jdryDao.statsCountsByOrgIds(orgIdPaths)); + } + if (LingShanSpecialCrowdTypeEnums.JZHZ.getType().equals(specialType) || StringUtils.isBlank(specialType)) { + ol.addAll(jzhzDao.statsCountsByOrgIds(orgIdPaths)); + } // 开始给rl++ for (LingShanSpecialCrowdStatsByOrgResultDTO o : ol) {