diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java index ee133cd136..d8a8641ddb 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/FunctionDetailFromDTO.java @@ -5,6 +5,7 @@ import lombok.Data; import javax.validation.constraints.NotBlank; import java.io.Serializable; +import java.util.List; /** * 查询客户定制功能列表-接口入参 @@ -25,6 +26,11 @@ public class FunctionDetailFromDTO implements Serializable { */ @NotBlank(message = "客户Id不能为空", groups = {AddUserShowGroup.class}) private String customerId; + /** + * 网格ID + */ + @NotBlank(message = "网格Id不能为空", groups = {AddUserShowGroup.class}) + private String gridId; /** * resi:居民端,work:工作端 @@ -32,4 +38,19 @@ public class FunctionDetailFromDTO implements Serializable { @NotBlank(message = "所属端不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class}) private String clientType; + /** + * token中userId + */ + private String userId; + + /** + * 所属端(居民端:resi 工作端:gov) + */ + private String fromApp; + + /** + * 用户角色key集合 + */ + private List roleKeyList; + } diff --git a/epmet-module/oper-customize/oper-customize-server/pom.xml b/epmet-module/oper-customize/oper-customize-server/pom.xml index 1257fbf218..335c55ad66 100644 --- a/epmet-module/oper-customize/oper-customize-server/pom.xml +++ b/epmet-module/oper-customize/oper-customize-server/pom.xml @@ -64,6 +64,12 @@ 2.0.0 compile + + com.epmet + epmet-user-client + 2.0.0 + compile + diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java index 245d5018a2..76dff2a151 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/CustomerFunctionDetailController.java @@ -18,6 +18,7 @@ package com.epmet.controller; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; @@ -105,7 +106,9 @@ public class CustomerFunctionDetailController { @PostMapping("resifunctiondetaillist") public Result> resiFunctionDetail(@LoginUser TokenDto tokenDto, @RequestBody FunctionDetailFromDTO formDTO) { ValidatorUtils.validateEntity(formDTO, FunctionDetailFromDTO.AddUserShowGroup.class); - return new Result>().ok(customerFunctionDetailService.resiAndWorkFunctionDetail(formDTO)); + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setFromApp(AppClientConstant.APP_RESI); + return new Result>().ok(customerFunctionDetailService.resiFunctionDetail(formDTO)); } /** @@ -118,7 +121,9 @@ public class CustomerFunctionDetailController { public Result> workFunctionDetail(@LoginUser TokenDto tokenDto, @RequestBody FunctionDetailFromDTO formDTO) { ValidatorUtils.validateEntity(formDTO, FunctionDetailFromDTO.AddUserInternalGroup.class); formDTO.setCustomerId(tokenDto.getCustomerId()); - return new Result>().ok(customerFunctionDetailService.resiAndWorkFunctionDetail(formDTO)); + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setFromApp(AppClientConstant.APP_GOV); + return new Result>().ok(customerFunctionDetailService.workFunctionDetail(formDTO)); } /** diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerFunctionRoleDao.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerFunctionRoleDao.java index 4a1eb94497..5a00d7e20a 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerFunctionRoleDao.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerFunctionRoleDao.java @@ -20,6 +20,8 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.CustomerFunctionRoleDTO; import com.epmet.dto.form.CustomerFunctionRoleListFormDTO; +import com.epmet.dto.form.FunctionDetailFromDTO; +import com.epmet.dto.form.SaveCustomerFunctionRoleFormDTO; import com.epmet.dto.result.CustomerFunctionRoleListResultDTO; import com.epmet.entity.CustomerFunctionRoleEntity; import org.apache.ibatis.annotations.Mapper; @@ -40,7 +42,7 @@ public interface CustomerFunctionRoleDao extends BaseDao selectCustomerFunctionRoleList(CustomerFunctionRoleListFormDTO formDTO); + + /** + * @param formDTO + * @return + * @author sun + * @Description 根据用户拥有的角色查询客户的定制功能 + */ + List selectFunctionList(FunctionDetailFromDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java index d0561093e3..7571294f23 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/CustomerFunctionDetailService.java @@ -102,9 +102,17 @@ public interface CustomerFunctionDetailService extends BaseService resiAndWorkFunctionDetail(FunctionDetailFromDTO formDTO); + List resiFunctionDetail(FunctionDetailFromDTO formDTO); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 工作端-根据所属端和客户Id查询客户定制功能列表 + **/ + List workFunctionDetail(FunctionDetailFromDTO formDTO); /** * 修改客户定制功能上下架 diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java index d57623db5d..895b1da73b 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionDetailServiceImpl.java @@ -20,6 +20,7 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; @@ -28,10 +29,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dao.CustomerFunctionDao; -import com.epmet.dao.CustomerFunctionDetailDao; -import com.epmet.dao.FunctionCustomizedDao; -import com.epmet.dao.FunctionShoppingHistoryDao; +import com.epmet.dao.*; import com.epmet.dto.CustomerFunctionDetailDTO; import com.epmet.dto.FunctionCustomizedDTO; import com.epmet.dto.FunctionShoppingHistoryDTO; @@ -40,6 +38,7 @@ import com.epmet.dto.result.*; import com.epmet.entity.CustomerFunctionDetailEntity; import com.epmet.entity.CustomerFunctionEntity; import com.epmet.entity.FunctionShoppingHistoryEntity; +import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.redis.CustomerFunctionDetailRedis; import com.epmet.service.CustomerFunctionDetailService; import com.epmet.service.FunctionShoppingHistoryService; @@ -49,6 +48,7 @@ import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import rx.internal.util.LinkedArrayList; import java.util.*; import java.util.stream.Collectors; @@ -73,6 +73,10 @@ public class CustomerFunctionDetailServiceImpl extends BaseServiceImpl page(Map params) { @@ -126,6 +130,58 @@ public class CustomerFunctionDetailServiceImpl extends BaseServiceImpl resiFunctionDetail(FunctionDetailFromDTO formDTO) { + List restltList = new LinkedList<>(); + //1.根据客户Id和所属端查询客户定制功能列表数据 + logger.info(String.format("根据客户Id和所属端查询客户定制功能列表,对应客户Id->%s,所属端->%s", formDTO.getCustomerId(), formDTO.getClientType())); + List 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()); + } + + //2.调用user服务,获取用户角色信息 + GetRoleKeyListFormDTO dto = new GetRoleKeyListFormDTO(); + dto.setUserId(formDTO.getUserId()); + dto.setGridId(formDTO.getGridId()); + dto.setFromApp(AppClientConstant.APP_RESI); + Result> result = epmetUserOpenFeignClient.getUserRoleKeyList(dto); + if (!result.success()) { + throw new RenException(result.getCode()); + } + formDTO.setRoleKeyList(result.getData()); + + //3.根据用户拥有的角色查询客户的定制功能 + List listFunctionIds = customerFunctionRoleDao.selectFunctionList(formDTO); + + //4.封装结果数据 + listFunctionIds.forEach(id -> { + list.forEach(l -> { + if (id.equals(l.getFunctionId())) { + restltList.add(l); + } + }); + }); + } + + return restltList; + } + /** * @param formDTO * @return @@ -133,21 +189,48 @@ public class CustomerFunctionDetailServiceImpl extends BaseServiceImpl resiAndWorkFunctionDetail(FunctionDetailFromDTO formDTO) { - //根据客户Id和所属端查询客户定制功能列表数据 + public List workFunctionDetail(FunctionDetailFromDTO formDTO) { + List restltList = new LinkedList<>(); + //1.根据客户Id和所属端查询客户定制功能列表数据 logger.info(String.format("根据客户Id和所属端查询客户定制功能列表,对应客户Id->%s,所属端->%s", formDTO.getCustomerId(), formDTO.getClientType())); List list = baseDao.selectFunctionDetailList(formDTO); - try { - String join = String.join(",", new ArrayList<>()); - String customerParameter = java.net.URLEncoder.encode(join, "utf-8"); - list.forEach(l->{ - l.setCustomerParameter(customerParameter); + 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()); + } + + //2.调用user服务,获取用户角色信息 + GetRoleKeyListFormDTO dto = new GetRoleKeyListFormDTO(); + dto.setUserId(formDTO.getUserId()); + dto.setFromApp(AppClientConstant.APP_GOV); + Result> result = epmetUserOpenFeignClient.getUserRoleKeyList(dto); + if (!result.success()) { + throw new RenException(result.getCode()); + } + formDTO.setRoleKeyList(result.getData()); + + //3.根据用户拥有的角色查询客户的定制功能 + List listFunctionIds = customerFunctionRoleDao.selectFunctionList(formDTO); + + //4.封装结果数据 + listFunctionIds.forEach(id -> { + list.forEach(l -> { + if (id.equals(l.getFunctionId())) { + restltList.add(l); + } + }); }); - } catch (Exception e) { - logger.error("CustomerFunctionDetailServiceImpl.resiAndWorkFunctionDetail->集合参数URLEncode失败"); - throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode(), e.getMessage()); } - return list; + + return restltList; } @Override diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionRoleServiceImpl.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionRoleServiceImpl.java index 4ebfaa9f5f..f930ee6bdc 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionRoleServiceImpl.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/CustomerFunctionRoleServiceImpl.java @@ -129,8 +129,8 @@ public class CustomerFunctionRoleServiceImpl extends BaseServiceImpl + + DELETE FROM customer_function_role WHERE customer_id = #{customerId} + AND function_id = #{functionId} \ No newline at end of file diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GetRoleKeyListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GetRoleKeyListFormDTO.java new file mode 100644 index 0000000000..263b263a8f --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GetRoleKeyListFormDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 获取用户拥有的角色key集合-接口入参 + * @Author sun + */ +@Data +public class GetRoleKeyListFormDTO implements Serializable{ + private static final long serialVersionUID = -7994579456530273809L; + + /** + * 用户Id + * */ + private String userId; + /** + * 网格Id + * */ + private String gridId; + /** + * 所属端(居民端:resi 工作端:gov) + * */ + private String fromApp; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index 4e3da40627..939bbd7b80 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -306,4 +306,11 @@ public interface EpmetUserOpenFeignClient { */ @PostMapping("epmetuser/staffrole/changeroleorg") Result changeRoleOrg(@RequestBody StaffRoleDTO formDTO); + + /** + * @Author sun + * @Description 居民端-查询用户角色key列表 + **/ + @PostMapping("epmetuser/role/getuserrolekeylist") + Result> getUserRoleKeyList(@RequestBody GetRoleKeyListFormDTO dto); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index a60c9611ae..2a6db644e7 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -205,4 +205,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien public Result changeRoleOrg(StaffRoleDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "changeRoleOrg", formDTO); } + + @Override + public Result> getUserRoleKeyList(GetRoleKeyListFormDTO dto) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserRoleKeyList", dto); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RoleController.java index e7c82100a6..98ec4c998f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RoleController.java @@ -17,7 +17,9 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -26,6 +28,7 @@ import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.dto.RoleDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.excel.RoleExcel; import com.epmet.service.RoleService; import org.springframework.beans.factory.annotation.Autowired; @@ -91,4 +94,15 @@ public class RoleController { ExcelUtils.exportExcelToTarget(response, null, list, RoleExcel.class); } + /** + * @param formDTO + * @return + * @Author sun + * @Description 居民端-查询用户角色key列表 + **/ + @PostMapping("getuserrolekeylist") + public Result> getUserRoleKeyList(@RequestBody GetRoleKeyListFormDTO formDTO) { + return new Result>().ok(roleService.getUserRoleKeyList(formDTO)); + } + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java index dfc5407272..3124fc68c7 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java @@ -23,6 +23,7 @@ import com.epmet.commons.mybatis.entity.DataScope; import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; import com.epmet.dto.form.CustomerStaffRoleListFormDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.dto.result.CustomerStaffRoleListResultDTO; import com.epmet.dto.result.CustomerStaffRoleResultDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; @@ -122,4 +123,12 @@ public interface StaffRoleDao extends BaseDao { * @return void */ void updateStaffRoleOrgId(StaffRoleDTO dto); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 工作端-查询用户角色key列表 + **/ + List selectStaffRoleKeyList(GetRoleKeyListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java index e91e0c8d46..3801f0fcf4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java @@ -20,6 +20,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserRoleDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.dto.form.UserRoleFormDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.entity.UserRoleEntity; @@ -63,4 +64,12 @@ public interface UserRoleDao extends BaseDao { * @Date 14:24 2020-07-23 **/ List getUserRoleInfoByUserId(@Param("userId") String userId); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 居民端-查询用户角色key列表 + **/ + List selectUserRoleKeyList(GetRoleKeyListFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java index 72e055c4b1..21ac0465b0 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java @@ -20,6 +20,7 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.RoleDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.entity.RoleEntity; import java.util.List; @@ -99,4 +100,12 @@ public interface RoleService extends BaseService { * @return RoleDTO */ RoleDTO getRoleByKey(RoleDTO role); + + /** + * @param formDTO + * @return + * @Author sun + * @Description 居民端-查询用户角色key列表 + **/ + List getUserRoleKeyList(GetRoleKeyListFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java index 8322ee7226..40b1e478ff 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java @@ -20,11 +20,15 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.dao.RoleDao; +import com.epmet.dao.StaffRoleDao; +import com.epmet.dao.UserRoleDao; import com.epmet.dto.RoleDTO; +import com.epmet.dto.form.GetRoleKeyListFormDTO; import com.epmet.entity.RoleEntity; import com.epmet.redis.RoleRedis; import com.epmet.service.RoleService; @@ -33,6 +37,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -48,6 +53,10 @@ public class RoleServiceImpl extends BaseServiceImpl implem @Autowired private RoleRedis roleRedis; + @Autowired + private UserRoleDao userRoleDao; + @Autowired + private StaffRoleDao staffRoleDao; @Override public PageData page(Map params) { @@ -106,4 +115,21 @@ public class RoleServiceImpl extends BaseServiceImpl implem RoleEntity entity = baseDao.selectRoleByKey(ConvertUtils.sourceToTarget(role, RoleEntity.class)); return ConvertUtils.sourceToTarget(entity, RoleDTO.class); } + + /** + * @param formDTO + * @return + * @Author sun + * @Description 居民端-查询用户角色key列表 + **/ + @Override + public List getUserRoleKeyList(GetRoleKeyListFormDTO formDTO) { + List list = new ArrayList<>(); + if(AppClientConstant.APP_RESI.equals(formDTO.getFromApp())){ + list = userRoleDao.selectUserRoleKeyList(formDTO); + }else if(AppClientConstant.APP_GOV.equals(formDTO.getFromApp())){ + list = staffRoleDao.selectStaffRoleKeyList(formDTO); + } + return list; + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index aabdfd6d71..0b39b350b7 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -181,4 +181,16 @@ and sr.ROLE_ID = #{roleId} and sr.DEL_FLAG='0' + + diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml index 803fa40621..d7726d3b7b 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml @@ -88,4 +88,16 @@ ur.USER_ID = #{userId} + +