Browse Source

小程序获取定制功能列表接口调整为一个接口

dev_shibei_match
sunyuchao 5 years ago
parent
commit
d62a760ffc
  1. 7
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java
  2. 6
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java
  3. 12
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java
  4. 59
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java
  5. 2
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerFunctionRoleDao.xml

7
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java

@ -33,7 +33,7 @@ public class FunctionDetailFromDTO implements Serializable {
private String gridId;
/**
* resi居民端work工作端
* resi居民端gov工作端
*/
@NotBlank(message = "所属端不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class})
private String clientType;
@ -43,11 +43,6 @@ public class FunctionDetailFromDTO implements Serializable {
*/
private String userId;
/**
* 所属端居民端resi 工作端gov
*/
private String fromApp;
/**
* 用户角色key集合
*/

6
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java

@ -107,8 +107,7 @@ public class CustomerFunctionDetailController {
public Result<List<FunctionDetailResultDTO>> resiFunctionDetail(@LoginUser TokenDto tokenDto, @RequestBody FunctionDetailFromDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, FunctionDetailFromDTO.AddUserShowGroup.class);
formDTO.setUserId(tokenDto.getUserId());
formDTO.setFromApp(AppClientConstant.APP_RESI);
return new Result<List<FunctionDetailResultDTO>>().ok(customerFunctionDetailService.resiFunctionDetail(formDTO));
return new Result<List<FunctionDetailResultDTO>>().ok(customerFunctionDetailService.resiAndWorkFunctionDetail(formDTO));
}
/**
@ -122,8 +121,7 @@ public class CustomerFunctionDetailController {
ValidatorUtils.validateEntity(formDTO, FunctionDetailFromDTO.AddUserInternalGroup.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
formDTO.setFromApp(AppClientConstant.APP_GOV);
return new Result<List<FunctionDetailResultDTO>>().ok(customerFunctionDetailService.workFunctionDetail(formDTO));
return new Result<List<FunctionDetailResultDTO>>().ok(customerFunctionDetailService.resiAndWorkFunctionDetail(formDTO));
}
/**

12
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java

@ -102,17 +102,9 @@ public interface CustomerFunctionDetailService extends BaseService<CustomerFunct
* @param formDTO
* @return
* @Author sun
* @Description 居民端-根据所属端和客户Id查询客户定制功能列表
* @Description 居民端工作端根据所属端和客户Id查询客户定制功能列表
**/
List<FunctionDetailResultDTO> resiFunctionDetail(FunctionDetailFromDTO formDTO);
/**
* @param formDTO
* @return
* @Author sun
* @Description 工作端-根据所属端和客户Id查询客户定制功能列表
**/
List<FunctionDetailResultDTO> workFunctionDetail(FunctionDetailFromDTO formDTO);
List<FunctionDetailResultDTO> resiAndWorkFunctionDetail(FunctionDetailFromDTO formDTO);
/**
* 修改客户定制功能上下架

59
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java

@ -137,7 +137,7 @@ public class CustomerFunctionDetailServiceImpl extends BaseServiceImpl<CustomerF
* @Description 根据所属端和客户Id查询客户定制功能列表
**/
@Override
public List<FunctionDetailResultDTO> resiFunctionDetail(FunctionDetailFromDTO formDTO) {
public List<FunctionDetailResultDTO> resiAndWorkFunctionDetail(FunctionDetailFromDTO formDTO) {
List<FunctionDetailResultDTO> restltList = new LinkedList<>();
//1.根据客户Id和所属端查询客户定制功能列表数据
logger.info(String.format("根据客户Id和所属端查询客户定制功能列表,对应客户Id->%s,所属端->%s", formDTO.getCustomerId(), formDTO.getClientType()));
@ -158,61 +158,14 @@ public class CustomerFunctionDetailServiceImpl extends BaseServiceImpl<CustomerF
//2.调用user服务,获取用户角色信息
GetRoleKeyListFormDTO dto = new GetRoleKeyListFormDTO();
dto.setUserId(formDTO.getUserId());
dto.setGridId(formDTO.getGridId());
dto.setFromApp(AppClientConstant.APP_RESI);
Result<List<String>> result = epmetUserOpenFeignClient.getUserRoleKeyList(dto);
if (!result.success()) {
throw new RenException(result.getCode());
}
formDTO.setRoleKeyList(result.getData());
//3.根据用户拥有的角色查询客户的定制功能
List<String> listFunctionIds = customerFunctionRoleDao.selectFunctionList(formDTO);
//4.封装结果数据
listFunctionIds.forEach(id -> {
list.forEach(l -> {
if (id.equals(l.getFunctionId())) {
restltList.add(l);
}
});
});
}
return restltList;
}
/**
* @param formDTO
* @return
* @Author sun
* @Description 根据所属端和客户Id查询客户定制功能列表
**/
@Override
public List<FunctionDetailResultDTO> workFunctionDetail(FunctionDetailFromDTO formDTO) {
List<FunctionDetailResultDTO> restltList = new LinkedList<>();
//1.根据客户Id和所属端查询客户定制功能列表数据
logger.info(String.format("根据客户Id和所属端查询客户定制功能列表,对应客户Id->%s,所属端->%s", formDTO.getCustomerId(), formDTO.getClientType()));
List<FunctionDetailResultDTO> list = baseDao.selectFunctionDetailList(formDTO);
if (null != list && list.size() > NumConstant.ZERO) {
//1-1.设置自定义json数据(暂时为空)
try {
String join = String.join(",", new ArrayList<>());
String customerParameter = java.net.URLEncoder.encode(join, "utf-8");
list.forEach(l->{
l.setCustomerParameter(customerParameter);
});
} catch (Exception e) {
logger.error("CustomerFunctionDetailServiceImpl.resiAndWorkFunctionDetail->集合参数URLEncode失败");
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), e.getMessage());
dto.setFromApp(formDTO.getClientType());
//居民端需要传网格Id 热心居民的角色是在网格里的
if(AppClientConstant.APP_RESI.equals(formDTO.getClientType())){
dto.setGridId(formDTO.getGridId());
}
//2.调用user服务,获取用户角色信息
GetRoleKeyListFormDTO dto = new GetRoleKeyListFormDTO();
dto.setUserId(formDTO.getUserId());
dto.setFromApp(AppClientConstant.APP_GOV);
Result<List<String>> result = epmetUserOpenFeignClient.getUserRoleKeyList(dto);
if (!result.success()) {
logger.error(String.format("调用user服务,获取用户角色信息失败,用户Id:%s ,所属端:%s", formDTO.getUserId(), formDTO.getClientType()));
throw new RenException(result.getCode());
}
formDTO.setRoleKeyList(result.getData());

2
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerFunctionRoleDao.xml

@ -22,7 +22,7 @@
FROM customer_function_role
WHERE del_flag = '0'
AND customer_id = #{customerId}
AND from_app = #{fromApp}
AND from_app = #{clientType}
<foreach collection="roleKeyList" item="roleKey" index="index" open="AND ( " separator=" OR " close=")">
role_key = #{roleKey}
</foreach>

Loading…
Cancel
Save