SysResourceController.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. /*
  2. * 爱组搭,低代码组件化开发平台
  3. * ------------------------------------------
  4. * 受知识产权保护,请勿删除版权申明,开发平台不允许做非法网站,后果自负
  5. */
  6. package com.aizuda.boot.modules.system.controller;
  7. import com.aizuda.boot.modules.system.entity.SysResource;
  8. import com.aizuda.boot.modules.system.entity.SysResourceApi;
  9. import com.aizuda.boot.modules.system.entity.param.ResourceParam;
  10. import com.aizuda.boot.modules.system.entity.vo.ResourceTreeVO;
  11. import com.aizuda.boot.modules.system.service.ISysResourceApiService;
  12. import com.aizuda.boot.modules.system.service.ISysResourceService;
  13. import com.aizuda.core.api.ApiController;
  14. import com.aizuda.core.api.PageParam;
  15. import com.aizuda.core.validation.Create;
  16. import com.aizuda.core.validation.Update;
  17. import com.aizuda.service.web.UserSession;
  18. import com.baomidou.kisso.annotation.Permission;
  19. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  20. import io.swagger.v3.oas.annotations.Operation;
  21. import io.swagger.v3.oas.annotations.tags.Tag;
  22. import jakarta.validation.constraints.NotEmpty;
  23. import lombok.AllArgsConstructor;
  24. import org.springframework.validation.annotation.Validated;
  25. import org.springframework.web.bind.annotation.*;
  26. import java.util.List;
  27. import java.util.Map;
  28. /**
  29. * 系统资源 前端控制器
  30. *
  31. * @author 青苗
  32. * @since 2021-11-07
  33. */
  34. @Tag(name = "系统资源")
  35. @RestController
  36. @AllArgsConstructor
  37. @RequestMapping("/sys/resource")
  38. public class SysResourceController extends ApiController {
  39. private ISysResourceService sysResourceService;
  40. private ISysResourceApiService sysResourceApiService;
  41. @Operation(summary = "分页列表")
  42. @Permission("sys:resource:page")
  43. @PostMapping("/page")
  44. public Page<SysResource> getPage(@RequestBody PageParam<SysResource> dto) {
  45. return sysResourceService.page(dto.page(), dto.getData());
  46. }
  47. @Operation(summary = "树列表")
  48. @Permission("sys:resource:listTree")
  49. @GetMapping("/list-tree")
  50. public List<ResourceTreeVO> listTree() {
  51. return sysResourceService.listTree();
  52. }
  53. @Operation(summary = "接口列表")
  54. @Permission("sys:resource:listApi")
  55. @GetMapping("/list-api")
  56. public List<SysResourceApi> listApi(@RequestParam Long id) {
  57. return sysResourceApiService.listByResourceId(id);
  58. }
  59. @Operation(summary = "权限菜单列表")
  60. @Permission(ignore = true)
  61. @GetMapping("/list-menu-permissions")
  62. public Map<String, Object> listMenuPermissions() {
  63. return sysResourceService.listMenuPermissions(UserSession.getLoginInfo());
  64. }
  65. @Operation(summary = "查询 id 信息")
  66. @Permission("sys:resource:get")
  67. @GetMapping("/get")
  68. public SysResource get(@RequestParam Long id) {
  69. return sysResourceService.getById(id);
  70. }
  71. @Operation(summary = "根据 id 修改信息")
  72. @Permission("sys:resource:update")
  73. @PostMapping("/update")
  74. public boolean update(@Validated(Update.class) @RequestBody ResourceParam param) {
  75. return sysResourceService.updateByResourceParam(param);
  76. }
  77. @Operation(summary = "创建添加")
  78. @Permission("sys:resource:create")
  79. @PostMapping("/create")
  80. public Long create(@Validated(Create.class) @RequestBody SysResource sysResource) {
  81. return sysResourceService.save(sysResource) ? sysResource.getId() : null;
  82. }
  83. @Operation(summary = "根据 ids 删除")
  84. @Permission("sys:resource:delete")
  85. @PostMapping("/delete")
  86. public boolean delete(@NotEmpty @RequestBody List<Long> ids) {
  87. return sysResourceService.removeByIds(ids);
  88. }
  89. }