| | |
| | | package com.sandu.ximon.admin.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.sandu.common.domain.ResponseVO; |
| | | import com.sandu.common.execption.BusinessException; |
| | | import com.sandu.common.util.ResponseUtil; |
| | | import com.sandu.ximon.admin.param.MenuParam; |
| | | import com.sandu.ximon.admin.security.PermissionConfig; |
| | | import com.sandu.ximon.admin.security.SecurityUtils; |
| | | import com.sandu.ximon.admin.service.MenuService; |
| | | import com.sandu.ximon.dao.bo.MenuNode; |
| | | import com.sandu.ximon.dao.domain.Menu; |
| | | import com.sandu.ximon.dao.enums.AdministratorEnums; |
| | | import com.sandu.ximon.dao.enums.MenuEnum; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | |
| | | @RequestMapping("/admin/menu") |
| | | public class MenuController { |
| | | |
| | | private PermissionConfig permissionConfig; |
| | | |
| | | private final MenuService menuService; |
| | | |
| | | // @GetMapping("treeMenuList") |
| | |
| | | // List<MenuNode> menuTrees = menuService.buildTree(list); |
| | | // return ResponseUtil.success(menuTrees); |
| | | // } |
| | | // |
| | | // @GetMapping("treeList") |
| | | // public ResponseVO<Object> treeList() { |
| | | // List<Menu> list = menuService.list(Wrappers.lambdaQuery(Menu.class)); |
| | | // List<MenuNode> menuTrees = menuService.buildTree(list); |
| | | // return ResponseUtil.success(menuTrees); |
| | | // } |
| | | // |
| | | // @PutMapping |
| | | // @PreAuthorize("@el.check('menu:edit')") |
| | | // public ResponseVO<Object> update(@RequestBody Menu resources) { |
| | | // |
| | | // boolean b = menuService.updateMenu(resources); |
| | | // return ResponseUtil.success(""); |
| | | // } |
| | | |
| | | // @PostMapping |
| | | // public ResponseVO<Object> addMenu(@RequestBody Menu resources) { |
| | | // |
| | | // boolean b = menuService.updateMenu(resources); |
| | | // return ResponseUtil.success(""); |
| | | // } |
| | | @GetMapping("/treeList") |
| | | public ResponseVO<Object> treeList() { |
| | | |
| | | if (!permissionConfig.check(MenuEnum.MENU_LIST.getCode())) { |
| | | return ResponseUtil.fail("缺少对应用户权限"); |
| | | } |
| | | List<MenuNode> menuTrees = menuService.treeList(); |
| | | return ResponseUtil.success(menuTrees); |
| | | } |
| | | |
| | | @PostMapping("/update/{menuId}") |
| | | public ResponseVO<Object> update(@PathVariable Long menuId, @Validated @RequestBody MenuParam param) { |
| | | if (!SecurityUtils.getUserDetails().getAdministratorType().equals(AdministratorEnums.ADMIN.getCode())) { |
| | | throw new BusinessException("非超级管理员无法操作!"); |
| | | } |
| | | boolean result = menuService.updateMenu(menuId, param); |
| | | if (result) { |
| | | return ResponseUtil.success("编辑成功"); |
| | | } else { |
| | | return ResponseUtil.fail("编辑失败"); |
| | | } |
| | | } |
| | | |
| | | @PostMapping("/del/{menuId}") |
| | | public ResponseVO<Object> delMenu(@PathVariable Long menuId) { |
| | | if (!SecurityUtils.getUserDetails().getAdministratorType().equals(AdministratorEnums.ADMIN.getCode())) { |
| | | throw new BusinessException("非超级管理员无法操作!"); |
| | | } |
| | | boolean result = menuService.delMenu(menuId); |
| | | if (result) { |
| | | return ResponseUtil.success("删除成功"); |
| | | } else { |
| | | return ResponseUtil.fail("删除失败"); |
| | | } |
| | | } |
| | | |
| | | @PostMapping("/add") |
| | | public ResponseVO<Object> addMenu(@Validated @RequestBody MenuParam param) { |
| | | if (!SecurityUtils.getUserDetails().getAdministratorType().equals(AdministratorEnums.ADMIN.getCode())) { |
| | | throw new BusinessException("非超级管理员无法操作!"); |
| | | } |
| | | boolean result = menuService.addMenu(param); |
| | | if (result) { |
| | | return ResponseUtil.success("添加成功"); |
| | | } else { |
| | | return ResponseUtil.fail("添加失败"); |
| | | } |
| | | } |
| | | } |