RoleService.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. package com.dk.mdm.service.mst;
  2. import com.dk.common.infrastructure.annotaiton.Pagination;
  3. import com.dk.common.model.pojo.PageList;
  4. import com.dk.common.response.ResponseResultUtil;
  5. import com.dk.common.response.ResponseResultVO;
  6. import com.dk.mdm.infrastructure.convert.mst.RoleConvert;
  7. import com.dk.mdm.model.pojo.mst.Role;
  8. import com.dk.mdm.mapper.mst.RoleMapper;
  9. import com.dk.common.service.BaseService;
  10. import com.dk.common.mapper.BaseMapper;
  11. import com.dk.mdm.model.pojo.mst.RoleFun;
  12. import com.dk.mdm.model.pojo.mst.RoleSensitive;
  13. import com.dk.mdm.model.query.mst.RoleQuery;
  14. import com.dk.mdm.model.response.mst.RoleResponse;
  15. import com.dk.mdm.model.vo.mst.RoleVo;
  16. import org.springframework.stereotype.Service;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.transaction.annotation.Transactional;
  19. @Service
  20. @Transactional
  21. public class RoleService extends BaseService<Role> {
  22. @Override
  23. public BaseMapper<Role> getRepository() {
  24. return roleMapper;
  25. }
  26. @Autowired
  27. private RoleMapper roleMapper;
  28. @Autowired
  29. private RoleFunService roleFunService;
  30. @Autowired
  31. private RoleSensitiveService roleSensitiveService;
  32. @Autowired
  33. private RoleConvert roleConvert;
  34. /**
  35. * @desc : 重写主键
  36. * @author : 周兴
  37. * @date : 2024/2/29 20:29
  38. */
  39. @Override
  40. public String getPrimaryKey() {
  41. return "role_id";
  42. }
  43. /**
  44. * @desc : 查询角色
  45. * @author : 于继渤
  46. * @date : 2023/1/5 9:39
  47. */
  48. @Pagination
  49. public ResponseResultVO<PageList<RoleResponse>> selectByCond(RoleQuery roleQuery) {
  50. return super.mergeListWithCount(roleQuery, roleMapper.selectByCond(roleQuery),
  51. roleMapper.countByCond(roleQuery));
  52. }
  53. /**
  54. * @desc : 新建角色
  55. * @author : 于继渤
  56. * @date : 2023/1/5 9:39
  57. */
  58. @Transactional(
  59. rollbackFor = {Exception.class}
  60. )
  61. public ResponseResultVO<?> saveRole(RoleVo roleVO) {
  62. Role role = roleConvert.convertToPo(roleVO);
  63. Integer displayNo = roleMapper.selectDisplayNo(new RoleQuery());
  64. role.setDisplayNo(displayNo);
  65. roleMapper.insert(role);
  66. String setRoleCode = roleMapper.setRoleCode(role);
  67. role.setRoleCode(setRoleCode);
  68. roleMapper.updateById(role);
  69. setRoleItem(roleVO, role);
  70. return ResponseResultUtil.success();
  71. }
  72. private void setRoleItem(RoleVo roleVO, Role role) {
  73. if(roleVO.getRoleFunList() != null && roleVO.getRoleFunList().size() > 0){
  74. //新建角色功能权限
  75. for (RoleFun roleFun : roleVO.getRoleFunList()) {
  76. roleFun.setRoleId(role.getRoleId());
  77. roleFun.setCpId(role.getCpId());
  78. }
  79. roleFunService.saveRoleFun(roleVO.getRoleFunList());
  80. }
  81. if(roleVO.getRoleSensitiveList() != null && roleVO.getRoleSensitiveList().size() > 0){
  82. //新建角色敏感信息权限
  83. for (RoleSensitive roleSensitive : roleVO.getRoleSensitiveList()) {
  84. roleSensitive.setRoleId(role.getRoleId());
  85. roleSensitive.setCpId(role.getCpId());
  86. }
  87. roleSensitiveService.saveRoleSensitive(roleVO.getRoleSensitiveList());
  88. }
  89. }
  90. /**
  91. * @desc : 编辑角色
  92. * @author : 于继渤
  93. * @date : 2023/1/5 9:39
  94. */
  95. @Transactional(
  96. rollbackFor = {Exception.class}
  97. )
  98. public ResponseResultVO<?> updateRole(RoleVo roleVO) {
  99. Role role = roleConvert.convertToPo(roleVO);
  100. roleMapper.updateById(role);
  101. if(roleVO.getRoleFunList() != null){
  102. //删除历史功能权限
  103. roleFunService.deleteRoleId(roleVO.getRoleId());
  104. }
  105. if(roleVO.getRoleSensitiveList() != null){
  106. //删除历史敏感信息权限
  107. roleSensitiveService.deleteRoleId(roleVO.getRoleId());
  108. }
  109. setRoleItem(roleVO, role);
  110. return ResponseResultUtil.success();
  111. }
  112. /**
  113. * @desc : 启用停用
  114. * @author : 于继渤
  115. * @date : 2023/1/5 9:39
  116. */
  117. @Transactional(
  118. rollbackFor = {Exception.class}
  119. )
  120. public ResponseResultVO<?> deactivateEnable(RoleVo roleVO) {
  121. Role role = roleConvert.convertToPo(roleVO);
  122. roleMapper.updateById(role);
  123. return ResponseResultUtil.success();
  124. }
  125. }