Browse Source

难点堵点-组织下拉框"mynextagency-multic"v2

master
yinzuomei 4 years ago
parent
commit
57e78be08b
  1. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerGridDTO.java
  2. 3
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectNextAgencyResultDTO.java
  3. 2
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java
  4. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java
  5. 29
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerGridDTO.java

@ -17,9 +17,10 @@
package com.epmet.dto; package com.epmet.dto;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**
@ -114,5 +115,5 @@ public class ScreenCustomerGridDTO implements Serializable {
private String allParentIds; private String allParentIds;
private String pid; private String pid;
private String pids; private String pids;
private String areaCode;
} }

3
epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectNextAgencyResultDTO.java

@ -3,7 +3,6 @@ package com.epmet.project.dto.result;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
/** /**
* @Description 难点赌点-当前登录人员本级一级下一级组织机构/网格 返参DTO * @Description 难点赌点-当前登录人员本级一级下一级组织机构/网格 返参DTO
@ -30,5 +29,5 @@ public class ProjectNextAgencyResultDTO implements Serializable {
* */ * */
private String orgType; private String orgType;
private String areaCode;
} }

2
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java

@ -138,7 +138,7 @@ public class ProjectController {
**/ **/
@PostMapping("mynextagency-multic") @PostMapping("mynextagency-multic")
public Result<List<ProjectNextAgencyResultDTO>> myNextAgencyMultic(@LoginUser TokenDto tokenDto){ public Result<List<ProjectNextAgencyResultDTO>> myNextAgencyMultic(@LoginUser TokenDto tokenDto){
return new Result<List<ProjectNextAgencyResultDTO>>().ok(projectService.myNextAgencyMultic(tokenDto.getUserId())); return new Result<List<ProjectNextAgencyResultDTO>>().ok(projectService.myNextAgencyMultic(tokenDto.getUserId(),tokenDto.getCustomerId()));
} }
/** /**

3
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java

@ -87,7 +87,8 @@ public interface ProjectService {
* 210622: 新增此API 后端改为从指标库取值 保证平阴县的工作人员看到的下拉框是平阴县以及8个街道 * 210622: 新增此API 后端改为从指标库取值 保证平阴县的工作人员看到的下拉框是平阴县以及8个街道
* *
* @param staffId 当前登录用户id * @param staffId 当前登录用户id
* @param currentCustomerId 当前客户id
* @return com.epmet.project.dto.result.ProjectNextAgencyResultDTO * @return com.epmet.project.dto.result.ProjectNextAgencyResultDTO
*/ */
List<ProjectNextAgencyResultDTO> myNextAgencyMultic(String staffId); List<ProjectNextAgencyResultDTO> myNextAgencyMultic(String staffId,String currentCustomerId);
} }

29
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java

@ -403,10 +403,14 @@ public class ProjectServiceImpl implements ProjectService {
* 210622: 新增此API 后端改为从指标库取值 保证平阴县的工作人员看到的下拉框是平阴县以及8个街道 * 210622: 新增此API 后端改为从指标库取值 保证平阴县的工作人员看到的下拉框是平阴县以及8个街道
* *
* @param staffId 当前登录用户id * @param staffId 当前登录用户id
* @param currentCustomerId 当前客户id
* @return com.epmet.project.dto.result.ProjectNextAgencyResultDTO * @return com.epmet.project.dto.result.ProjectNextAgencyResultDTO
*/ */
@Override @Override
public List<ProjectNextAgencyResultDTO> myNextAgencyMultic(String staffId) { public List<ProjectNextAgencyResultDTO> myNextAgencyMultic(String staffId,String currentCustomerId) {
//多客户测试写死值,别忘了注释掉呀
// staffId="3f04e397cc226e4e2f2531ac4363e3f9";
// currentCustomerId="613cc61a6b8ce4c70d21bd413dac72cc";
//1、当前工作人员所属组织信息 //1、当前工作人员所属组织信息
Result<CustomerAgencyDTO> staffResult = govOrgOpenFeignClient.getAgencyByStaff(staffId); Result<CustomerAgencyDTO> staffResult = govOrgOpenFeignClient.getAgencyByStaff(staffId);
if (!staffResult.success() || null == staffResult.getData()) { if (!staffResult.success() || null == staffResult.getData()) {
@ -417,26 +421,45 @@ public class ProjectServiceImpl implements ProjectService {
staffAgency.setOrgId(staffResult.getData().getId()); staffAgency.setOrgId(staffResult.getData().getId());
staffAgency.setOrgName(staffResult.getData().getOrganizationName()); staffAgency.setOrgName(staffResult.getData().getOrganizationName());
staffAgency.setOrgType("agency"); staffAgency.setOrgType("agency");
staffAgency.setAreaCode(staffResult.getData().getAreaCode());
resultList.add(staffAgency); resultList.add(staffAgency);
//2、查询指标库当前组织的下级组织 //2、查询指标库当前组织的下级组织
List<ScreenCustomerAgencyDTO> agencyDTOList = screenAgencyService.queryNextAgencyList(staffResult.getData().getAreaCode(), StrConstant.EPMETY_STR); List<ScreenCustomerAgencyDTO> agencyDTOList =new ArrayList<>();
Result<List<String>> crmRes = operCrmOpenFeignClient.getAllSubCustomerIds(currentCustomerId);
if (crmRes.success() && CollectionUtils.isNotEmpty(crmRes.getData())) {
log.warn("❤当前客户存在子客户❤");
//如果包含子客户,则根据areaCode查询下一级
agencyDTOList = screenAgencyService.queryNextAgencyList(staffResult.getData().getAreaCode(), StrConstant.EPMETY_STR);
} else {
//当前客户没有子客户,根据agencyId查询下一级组织
agencyDTOList = screenAgencyService.queryNextAgencyList(StrConstant.EPMETY_STR, staffResult.getData().getId());
}
if (CollectionUtils.isNotEmpty(agencyDTOList)) { if (CollectionUtils.isNotEmpty(agencyDTOList)) {
agencyDTOList.forEach(agencyDTO -> { agencyDTOList.forEach(agencyDTO -> {
ProjectNextAgencyResultDTO nextAgency = new ProjectNextAgencyResultDTO(); ProjectNextAgencyResultDTO nextAgency = new ProjectNextAgencyResultDTO();
nextAgency.setOrgId(agencyDTO.getAgencyId()); nextAgency.setOrgId(agencyDTO.getAgencyId());
nextAgency.setOrgName(agencyDTO.getAgencyName()); nextAgency.setOrgName(agencyDTO.getAgencyName());
nextAgency.setOrgType("agency"); nextAgency.setOrgType("agency");
nextAgency.setAreaCode(agencyDTO.getAreaCode());
resultList.add(nextAgency); resultList.add(nextAgency);
}); });
} }
//3、查询指标库当前组织的下级网格 //3、查询指标库当前组织的下级网格
List<ScreenCustomerGridDTO> gridList = screenAgencyService.queryGridList(staffResult.getData().getAreaCode(), StrConstant.EPMETY_STR); List<ScreenCustomerGridDTO> gridList = new ArrayList<>();
if (crmRes.success() && CollectionUtils.isNotEmpty(crmRes.getData())) {
//如果包含子客户,则根据areaCode查询下一级网格
gridList=screenAgencyService.queryGridList(staffResult.getData().getAreaCode(), StrConstant.EPMETY_STR);
} else {
//当前客户没有子客户,根据agencyId查询下一级网格
gridList=screenAgencyService.queryGridList(StrConstant.EPMETY_STR,staffResult.getData().getId());
}
if (CollectionUtils.isNotEmpty(gridList)) { if (CollectionUtils.isNotEmpty(gridList)) {
gridList.forEach(gridDTO -> { gridList.forEach(gridDTO -> {
ProjectNextAgencyResultDTO grid = new ProjectNextAgencyResultDTO(); ProjectNextAgencyResultDTO grid = new ProjectNextAgencyResultDTO();
grid.setOrgId(gridDTO.getGridId()); grid.setOrgId(gridDTO.getGridId());
grid.setOrgName(gridDTO.getGridName()); grid.setOrgName(gridDTO.getGridName());
grid.setOrgType("grid"); grid.setOrgType("grid");
grid.setAreaCode(gridDTO.getAreaCode());
resultList.add(grid); resultList.add(grid);
}); });
} }

Loading…
Cancel
Save