diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml
index 3f0c56a777..5cc1d89587 100644
--- a/epmet-module/data-report/data-report-server/pom.xml
+++ b/epmet-module/data-report/data-report-server/pom.xml
@@ -14,6 +14,11 @@
4.0.0
+
+ com.epmet
+ gov-org-client
+ 2.0.0
+
com.epmet
data-report-client
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 47a4765288..cd6648151c 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
@@ -1,12 +1,13 @@
-package com.epmet.module.project.controller;
+package com.epmet.datareport.controller.project;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
-import com.epmet.module.project.service.ProjectService;
+import com.epmet.datareport.service.project.ProjectService;
import com.epmet.project.constant.ProjectConstant;
+import com.epmet.project.dto.form.DifficultyRankFormDTO;
import com.epmet.project.dto.form.ProjectIncrTrendFormDTO;
import com.epmet.project.dto.result.*;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,7 +41,7 @@ public class ProjectController {
/**
* @Author sun
- * @Description 数据-项目-获取组织下饼图数据
+ * @Description t
**/
@PostMapping("summaryinfo")
public Result> summaryInfo(@LoginUser TokenDto tokenDto) {
@@ -78,4 +79,33 @@ public class ProjectController {
return new Result>().ok(projectService.getProjectIncrTrend(tokenDto, formDTO));
}
+ /**
+ * @Description 难点赌点-耗时最长|涉及部门最多|处理次数
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @param param
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ @PostMapping("difficultyrank")
+ public Result> difficultyRank(@RequestBody DifficultyRankFormDTO param){
+ ValidatorUtils.validateEntity(param, DifficultyRankFormDTO.DifficultyRankInternalGroup.class);
+ return new Result>().ok(projectService.getDifficultyRank(param));
+ }
+
+ /**
+ * @Description 难点赌点-耗时最长|涉及部门最多|处理次数
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @param tokenDto
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ @PostMapping("mynextagency")
+ public Result> myNextAgency(@LoginUser TokenDto tokenDto){
+ return new Result>().ok(projectService.getMyNextAgency(tokenDto));
+ }
+
+
+
}
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 b8920580bf..870c25a6d2 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
@@ -1,6 +1,7 @@
package com.epmet.datareport.dao.project;
import com.epmet.project.dto.FactAgencyProjectDailyDTO;
+import com.epmet.project.dto.form.DifficultyRankFormDTO;
import com.epmet.project.dto.result.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -55,4 +56,22 @@ public interface ProjectDao {
* @Description 查询机关月统计近十二个月数据
**/
List selectIncrTrendMonthly(@Param("agencyId") String agencyId);
+
+ /**
+ * @Description 查询难点赌点-耗时最长|涉及部门最多|处理次数
+ * @param
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ List difficultyRank(DifficultyRankFormDTO difficultyRankFormDTO);
+
+ /**
+ * @Description 查询难点堵点的图片list
+ * @param
+ * @return
+ * @author jiangyy
+ * @date 2020.10.20 10:13
+ **/
+ List getDifficultyImgList(String eventId);
}
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 baa6e664e0..a51d157689 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
@@ -1,6 +1,7 @@
-package com.epmet.module.project.service;
+package com.epmet.datareport.service.project;
import com.epmet.commons.tools.security.dto.TokenDto;
+import com.epmet.project.dto.form.DifficultyRankFormDTO;
import com.epmet.project.dto.form.ProjectIncrTrendFormDTO;
import com.epmet.project.dto.result.*;
@@ -41,4 +42,23 @@ public interface ProjectService {
* @Description 数据-项目-日/月数据查询
**/
List getProjectIncrTrend(TokenDto tokenDto, ProjectIncrTrendFormDTO formDTO);
+
+ /**
+ * @Description 难点赌点-耗时最长|涉及部门最多|处理次数
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @param param
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ List getDifficultyRank(DifficultyRankFormDTO param);
+
+ /**
+ * @Description 难点赌点-获取组织下拉框
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ List getMyNextAgency(TokenDto tokenDto);
}
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 41af9351ac..376ac9ffad 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
@@ -1,16 +1,26 @@
package com.epmet.datareport.service.project.impl;
+import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.DateUtils;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.constant.DataSourceConstant;
import com.epmet.datareport.dao.project.ProjectDao;
+import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.form.LoginUserDetailsFormDTO;
+import com.epmet.dto.form.SubAgencyFormDTO;
+import com.epmet.dto.result.GridByStaffResultDTO;
import com.epmet.dto.result.LoginUserDetailsResultDTO;
+import com.epmet.dto.result.SubAgencyResultDTO;
+import com.epmet.dto.result.SubListResultDTO;
import com.epmet.feign.EpmetUserOpenFeignClient;
-import com.epmet.module.project.service.ProjectService;
+import com.epmet.feign.GovOrgOpenFeignClient;
+import com.epmet.datareport.service.project.ProjectService;
import com.epmet.project.constant.ProjectConstant;
import com.epmet.project.dto.FactAgencyProjectDailyDTO;
+import com.epmet.project.dto.form.DifficultyRankFormDTO;
import com.epmet.project.dto.form.ProjectIncrTrendFormDTO;
import com.epmet.project.dto.result.*;
import org.springframework.beans.BeanUtils;
@@ -36,6 +46,9 @@ public class ProjectServiceImpl implements ProjectService {
@Autowired
private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
+ @Autowired
+ private GovOrgOpenFeignClient govOrgOpenFeignClient;
+
/**
* @Author sun
* @Description 数据-项目-获取汇总数据
@@ -183,4 +196,98 @@ public class ProjectServiceImpl implements ProjectService {
return agencyId;
}
+ /**
+ * @author jiangyy
+ * @Description 获取userId
+ */
+ private String getLoginUserUserId(TokenDto tokenDto) {
+ LoginUserDetailsFormDTO dto = new LoginUserDetailsFormDTO();
+ BeanUtils.copyProperties(tokenDto, dto);
+ LoginUserDetailsResultDTO data = epmetUserOpenFeignClient.getLoginUserDetails(dto).getData();
+ String userId = data.getUserId();
+ if (null == userId || "".equals(userId)) {
+ throw new RenException(ProjectConstant.GET_AGENCYID);
+ }
+ return userId;
+ }
+
+ /**
+ * @Description 难点赌点-获取组织下拉框
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ @Override
+ public List getMyNextAgency(TokenDto tokenDto) {
+ List resultList = new ArrayList<>();
+
+ //1、根据token获取本级agencyId、获取userId
+ String agencyId = getLoginUserDetails(tokenDto);
+ String userId=getLoginUserUserId(tokenDto);
+
+ //2、获取本级组织机构
+ Result customerAgencyDTO = govOrgOpenFeignClient.getAgencyById(agencyId);
+ ProjectNextAgencyResultDTO angencyDto = new ProjectNextAgencyResultDTO();
+ angencyDto.setOrgId(agencyId);
+ angencyDto.setOrgName(customerAgencyDTO.getData().getOrganizationName());
+ angencyDto.setOrgType(customerAgencyDTO.getData().getLevel());
+ resultList.add(angencyDto);
+
+
+ //3、获取下一级组织机构\网格
+ if( customerAgencyDTO.getData().getLevel() == "community" ){
+ //取下级网格
+ Result> gridListResult = govOrgOpenFeignClient.listGridsbystaffid(userId);
+ List gridList = gridListResult.getData();
+ for(int i=0;i SubAgencyResultDTO = govOrgOpenFeignClient.subAgencyList(form);
+
+ List subAgencyList = SubAgencyResultDTO.getData().getAgencyList();
+ for(int i=0;i();
+ return resultList;
+ }
+
+ /**
+ * @Description 难点赌点-耗时最长|涉及部门最多|处理次数
+ * @NEI https://nei.netease.com/interface/detail/res/?pid=57068&id=321614
+ * @param param
+ * @return
+ * @author jiangyy
+ * @date 2020.10.19 16:38
+ **/
+ @DataSource(value = DataSourceConstant.EVALUATION_INDEX,datasourceNameFromArg = true)
+ @Override
+ public List getDifficultyRank(DifficultyRankFormDTO param) {
+ List result = projectDao.difficultyRank(param);
+ for (int i = 0; i < result.size (); i ++){
+ List imgUrlList ;
+ imgUrlList = projectDao.getDifficultyImgList(result.get(i).getProjectId()) ;
+
+ result.get(i).setImgUrlList(imgUrlList);
+ }
+ if(null == result) return new ArrayList<>();
+ return result;
+ }
+
}
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 21b472e4de..04fa7f0d4f 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
@@ -234,4 +234,39 @@
)a ORDER BY a.month_id DESC,a.type ASC
+
+
+
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/SubAgencyFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/SubAgencyFormDTO.java
index 6cdf21a193..ce80929e97 100644
--- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/SubAgencyFormDTO.java
+++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/SubAgencyFormDTO.java
@@ -39,5 +39,10 @@ public class SubAgencyFormDTO implements Serializable {
@NotBlank(message = "机关组织ID不能为空")
private String agencyId;
+ /**
+ * 机关组织数量
+ */
+ private Integer agencyNum = 10;
+
}
\ No newline at end of file
diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubListResultDTO.java
index 17dc985695..b6bf347332 100644
--- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubListResultDTO.java
+++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/SubListResultDTO.java
@@ -41,5 +41,9 @@ public class SubListResultDTO implements Serializable {
*/
private String agencyName = "";
+ /**
+ * 机关组织级别
+ */
+ private String agencyLevel = "";
}
\ No newline at end of file
diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
index 2ebce80475..2856183dd3 100644
--- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
+++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
@@ -250,4 +250,13 @@ public interface GovOrgOpenFeignClient {
**/
@PostMapping("/gov/org/customeragency/userinfoext")
Result userInfoExt(@RequestBody ExtUserInfoResultDTO result);
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 组织首页-下级机关列表
+ */
+ @PostMapping("/gov/org/agency/subagencylist")
+ Result subAgencyList(@RequestBody SubAgencyFormDTO formDTO);
}
diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
index 8f70da4530..b132ebec6a 100644
--- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
+++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
@@ -146,4 +146,9 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient {
public Result userInfoExt(ExtUserInfoResultDTO result) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "userInfoExt", result);
}
+
+ @Override
+ public Result subAgencyList(SubAgencyFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "subAgencyList", formDTO);
+ }
}
diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
index cb1865ba35..08154a921d 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
+++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
@@ -38,7 +38,6 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
-import javax.xml.validation.Validator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
index eeeecf60db..8c404a53c2 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
+++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerAgencyDao.java
@@ -57,7 +57,7 @@ public interface CustomerAgencyDao extends BaseDao {
* @Author sun
* @Description 组织首页-下级机关列表
**/
- List selectSubAgencyById(@Param("pId") String pId);
+ List selectSubAgencyById(@Param("pId") String pId, @Param("agencyNum") Integer agencyNum);
/**
* @param pId
diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java
index 826e186d7f..9171f61c9d 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java
+++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java
@@ -25,14 +25,12 @@ import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.CustomerAgencyConstant;
import com.epmet.constant.RoleKeyConstants;
-import com.epmet.constant.UserWorkType;
import com.epmet.dao.CustomerAgencyDao;
import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.GovStaffRoleDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.entity.CustomerAgencyEntity;
-import com.epmet.feign.EpmetUserFeignClient;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.redis.CustomerAgencyRedis;
import com.epmet.service.AgencyService;
@@ -177,7 +175,7 @@ public class AgencyServiceImpl implements AgencyService {
public Result removeAgency(RemoveAgencyFormDTO formDTO) {
Result result = new Result();
//1:查询当前机关是否存在所属下级机关,存在下级的不能删除
- List agencyList = customerAgencyDao.selectSubAgencyById(formDTO.getAgencyId());
+ List agencyList = customerAgencyDao.selectSubAgencyById(formDTO.getAgencyId(), 10);
if (null != agencyList && agencyList.size() > NumConstant.ZERO) {
result.setCode(EpmetErrorCode.NOT_DEL_AGENCY.getCode());
result.setMsg(EpmetErrorCode.NOT_DEL_AGENCY.getMsg());
@@ -238,7 +236,7 @@ public class AgencyServiceImpl implements AgencyService {
public Result subAgencyList(SubAgencyFormDTO formDTO) {
SubAgencyResultDTO subAgencyResultDTO = new SubAgencyResultDTO();
//1:根据当前机关Id查询直属下一级机关列表
- List agencyList = customerAgencyDao.selectSubAgencyById(formDTO.getAgencyId());
+ List agencyList = customerAgencyDao.selectSubAgencyById(formDTO.getAgencyId(),formDTO.getAgencyNum());
subAgencyResultDTO.setAgencyList(null == agencyList ? new ArrayList() : agencyList);
//2:统计下一级机关数
subAgencyResultDTO.setSubAgencyCount(agencyList.size());
diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
index 0721780e09..43ed9bb5e3 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
+++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml
@@ -62,12 +62,13 @@