MenuController.java 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  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.MenuEditDTO;
  5. import com.imed.costaccount.model.dto.MenuSaveDTO;
  6. import com.imed.costaccount.model.vo.NavVO;
  7. import com.imed.costaccount.service.MenuService;
  8. import io.swagger.annotations.Api;
  9. import io.swagger.annotations.ApiOperation;
  10. import org.springframework.web.bind.annotation.*;
  11. import javax.validation.Valid;
  12. import java.util.Arrays;
  13. import java.util.List;
  14. /**
  15. * 菜单管理
  16. *
  17. * @author huangrui
  18. * @date 2021-08-03 08:56:22
  19. */
  20. @Api(tags = "菜单管理")
  21. @RestController
  22. @RequestMapping("/costAccount/menu/")
  23. public class MenuController extends AbstractController {
  24. private final MenuService menuService;
  25. public MenuController(MenuService menuService) {
  26. this.menuService = menuService;
  27. }
  28. @ApiOperation("保存菜单")
  29. @PostMapping("/save")
  30. public Result save(@RequestBody @Valid MenuSaveDTO menuSaveDTO) {
  31. menuService.saveMenu(menuSaveDTO, getUser());
  32. return Result.ok();
  33. }
  34. /**
  35. * 分页查询列表
  36. */
  37. @ApiOperation("菜单列表")
  38. @GetMapping("/list")
  39. public Result list(@RequestParam(defaultValue = "1", value = "current") Integer page,
  40. @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
  41. @RequestParam(value = "name",required = false) String name) {
  42. PageUtils pageUtils = menuService.selectList(page, pageSize, getUser(),name);
  43. return Result.ok(pageUtils);
  44. }
  45. @ApiOperation("编辑某个菜单")
  46. @PostMapping("/edit")
  47. public Result update(@RequestBody @Valid MenuEditDTO menuDTO) {
  48. menuService.updateMenu(menuDTO, getUser());
  49. return Result.ok();
  50. }
  51. /**
  52. * 删除
  53. */
  54. @ApiOperation("删除某个菜单")
  55. @PostMapping("/delete")
  56. public Result delete(@RequestBody Long[] menuIds) {
  57. menuService.removeByIds(Arrays.asList(menuIds));
  58. return Result.ok();
  59. }
  60. @ApiOperation("获取当前登录人拥有的菜单")
  61. @GetMapping("/nav")
  62. public Result nav() {
  63. List<NavVO> list = menuService.getNav(getUser());
  64. return Result.ok(list);
  65. }
  66. }