NewPermissionApiController.java 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. package com.goafanti.permission.controller;
  2. import javax.annotation.Resource;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.web.bind.annotation.RequestMapping;
  5. import org.springframework.web.bind.annotation.RequestMethod;
  6. import org.springframework.web.bind.annotation.RestController;
  7. import com.goafanti.common.bo.Result;
  8. import com.goafanti.common.constant.ErrorConstants;
  9. import com.goafanti.common.controller.BaseApiController;
  10. import com.goafanti.common.dao.PermissionMapper;
  11. import com.goafanti.common.model.Permission;
  12. import com.goafanti.common.utils.StringUtils;
  13. import com.goafanti.permission.bo.PermissionBo;
  14. import com.goafanti.permission.service.PermissionService;
  15. @RestController
  16. @RequestMapping("api/admin")
  17. public class NewPermissionApiController extends BaseApiController {
  18. @Resource
  19. private PermissionService permissionService;
  20. @Autowired
  21. PermissionMapper permissionMapper;
  22. /**权限管理列表 **/
  23. @RequestMapping(value = "/permissions", method = RequestMethod.POST)
  24. public Result permissions() {
  25. Result res = new Result();
  26. res.setData(permissionService.findPermissionsAll());
  27. return res;
  28. }
  29. /**权限管理最上级新增 **/
  30. @RequestMapping(value = "/addSupPermission" , method = RequestMethod.POST)
  31. public Result addSupPermission(Permission record ){
  32. Result res = new Result();
  33. if(StringUtils.isBlank(record.getName())){
  34. res.getError().add(buildError("","权限名不能为空"));
  35. return res;
  36. }
  37. String aut=permissionMapper.selectAutNoByName(record.getName());
  38. if(aut!=null){
  39. res.getError().add(buildError("","权限已存在"));
  40. return res;
  41. }
  42. res.setData(permissionService.insertn(record));
  43. return res;
  44. }
  45. /**新增上级名称自动生成 **/
  46. @RequestMapping(value = "/selectSuperIdById" , method = RequestMethod.POST)
  47. public Permission selectSuperIdById(String id ){
  48. return permissionService.selectSuperIdById(id);
  49. }
  50. /**权限管理新增 **/
  51. @RequestMapping(value = "/addPermission" , method = RequestMethod.POST)
  52. public Result addPermission(Permission record ){
  53. Result res = new Result();
  54. if(StringUtils.isBlank(record.getName())|| StringUtils.isBlank(record.getUrl())
  55. || StringUtils.isBlank(record.getSuperId())){
  56. res.getError().add(buildError("","名称、路径、上级不能为空"));
  57. return res;
  58. }
  59. String aut=permissionMapper.selectAutNoByName(record.getName());
  60. if(aut!=null){
  61. res.getError().add(buildError("","权限已存在"));
  62. return res;
  63. }
  64. String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
  65. if(supaut.length()>=7){
  66. res.getError().add(buildError("","权限层级超限"));
  67. return res;
  68. }
  69. res.setData(permissionService.insertSubordinate(record));
  70. return res;
  71. }
  72. /**删除列表信息**/
  73. @RequestMapping(value = "/deleteById" , method = RequestMethod.POST)
  74. public Result deleteById(String id){
  75. Result res = new Result();
  76. if(StringUtils.isBlank(id)){
  77. res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "id"));
  78. return res;
  79. }
  80. Permission permission=permissionMapper.selectAllById(id);
  81. String superId=permission.getName();
  82. int subordinate=permissionMapper.selectCountBySuperId(superId);
  83. if(subordinate>0){
  84. res.getError().add(buildError("","存在下级权限不能删除"));
  85. return res;
  86. }
  87. res.setData(permissionService.deleteById(id));
  88. return res;
  89. }
  90. /**编辑页面数据读取**/
  91. @RequestMapping(value = "/selectAllById" , method = RequestMethod.POST)
  92. public Result selectAllById(String id){
  93. Result res = new Result();
  94. res.setData(permissionService.selectAllById(id));
  95. return res;
  96. }
  97. /**上级权限自动补全查询**/
  98. @RequestMapping(value = "/selectName" , method = RequestMethod.POST)
  99. public Result selectName(String name){
  100. Result res = new Result();
  101. res.setData(permissionService.selectName(name));
  102. return res;
  103. }
  104. /**修改信息**/
  105. @RequestMapping(value = "/updateById" , method = RequestMethod.POST)
  106. public Result updateById(Permission record ){
  107. Result res = new Result();
  108. if(StringUtils.isBlank(record.getName())|| StringUtils.isBlank(record.getUrl())
  109. || StringUtils.isBlank(record.getSuperId())){
  110. res.getError().add(buildError("","名称、路径、上级不能为空"));
  111. return res;
  112. }
  113. String pname=permissionMapper.selectAutNoByName(record.getSuperId());
  114. if(StringUtils.isBlank(pname)){
  115. res.getError().add(buildError("","上级权限不匹配"));
  116. return res;
  117. }
  118. String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
  119. if(supaut.length()>=7){
  120. res.getError().add(buildError("","权限层级超限"));
  121. return res;
  122. }
  123. res.setData(permissionService.updateById(record));
  124. return res;
  125. }
  126. }