RoleController.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package com.imed.costaccount.web;
  2. import com.imed.costaccount.common.util.PageUtils;
  3. import com.imed.costaccount.common.util.Result;
  4. import com.imed.costaccount.model.dto.RoleEditDTO;
  5. import com.imed.costaccount.model.dto.RoleMenuDTO;
  6. import com.imed.costaccount.model.dto.RoleSaveDTO;
  7. import com.imed.costaccount.model.dto.RoleUserDTO;
  8. import com.imed.costaccount.model.vo.CommonVO;
  9. import com.imed.costaccount.service.RoleMenuService;
  10. import com.imed.costaccount.service.RoleService;
  11. import com.imed.costaccount.service.UserRoleService;
  12. import io.swagger.annotations.Api;
  13. import io.swagger.annotations.ApiOperation;
  14. import org.springframework.web.bind.annotation.*;
  15. import javax.validation.Valid;
  16. import java.util.Arrays;
  17. import java.util.List;
  18. @Api(tags = "角色管理相关")
  19. @RestController
  20. @RequestMapping("/costAccount/role/")
  21. public class RoleController extends AbstractController {
  22. private final RoleService roleService;
  23. private final RoleMenuService roleMenuService;
  24. private final UserRoleService userRoleService;
  25. public RoleController(RoleService roleService, RoleMenuService roleMenuService, UserRoleService userRoleService) {
  26. this.roleService = roleService;
  27. this.roleMenuService = roleMenuService;
  28. this.userRoleService = userRoleService;
  29. }
  30. @ApiOperation("新增一个角色")
  31. @PostMapping("/save")
  32. public Result save(@RequestBody @Valid RoleSaveDTO roleSaveDTO) {
  33. roleService.saveRole(roleSaveDTO, getUser());
  34. return Result.ok();
  35. }
  36. @ApiOperation("查询角色列表")
  37. @GetMapping("/list")
  38. public Result list(@RequestParam(defaultValue = "1", value = "current") Integer page,
  39. @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
  40. @RequestParam(value = "roleName", required = false) String keyword,
  41. @RequestParam(value = "startDate", required = false) String startDate,
  42. @RequestParam(value = "endDate", required = false) String endDate
  43. ) {
  44. PageUtils pageUtils = roleService.selectList(page, pageSize, keyword, getUser(),startDate,endDate);
  45. return Result.ok(pageUtils);
  46. }
  47. @ApiOperation("编辑某个角色")
  48. @PostMapping("/edit")
  49. public Result update(@RequestBody @Valid RoleEditDTO roleEditDTO) {
  50. roleService.updateRole(roleEditDTO, getUserId());
  51. return Result.ok();
  52. }
  53. @ApiOperation("删除")
  54. @PostMapping("/delete")
  55. public Result delete(@RequestBody Long[] roleIds) {
  56. roleService.removeByIds(Arrays.asList(roleIds));
  57. return Result.ok();
  58. }
  59. @ApiOperation("角色对应的人员列表")
  60. @GetMapping("/roleUsers")
  61. public Result roleUsers(@RequestParam Long roleId) {
  62. List<CommonVO> roleUsers = userRoleService.getUsersByRoleId(roleId, getHospId());
  63. return Result.ok(roleUsers);
  64. }
  65. @ApiOperation("角色对应的菜单列表")
  66. @GetMapping("/roleMenus")
  67. public Result roleMenus(@RequestParam Long roleId) {
  68. List<CommonVO> roleUsers = roleMenuService.getMenuByRoleId(roleId, getUser().getHospId());
  69. return Result.ok(roleUsers);
  70. }
  71. @ApiOperation("绑定角色和人员关系时选择列表(可回显)")
  72. @GetMapping("/roleUserList")
  73. public Result roleUserList(@RequestParam Long roleId) {
  74. List<?> list = userRoleService.roleUserList(roleId, getUser().getHospId());
  75. return Result.ok(list);
  76. }
  77. @ApiOperation("编辑角色和人员关系")
  78. @PostMapping("/editUserRole")
  79. public Result saveRoleUser(@RequestBody @Valid RoleUserDTO roleUserDTO) {
  80. userRoleService.saveRoleUser(roleUserDTO, getUser().getHospId());
  81. return Result.ok();
  82. }
  83. @ApiOperation("绑定角色和菜单关系时选择列表可回显")
  84. @GetMapping("/roleMenuList")
  85. public Result roleMenuList(@RequestParam Long roleId) {
  86. List<CommonVO> list = roleMenuService.roleMenuList(roleId, getUser().getHospId());
  87. return Result.ok(list);
  88. }
  89. @ApiOperation("编辑角色和菜单关系")
  90. @PostMapping("/editRoleMenu")
  91. public Result saveRoleMenu(@RequestBody @Valid RoleMenuDTO roleMenuDTO) {
  92. roleMenuService.saveRoleMenu(roleMenuDTO, getUser().getHospId());
  93. return Result.ok();
  94. }
  95. }