Browse Source

《002、项目分类字典查询》接口开发

dev_shibei_match
zhangyongzhangyong 4 years ago
parent
commit
c548c5b4de
  1. 43
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/CustomerCategoryDTO.java
  2. 41
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectCategoryDictResultDTO.java
  3. 6
      epmet-module/data-report/data-report-server/pom.xml
  4. 14
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java
  5. 10
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java
  6. 54
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java
  7. 6
      epmet-module/gov-issue/gov-issue-client/pom.xml
  8. 16
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
  9. 10
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
  10. 6
      epmet-module/gov-issue/gov-issue-server/pom.xml
  11. 17
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java
  12. 14
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java
  13. 14
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java
  14. 5
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectCategoryDictServiceImpl.java
  15. 17
      epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml
  16. 11
      epmet-module/oper-crm/oper-crm-client/src/main/java/com/epmet/feign/OperCrmOpenFeignClient.java
  17. 5
      epmet-module/oper-crm/oper-crm-client/src/main/java/com/epmet/feign/fallback/OperCrmOpenFeignClientFallback.java
  18. 17
      epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/controller/CustomerController.java
  19. 9
      epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/dao/CustomerDao.java
  20. 10
      epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/CustomerService.java
  21. 4
      epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java
  22. 10
      epmet-module/oper-crm/oper-crm-server/src/main/resources/mapper/CustomerDao.xml

43
epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/CustomerCategoryDTO.java

@ -0,0 +1,43 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.project.dto;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class CustomerCategoryDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 父id
* pid = 0 查询一级分类
* pid != 0 查询二级分类
*/
private String pid;
/**
* 客户Id
*/
private String customerId;
}

41
epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectCategoryDictResultDTO.java

@ -0,0 +1,41 @@
package com.epmet.project.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Author zhangyong
* @Description 002项目分类字典查询
**/
@Data
public class ProjectCategoryDictResultDTO implements Serializable {
private static final long serialVersionUID = 8529179932504931368L;
/**
* 一级分类编码
*/
private String categoryCode;
/**
* 一级分类名称
*/
private String categoryName;
/**
* 二级分类列表
*/
private List<ProjectCategoryDictResultDTO> children;
/**
* 主键
**/
private String id;
/**
* 上级分类ID 顶级此列存储0
**/
private String pid;
}

6
epmet-module/data-report/data-report-server/pom.xml

@ -94,6 +94,12 @@
<version>2.0.0</version> <version>2.0.0</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>gov-issue-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<build> <build>

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

@ -129,4 +129,18 @@ public class ProjectController {
public Result<List<ProjectNextAgencyResultDTO>> myNextAgency(@LoginUser TokenDto tokenDto){ public Result<List<ProjectNextAgencyResultDTO>> myNextAgency(@LoginUser TokenDto tokenDto){
return new Result<List<ProjectNextAgencyResultDTO>>().ok(projectService.getMyNextAgency(tokenDto)); return new Result<List<ProjectNextAgencyResultDTO>>().ok(projectService.getMyNextAgency(tokenDto));
} }
/**
* 002项目分类字典查询
* 查询当前客户的父客户下项目分类字典
*
* @param tokenDto
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>>
* @Author zhangyong
* @Date 10:41 2021-03-22
**/
@PostMapping("categorydict")
public Result<List<ProjectCategoryDictResultDTO>> categoryDict(@LoginUser TokenDto tokenDto) {
return new Result<List<ProjectCategoryDictResultDTO>>().ok(projectService.getCategoryDict(tokenDto));
}
} }

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

@ -70,4 +70,14 @@ public interface ProjectService {
* @date 2020.10.19 16:38 * @date 2020.10.19 16:38
**/ **/
List<ProjectNextAgencyResultDTO> getMyNextAgency(TokenDto tokenDto); List<ProjectNextAgencyResultDTO> getMyNextAgency(TokenDto tokenDto);
/**
* 002项目分类字典查询
*
* @param tokenDto
* @return java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>
* @Author zhangyong
* @Date 14:26 2021-03-22
**/
List<ProjectCategoryDictResultDTO> getCategoryDict(TokenDto tokenDto);
} }

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

@ -3,6 +3,7 @@ package com.epmet.datareport.service.project.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
@ -18,20 +19,21 @@ import com.epmet.dto.form.ProcessListFormDTO;
import com.epmet.dto.form.SubAgencyFormDTO; import com.epmet.dto.form.SubAgencyFormDTO;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
import com.epmet.evaluationindex.screen.dto.result.DepartmentNameListResultDTO; import com.epmet.evaluationindex.screen.dto.result.DepartmentNameListResultDTO;
import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.*;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.feign.GovProjectOpenFeignClient;
import com.epmet.project.constant.ProjectConstant; import com.epmet.project.constant.ProjectConstant;
import com.epmet.project.dto.CustomerCategoryDTO;
import com.epmet.project.dto.FactAgencyProjectDailyDTO; import com.epmet.project.dto.FactAgencyProjectDailyDTO;
import com.epmet.project.dto.form.DifficultyRankFormDTO; import com.epmet.project.dto.form.DifficultyRankFormDTO;
import com.epmet.project.dto.form.ProjectIncrTrendFormDTO; import com.epmet.project.dto.form.ProjectIncrTrendFormDTO;
import com.epmet.project.dto.result.ProjectDetailResultDTO;
import com.epmet.project.dto.result.*; import com.epmet.project.dto.result.*;
import com.epmet.project.dto.result.ProjectDetailResultDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.feign.ResiGroupOpenFeignClient; import com.epmet.resi.group.feign.ResiGroupOpenFeignClient;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -50,7 +52,7 @@ import java.util.List;
@Slf4j @Slf4j
@Service @Service
public class ProjectServiceImpl implements ProjectService { public class ProjectServiceImpl implements ProjectService {
private Logger logger = LogManager.getLogger(getClass());
@Autowired @Autowired
private ProjectDao projectDao; private ProjectDao projectDao;
@Autowired @Autowired
@ -64,6 +66,11 @@ public class ProjectServiceImpl implements ProjectService {
private GovOrgOpenFeignClient govOrgOpenFeignClient; private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Autowired @Autowired
private ResiGroupOpenFeignClient resiGroupOpenFeignClient; private ResiGroupOpenFeignClient resiGroupOpenFeignClient;
@Autowired
private GovIssueOpenFeignClient govIssueOpenFeignClient;
@Autowired
private OperCrmOpenFeignClient operCrmOpenFeignClient;
/** /**
* @Author sun * @Author sun
* @Description 数据-项目-获取汇总数据 * @Description 数据-项目-获取汇总数据
@ -350,4 +357,41 @@ public class ProjectServiceImpl implements ProjectService {
return result; return result;
} }
@Override
public List<ProjectCategoryDictResultDTO> getCategoryDict(TokenDto tokenDto) {
List<ProjectCategoryDictResultDTO> result = new ArrayList<>();
Result<String> parentCustomerId = operCrmOpenFeignClient.getExternalAndParentCustomerId(tokenDto.getCustomerId());
if (!parentCustomerId.success() && null == parentCustomerId.getData()) {
logger.warn(String.format("调用%s服务查询外部客户的 父级客户ID 失败,入参%s", ServiceConstant.OPER_CRM_SERVER,
JSON.toJSONString(tokenDto.getCustomerId())));
return result;
}
CustomerCategoryDTO argDto = new CustomerCategoryDTO();
argDto.setCustomerId(parentCustomerId.getData());
argDto.setPid(NumConstant.ZERO_STR);
// 获取客户一级分类
Result<List<ProjectCategoryDictResultDTO>> parentCategoryDict = govIssueOpenFeignClient.getCustomerCategoryDict(argDto);
if (!parentCategoryDict.success()) {
logger.warn(String.format("调用%s服务查询当前客户的父客户下,项目分类字典失败,入参%s", ServiceConstant.GOV_ISSUE_SERVER,
JSON.toJSONString(tokenDto.getCustomerId())));
} else {
result = parentCategoryDict.getData();
// 获取客户二级分类
argDto.setPid(NumConstant.TWO_STR);
Result<List<ProjectCategoryDictResultDTO>> childrenCategoryDict = govIssueOpenFeignClient.getCustomerCategoryDict(argDto);
for (ProjectCategoryDictResultDTO p : result) {
List<ProjectCategoryDictResultDTO> children = new ArrayList<>();
for (ProjectCategoryDictResultDTO c : childrenCategoryDict.getData()) {
if (p.getId().equals(c.getPid())) {
ProjectCategoryDictResultDTO dto = new ProjectCategoryDictResultDTO();
dto.setCategoryCode(c.getCategoryCode());
dto.setCategoryName(c.getCategoryName());
children.add(dto);
}
}
p.setChildren(children);
}
}
return result;
}
} }

6
epmet-module/gov-issue/gov-issue-client/pom.xml

@ -29,5 +29,11 @@
<version>2.0.0</version> <version>2.0.0</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>data-report-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
</project> </project>

16
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java

@ -2,13 +2,12 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.IssueApplicationDTO;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueSuggestionDTO;
import com.epmet.dto.*; import com.epmet.dto.*;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
import com.epmet.feign.fallback.GovIssueOpenFeignClientFallBack; import com.epmet.feign.fallback.GovIssueOpenFeignClientFallBack;
import com.epmet.project.dto.CustomerCategoryDTO;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import com.epmet.resi.group.dto.group.form.AllIssueFormDTO; import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO;
@ -272,4 +271,15 @@ public interface GovIssueOpenFeignClient {
@PostMapping("/gov/issue/issue/detail") @PostMapping("/gov/issue/issue/detail")
Result<IssueResultDTO> queryIssueDetail(@RequestBody IssueDetailFormDTO formDTO); Result<IssueResultDTO> queryIssueDetail(@RequestBody IssueDetailFormDTO formDTO);
/**
* 获取客户 分类字典 信息
*
* @param dto
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>>
* @Author zhangyong
* @Date 14:10 2021-03-22
**/
@PostMapping(value = "/gov/issue/issueprojectcategorydict/getcustomercategorydict")
Result<List<ProjectCategoryDictResultDTO>> getCustomerCategoryDict(@RequestBody CustomerCategoryDTO dto);
} }

10
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java

@ -3,13 +3,12 @@ package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.IssueApplicationDTO;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueSuggestionDTO;
import com.epmet.dto.*; import com.epmet.dto.*;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
import com.epmet.feign.GovIssueOpenFeignClient; import com.epmet.feign.GovIssueOpenFeignClient;
import com.epmet.project.dto.CustomerCategoryDTO;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import com.epmet.resi.group.dto.group.form.AllIssueFormDTO; import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO;
@ -237,4 +236,9 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient
public Result<IssueResultDTO> queryIssueDetail(IssueDetailFormDTO formDTO) { public Result<IssueResultDTO> queryIssueDetail(IssueDetailFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "detail", formDTO); return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "detail", formDTO);
} }
@Override
public Result<List<ProjectCategoryDictResultDTO>> getCustomerCategoryDict(CustomerCategoryDTO customerCategoryDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "getCustomerCategoryDict", customerCategoryDTO);
}
} }

6
epmet-module/gov-issue/gov-issue-server/pom.xml

@ -96,6 +96,12 @@
<version>2.0.0</version> <version>2.0.0</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>data-report-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<build> <build>

17
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueProjectCategoryDictController.java

@ -34,6 +34,8 @@ import com.epmet.dto.form.ProjectSaveCategoryFormDTO;
import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.dto.result.CustomerCategoryListResultDTO;
import com.epmet.dto.result.ProjectIssueCategoryResultDTO; import com.epmet.dto.result.ProjectIssueCategoryResultDTO;
import com.epmet.excel.IssueProjectCategoryDictExcel; import com.epmet.excel.IssueProjectCategoryDictExcel;
import com.epmet.project.dto.CustomerCategoryDTO;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import com.epmet.service.IssueProjectCategoryDictService; import com.epmet.service.IssueProjectCategoryDictService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -166,4 +168,19 @@ public class IssueProjectCategoryDictController {
return new Result<ProjectIssueCategoryResultDTO>().ok(issueProjectCategoryDictService.delCategory(formDTO)); return new Result<ProjectIssueCategoryResultDTO>().ok(issueProjectCategoryDictService.delCategory(formDTO));
} }
/**
* 获取客户 分类字典 信息
*
* @param dto
* pid = 0 查询一级分类
* pid != 0 查询二级分类
* @return com.epmet.commons.tools.utils.Result<java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>>
* @Author zhangyong
* @Date 14:10 2021-03-22
**/
@PostMapping("getcustomercategorydict")
public Result<List<ProjectCategoryDictResultDTO>> getCustomerCategoryDict(@RequestBody CustomerCategoryDTO dto){
return new Result<List<ProjectCategoryDictResultDTO>>().ok(issueProjectCategoryDictService.listCategoryDict(dto.getCustomerId(),
dto.getPid()));
}
} }

14
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectCategoryDictDao.java

@ -22,6 +22,7 @@ import com.epmet.dto.IssueProjectCategoryDictDTO;
import com.epmet.dto.form.IssueProjectCategoryDictListFormDTO; import com.epmet.dto.form.IssueProjectCategoryDictListFormDTO;
import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.dto.result.CustomerCategoryListResultDTO;
import com.epmet.entity.IssueProjectCategoryDictEntity; import com.epmet.entity.IssueProjectCategoryDictEntity;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -73,4 +74,17 @@ public interface IssueProjectCategoryDictDao extends BaseDao<IssueProjectCategor
* @date 2020.12.10 13:37 * @date 2020.12.10 13:37
*/ */
IssueProjectCategoryDictEntity selectSingleByCustomerIdAndCategoryNameAndCategoryType(@Param("customerId")String customerId,@Param("categoryName")String categoryName,@Param("categoryType")String categoryType); IssueProjectCategoryDictEntity selectSingleByCustomerIdAndCategoryNameAndCategoryType(@Param("customerId")String customerId,@Param("categoryName")String categoryName,@Param("categoryType")String categoryType);
/**
* 获取客户 分类字典 信息
*
* @param customerId
* @param pid pid = 0 查询一级分类
* pid != 0 查询二级分类
*
* @return java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>
* @Author zhangyong
* @Date 14:10 2021-03-22
**/
List<ProjectCategoryDictResultDTO> selectListCategoryDict(@Param("customerId") String customerId, @Param("pid") String pid);
} }

14
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueProjectCategoryDictService.java

@ -26,6 +26,7 @@ import com.epmet.dto.form.ProjectSaveCategoryFormDTO;
import com.epmet.dto.result.CustomerCategoryListResultDTO; import com.epmet.dto.result.CustomerCategoryListResultDTO;
import com.epmet.dto.result.ProjectIssueCategoryResultDTO; import com.epmet.dto.result.ProjectIssueCategoryResultDTO;
import com.epmet.entity.IssueProjectCategoryDictEntity; import com.epmet.entity.IssueProjectCategoryDictEntity;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -142,4 +143,17 @@ public interface IssueProjectCategoryDictService extends BaseService<IssueProjec
* @Author sun * @Author sun
**/ **/
ProjectIssueCategoryResultDTO delCategory(ProjectSaveCategoryFormDTO formDTO); ProjectIssueCategoryResultDTO delCategory(ProjectSaveCategoryFormDTO formDTO);
/**
* 获取客户 分类字典 信息
*
* @param customerId
* @param pid pid = 0 查询一级分类
* pid != 0 查询二级分类
*
* @return java.util.List<com.epmet.project.dto.result.ProjectCategoryDictResultDTO>
* @Author zhangyong
* @Date 14:10 2021-03-22
**/
List<ProjectCategoryDictResultDTO> listCategoryDict(String customerId, String pid);
} }

5
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueProjectCategoryDictServiceImpl.java

@ -38,6 +38,7 @@ import com.epmet.dto.result.ProjectIssueCategoryResultDTO;
import com.epmet.dto.result.ProjectIssueDTOResultDTO; import com.epmet.dto.result.ProjectIssueDTOResultDTO;
import com.epmet.entity.IssueProjectCategoryDictEntity; import com.epmet.entity.IssueProjectCategoryDictEntity;
import com.epmet.entity.IssueProjectTagDictEntity; import com.epmet.entity.IssueProjectTagDictEntity;
import com.epmet.project.dto.result.ProjectCategoryDictResultDTO;
import com.epmet.redis.IssueProjectCategoryDictRedis; import com.epmet.redis.IssueProjectCategoryDictRedis;
import com.epmet.service.IssueProjectCategoryDictService; import com.epmet.service.IssueProjectCategoryDictService;
import com.epmet.service.IssueProjectTagDictService; import com.epmet.service.IssueProjectTagDictService;
@ -221,4 +222,8 @@ public class IssueProjectCategoryDictServiceImpl extends BaseServiceImpl<IssuePr
return null; return null;
} }
@Override
public List<ProjectCategoryDictResultDTO> listCategoryDict(String customerId, String pid) {
return baseDao.selectListCategoryDict(customerId, pid);
}
} }

17
epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectCategoryDictDao.xml

@ -96,4 +96,21 @@
</choose> </choose>
LIMIT 1 LIMIT 1
</select> </select>
<select id="selectListCategoryDict" resultType="com.epmet.project.dto.result.ProjectCategoryDictResultDTO">
SELECT
CATEGORY_CODE categoryCode,
CATEGORY_NAME categoryName,
PID,
ID
FROM issue_project_category_dict d
WHERE d.CUSTOMER_ID = #{customerId}
AND d.DEL_FLAG ='0' AND d.IS_DISABLE = 'enable'
<if test="pid != null and pid == 0">
AND d.PID = '0'
</if>
<if test="pid != null and pid != 0">
AND d.PID != '0'
</if>
</select>
</mapper> </mapper>

11
epmet-module/oper-crm/oper-crm-client/src/main/java/com/epmet/feign/OperCrmOpenFeignClient.java

@ -122,4 +122,15 @@ public interface OperCrmOpenFeignClient {
**/ **/
@GetMapping("/oper/crm/customer/getallsubcustomerids/{customerId}") @GetMapping("/oper/crm/customer/getallsubcustomerids/{customerId}")
Result<List<String>> getAllSubCustomerIds(@PathVariable("customerId") String customerId); Result<List<String>> getAllSubCustomerIds(@PathVariable("customerId") String customerId);
/**
* 获取外部客户的父级 客户id
*
* @param customerId
* @return com.epmet.commons.tools.utils.Result<java.lang.String>
* @Author zhangyong
* @Date 14:57 2021-03-22
**/
@GetMapping("/oper/crm/customer/getexternalandparentcustomerid/{customerId}")
Result<String> getExternalAndParentCustomerId(@PathVariable("customerId") String customerId);
} }

5
epmet-module/oper-crm/oper-crm-client/src/main/java/com/epmet/feign/fallback/OperCrmOpenFeignClientFallback.java

@ -95,4 +95,9 @@ public class OperCrmOpenFeignClientFallback implements OperCrmOpenFeignClient {
public Result<List<String>> getAllSubCustomerIds(String customerId) { public Result<List<String>> getAllSubCustomerIds(String customerId) {
return ModuleUtils.feignConError(ServiceConstant.OPER_CRM_SERVER, "getAllSubCustomerIds", customerId); return ModuleUtils.feignConError(ServiceConstant.OPER_CRM_SERVER, "getAllSubCustomerIds", customerId);
} }
@Override
public Result<String> getExternalAndParentCustomerId(String customerId) {
return ModuleUtils.feignConError(ServiceConstant.OPER_CRM_SERVER, "getExternalAndParentCustomerId", customerId);
}
} }

17
epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/controller/CustomerController.java

@ -376,4 +376,21 @@ public class CustomerController {
} }
return new Result<>(); return new Result<>();
} }
/**
* 获取外部客户的父级 客户id
*
* @param customerId
* @return com.epmet.commons.tools.utils.Result<java.lang.String>
* @Author zhangyong
* @Date 14:57 2021-03-22
**/
@GetMapping("getexternalandparentcustomerid/{customerId}")
public Result<String> getExternalAndParentCustomerId(@PathVariable("customerId") String customerId){
if(StringUtils.isNotBlank(customerId)){
String resultDTO = customerService.getExternalAndParentCustomerId(customerId);
return new Result<String>().ok(resultDTO);
}
return new Result<>();
}
} }

9
epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/dao/CustomerDao.java

@ -98,4 +98,13 @@ public interface CustomerDao extends BaseDao<CustomerEntity> {
*/ */
List<CustomerListResultDTO> selectAllCustomerList(@Param("customerName") String customerName); List<CustomerListResultDTO> selectAllCustomerList(@Param("customerName") String customerName);
/**
* 获取外部客户的父级 客户id
*
* @param customerId
* @return java.lang.String
* @Author zhangyong
* @Date 14:57 2021-03-22
**/
String getExternalAndParentCustomerId(@Param("customerId") String customerId);
} }

10
epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/CustomerService.java

@ -226,4 +226,14 @@ public interface CustomerService extends BaseService<CustomerEntity> {
* @Date 2021/2/3 12:52 * @Date 2021/2/3 12:52
**/ **/
CustomerRelationInfoResultDTO queryCustomerInfoByCustomerId(String customerId); CustomerRelationInfoResultDTO queryCustomerInfoByCustomerId(String customerId);
/**
* 获取外部客户的父级 客户id
*
* @param customerId
* @return java.lang.String
* @Author zhangyong
* @Date 14:57 2021-03-22
**/
String getExternalAndParentCustomerId(String customerId);
} }

4
epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java

@ -785,4 +785,8 @@ public class CustomerServiceImpl extends BaseServiceImpl<CustomerDao, CustomerEn
return resultDTO; return resultDTO;
} }
@Override
public String getExternalAndParentCustomerId(String customerId) {
return baseDao.getExternalAndParentCustomerId(customerId);
}
} }

10
epmet-module/oper-crm/oper-crm-server/src/main/resources/mapper/CustomerDao.xml

@ -120,4 +120,14 @@
AND customer_name LIKE concat('%', trim(#{customerName}), '%') AND customer_name LIKE concat('%', trim(#{customerName}), '%')
</if> </if>
</select> </select>
<select id="getExternalAndParentCustomerId" resultType="String">
SELECT
CR.PARENT_CUSTOMER_ID AS rootCustomerId
FROM customer_relation cr
WHERE cr.DEL_FLAG = '0'
AND cr.CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
AND cr.PARENT_CUSTOMER_ID != '0'
AND cr.CUSTOMER_TYPE = 'external'
</select>
</mapper> </mapper>

Loading…
Cancel
Save