diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java index 066944f63..abb9fa499 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java @@ -88,6 +88,20 @@ public class SysUserController { return new Result().ok(data); } + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 查询用户角色Id + * @Date 2020/2/3 8:13 + **/ + @GetMapping("getRoleIdList/{userId}") + public Result> getRoleIdList(@PathVariable("userId") Long userId) { + //用户角色列表 + List roleIdList = sysRoleUserService.getRoleIdList(userId); + return new Result>().ok(roleIdList); + } + @GetMapping("info") @ApiOperation("登录用户信息") public Result info(@ApiIgnore UserDetail user) { diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java index 7ca4195e9..158882166 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java @@ -71,23 +71,32 @@ public interface AdminFeignClient { @GetMapping("sys/deptgridplatform/selectByDeptId/{deptId}") Result getDeptGridPlatformDTO(@PathVariable("deptId") String deptId); - /** - * @Description: 根据部门id,查询部门下的所有用户手机号 - * @Param: [deptId] - * @return: com.elink.esua.epdc.commons.tools.utils.Result> - * @Author: zy - * @Date: 2020-01-09 - */ + /** + * @Description: 根据部门id,查询部门下的所有用户手机号 + * @Param: [deptId] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-01-09 + */ @GetMapping(value ="sys/user/getUserPhoneByListDeptId", consumes = MediaType.APPLICATION_JSON_VALUE) Result> getUserPhoneByListDeptId(List deptId); - /** - * @Description: 根据议题网格ID查询拥有这个网格数据权限且是网格长的角色,再根据角色查出所有用户手机号 - * @Param: [deptId] - * @return: com.elink.esua.epdc.commons.tools.utils.Result> - * @Author: zy - * @Date: 2020-01-09 - */ + /** + * @Description: 根据议题网格ID查询拥有这个网格数据权限且是网格长的角色,再根据角色查出所有用户手机号 + * @Param: [deptId] + * @return: com.elink.esua.epdc.commons.tools.utils.Result> + * @Author: zy + * @Date: 2020-01-09 + */ @GetMapping("sys/user/getSysGridLeaderPhone/{deptId}") Result> getSysGridLeaderPhone(@PathVariable("deptId") Long deptId); + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 根据用户ID获取角色id列表 + * @Date 2020/2/3 8:16 + **/ + @GetMapping("sys/user/getRoleIdList/{userId}") + Result> getRoleIdList(@PathVariable("userId") Long userId); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java index 3d260100f..dc240e68a 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java @@ -54,4 +54,9 @@ public class AdminFeignClientFallback implements AdminFeignClient { public Result> getSysGridLeaderPhone(@PathVariable("deptId") Long deptId) { return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getSysGridLeaderPhone", deptId); } + + @Override + public Result> getRoleIdList(Long userId) { + return null; + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java index d971b7eff..749e6f46b 100755 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -82,6 +82,7 @@ import com.elink.esua.epdc.modules.item.dao.ItemGridPlatformDao; import com.elink.esua.epdc.modules.item.dao.ItemHandleProcessDao; import com.elink.esua.epdc.modules.item.entity.*; import com.elink.esua.epdc.modules.item.service.*; +import com.elink.esua.epdc.modules.rolecategory.service.HandleRoleCategoryService; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -161,6 +162,9 @@ public class ItemServiceImpl extends BaseServiceImpl implem @Autowired private IssueOverseeResultsTask issueOverseeResultsTask; + @Autowired + private HandleRoleCategoryService handleRoleCategoryService; + @Override public PageData page(Map params) { IPage page = baseDao.selectPage( @@ -331,18 +335,7 @@ public class ItemServiceImpl extends BaseServiceImpl implem // 获取已流转部门 List itemDeptDTOS = itemDeptService.listOfItemDept(id, user.getDeptId()); // 获取可操作处理和可流转部门 - switch (user.getTypeKey()) { - case OrganizationTypeConstant.ORG_TYPE_GRID_PARTY: - resultDTO = this.getHandleCategoryAndCirculationDeptOfGrid(resultDTO, itemDeptDTOS); - break; - case OrganizationTypeConstant.ORG_TYPE_COMMUNITY_PARTY: - case OrganizationTypeConstant.ORG_TYPE_STREET_DEPT: - case OrganizationTypeConstant.ORG_TYPE_DISTRICT_DEPT: - resultDTO = this.getHandleCategory(resultDTO); - break; - case OrganizationTypeConstant.ORG_TYPE_STREET_PARTY: - resultDTO = this.getHandleCategoryAndCirculationDeptOfStreet(resultDTO, itemDeptDTOS); - } + resultDTO = getHandleCategoryAndCirculationDept(resultDTO, user.getId()); //获取项目基本信息 ItemEntity entity = this.selectById(id); // 获取项目处理进度 @@ -356,6 +349,29 @@ public class ItemServiceImpl extends BaseServiceImpl implem return resultDTO; } + /** + * @param resultDTO + * @param userId + * @return com.elink.esua.epdc.dto.item.result.ItemDetailForPCEndResultDTO + * @Author yinzuomei + * @Description 可处理操作、吹哨部门数据来源改为从关系表获取 + * @Date 2020/2/3 8:02 + **/ + private ItemDetailForPCEndResultDTO getHandleCategoryAndCirculationDept(ItemDetailForPCEndResultDTO resultDTO, + Long userId) { + Result> roleIdList = adminFeignClient.getRoleIdList(userId); + if (!roleIdList.success() || roleIdList.getData().isEmpty()) { + throw new RenException("获取角色Id列表失败"); + } + //可处理操作 + List handleResultDTOS = handleRoleCategoryService.listItemHandleResultDTO(roleIdList.getData()); + //可流转部门 + List deptResultDTOS = handleRoleCategoryService.listItemCirculationDeptResultDTO(roleIdList.getData()); + resultDTO.setHandleResultDTOS(handleResultDTOS); + resultDTO.setDeptResultDTOS(deptResultDTOS); + return resultDTO; + } + /** * 项目详情-网格-可做操作和可流转部门 * @@ -1276,14 +1292,14 @@ public class ItemServiceImpl extends BaseServiceImpl implem } } - /** + /** * @Description: 某三种情况下, 查询当前项目下的上级部门id,做去重处理,向部门下的所有人员发送短信 * @Description: 1.街道做吹哨, 做回应处理; 2.反馈回应; 3.上报网格化平台 - * @Param: [dto] - * @return: void - * @Author: zy - * @Date: 2020-01-14 - */ + * @Param: [dto] + * @return: void + * @Author: zy + * @Date: 2020-01-14 + */ private void superiorDeptSmsHandle(ItemHandleSubmitFormDTO dto){ UserDetail user = SecurityUser.getUser(); //获取当前登录人信息 List deptId = new ArrayList<>(); diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/dao/HandleRoleCategoryDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/dao/HandleRoleCategoryDao.java index f199cccc8..dd5f709a5 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/dao/HandleRoleCategoryDao.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/dao/HandleRoleCategoryDao.java @@ -18,9 +18,12 @@ package com.elink.esua.epdc.modules.rolecategory.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.item.result.ItemCirculationDeptResultDTO; +import com.elink.esua.epdc.dto.item.result.ItemHandleResultDTO; import com.elink.esua.epdc.dto.rulecategory.result.HandleRoleCategoryPermissionDTO; import com.elink.esua.epdc.modules.rolecategory.entity.HandleRoleCategoryEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -55,8 +58,26 @@ public interface HandleRoleCategoryDao extends BaseDao * @param roleId * @return java.util.List * @Author yinzuomei - * @Description 根据角色id查询角色对应处理类别权限,供下拉框使用 + * @Description 根据角色id查询角色对应处理类别权限, 供下拉框使用 * @Date 2019/12/26 15:16 **/ List listHandleRoleCategoryPermission(String roleId); + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 根据角色id查询可处理操作列表 + * @Date 2020/2/3 8:42 + **/ + List selectListItemHandleResultDTO(@Param("roleIdList") List roleIdList); + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 根据角色id可流转部门列表 + * @Date 2020/2/3 8:43 + **/ + List selectListItemCirculationDeptResultDTO(@Param("roleIdList") List roleIdList); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/HandleRoleCategoryService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/HandleRoleCategoryService.java index 0c027bd48..81b72d0c3 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/HandleRoleCategoryService.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/HandleRoleCategoryService.java @@ -21,6 +21,8 @@ package com.elink.esua.epdc.modules.rolecategory.service; import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.item.result.ItemCirculationDeptResultDTO; +import com.elink.esua.epdc.dto.item.result.ItemHandleResultDTO; import com.elink.esua.epdc.dto.rulecategory.HandleRoleCategoryDTO; import com.elink.esua.epdc.dto.rulecategory.form.HandleRoleCategoryFormDTO; import com.elink.esua.epdc.dto.rulecategory.result.HandleRoleCategoryPermissionDTO; @@ -108,19 +110,38 @@ public interface HandleRoleCategoryService extends BaseService> + * @return com.elink.esua.epdc.commons.tools.utils.Result> * @Author yinzuomei * @Description * @Date 2019/12/24 16:11 **/ - Result> listCategoryId(String roleId); + Result> listCategoryId(String roleId); - /** - * @param roleId - * @return com.elink.esua.epdc.commons.tools.utils.Result> - * @Author yinzuomei - * @Description 查询角色对应项目处理类别权限 供下拉框使用 - * @Date 2019/12/26 16:09 - **/ - Result> listHandleRoleCategoryPermission(String roleId); + /** + * @param roleId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author yinzuomei + * @Description 查询角色对应项目处理类别权限 供下拉框使用 + * @Date 2019/12/26 16:09 + **/ + @Deprecated + Result> listHandleRoleCategoryPermission(String roleId); + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 可处理操作 + * @Date 2020/2/3 8:27 + **/ + List listItemHandleResultDTO(List roleIdList); + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 可流转部门 + * @Date 2020/2/3 8:27 + **/ + List listItemCirculationDeptResultDTO(List roleIdList); } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/impl/HandleRoleCategoryServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/impl/HandleRoleCategoryServiceImpl.java index f8aff5633..7c0a7b0e1 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/impl/HandleRoleCategoryServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/rolecategory/service/impl/HandleRoleCategoryServiceImpl.java @@ -25,6 +25,8 @@ import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.item.result.ItemCirculationDeptResultDTO; +import com.elink.esua.epdc.dto.item.result.ItemHandleResultDTO; import com.elink.esua.epdc.dto.rulecategory.HandleRoleCategoryDTO; import com.elink.esua.epdc.dto.rulecategory.form.HandleRoleCategoryFormDTO; import com.elink.esua.epdc.dto.rulecategory.result.HandleRoleCategoryPermissionDTO; @@ -174,4 +176,28 @@ public class HandleRoleCategoryServiceImpl extends BaseServiceImpl list = baseDao.listHandleRoleCategoryPermission(roleId); return new Result>().ok(list); } + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 可处理操作 + * @Date 2020/2/3 8:25 + **/ + @Override + public List listItemHandleResultDTO(List roleIdList) { + return baseDao.selectListItemHandleResultDTO(roleIdList); + } + + /** + * @param roleIdList + * @return java.util.List + * @Author yinzuomei + * @Description 可流转部门 + * @Date 2020/2/3 8:25 + **/ + @Override + public List listItemCirculationDeptResultDTO(List roleIdList) { + return baseDao.selectListItemCirculationDeptResultDTO(roleIdList); + } } diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/rolecategory/HandleRoleCategoryDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/rolecategory/HandleRoleCategoryDao.xml index c34516428..6a8e5e7e9 100644 --- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/rolecategory/HandleRoleCategoryDao.xml +++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/rolecategory/HandleRoleCategoryDao.xml @@ -47,4 +47,48 @@ AND m.ROLE_ID =#{roleId}) order by c.SORT asc + + + + + +