RoleService.java 4.4 KB

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