diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/form/DifficultyRankFormDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/form/DifficultyRankFormDTO.java index 5a3936db6a..db63f70b40 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/form/DifficultyRankFormDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/form/DifficultyRankFormDTO.java @@ -40,4 +40,11 @@ public class DifficultyRankFormDTO implements Serializable { * 组织类型: 网格:grid ; 组织:agency */ private String orgType; + + //以下属性无需前端赋值 + /** + * 当前登录用户所属客户id + */ + private String customerId; + private String agencyAreaCode; } \ No newline at end of file diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java index 90f3157f3d..f114739e1a 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java @@ -114,6 +114,21 @@ public class ProjectController { return new Result>().ok(projectService.getDifficultyRank(param)); } + /** + * @return com.epmet.commons.tools.utils.Result> + * @param formDTO + * @author yinzuomei + * @description 难点赌点-耗时最长|涉及部门最多|处理次数 返回该组织下所有的难点堵点的 数据 + * 2021.06.21新增次API,多客户版本,eg:平阴县的工作人员可以看到8个街道的难点赌点 + * @Date 2021/6/23 13:09 + **/ + @PostMapping("difficultyrank-multic") + public Result> difficultyRankMultic(@RequestHeader("CustomerId") String customerId,@RequestBody DifficultyRankFormDTO formDTO){ + formDTO.setCustomerId(customerId); + ValidatorUtils.validateEntity(formDTO, DifficultyRankFormDTO.DifficultyRankInternalGroup.class); + return new Result>().ok(projectService.difficultyRankMultic(formDTO)); + } + /** * @Description 难点赌点-耗时最长|涉及部门最多|处理次数 * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614 diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/project/ProjectDao.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/project/ProjectDao.java index 870c25a6d2..81e0ce2a3a 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/project/ProjectDao.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/project/ProjectDao.java @@ -66,6 +66,14 @@ public interface ProjectDao { **/ List difficultyRank(DifficultyRankFormDTO difficultyRankFormDTO); + /** + * 工作端-数据:难点赌点列表查询V2,多客户版本 + * + * @param formDTO + * @return com.epmet.project.dto.result.ProjectDifficultRankResultDTO + */ + List difficultyRankV2(DifficultyRankFormDTO formDTO); + /** * @Description 查询难点堵点的图片list * @param diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java index 25f111af73..41bb952fa0 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java @@ -62,6 +62,14 @@ public interface ProjectService { **/ List getDifficultyRank(DifficultyRankFormDTO param); + /** + * 难点赌点-耗时最长|涉及部门最多|处理次数 + * + * @param formDTO + * @return com.epmet.project.dto.result.ProjectDifficultRankResultDTO + */ + List difficultyRankMultic(DifficultyRankFormDTO formDTO); + /** * @Description 难点赌点-获取组织下拉框 * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614 diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java index 5a5097e7a1..027e108845 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java @@ -359,6 +359,42 @@ public class ProjectServiceImpl implements ProjectService { return result; } + /** + * 难点赌点-耗时最长|涉及部门最多|处理次数 + * + * @param formDTO + * @return com.epmet.project.dto.result.ProjectDifficultRankResultDTO + */ + @DataSource(value = DataSourceConstant.EVALUATION_INDEX, datasourceNameFromArg = true) + @Override + public List difficultyRankMultic(DifficultyRankFormDTO formDTO) { + //1、查询当前客户是否包含子客户 + //多客户测试写死值,别忘了注释掉呀 + // formDTO.setCustomerId("613cc61a6b8ce4c70d21bd413dac72cc"); + // formDTO.setAgencyId("30705f91f1295ae77d372b868596a5e7"); + Result> crmRes = operCrmOpenFeignClient.getAllSubCustomerIds(formDTO.getCustomerId()); + if (crmRes.success() && CollectionUtils.isNotEmpty(crmRes.getData())) { + log.warn("❤当前客户存在子客户❤"); + //2、查询组织信息 + Result agencyResult = govOrgOpenFeignClient.getAgencyById(formDTO.getAgencyId()); + if (!agencyResult.success() || null == agencyResult.getData()) { + throw new RenException(String.format("查询组织信息异常,agencyId:%s", formDTO.getAgencyId())); + } + formDTO.setAgencyAreaCode(agencyResult.getData().getAreaCode()); + } + // 3、升级原来的列表查询接口 + PageHelper.startPage(null == formDTO.getPageNo() ? NumConstant.ONE : formDTO.getPageNo(), formDTO.getTopNum()); + List result = projectDao.difficultyRankV2(formDTO); + for (int i = 0; i < result.size(); i++) { + List imgUrlList = projectDao.getDifficultyImgList(result.get(i).getProjectId()); + result.get(i).setImgUrlList(imgUrlList); + } + if (CollectionUtils.isEmpty(result)) { + return new ArrayList<>(); + } + return result; + } + @Override public List getCategoryDict(String customerId) { List result = new ArrayList<>(); diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/project/ProjectDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/project/ProjectDao.xml index d06d7ac03d..73552407d7 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/project/ProjectDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/project/ProjectDao.xml @@ -267,6 +267,57 @@ DESC + +