You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

262 lines
8.8 KiB

4 months ago
package com.nov.KgLowDurable.controller;
import com.nov.KgLowDurable.pojo.entity.Menu;
import com.nov.KgLowDurable.service.IMenuService;
import com.nov.KgLowDurable.util.Result;
import io.swagger.annotations.*;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
/**
* 控制器
*
* @author liweidong
*/
@RestController
@AllArgsConstructor
@RequestMapping("/menu")
public class MenuController {
private final IMenuService menuService;
// private final ITopMenuService topMenuService;
/**
* 详情
* @return
*/
@GetMapping("/detail")
@ApiOperationSort(1)
@ApiOperation(value = "获取用户详情", notes = "根据用户ID获取详细信息")
public Result<Menu> detail(Menu menu) {
return Result.OK(menuService.getById(menu.getId()));
}
// @GetMapping("/list")
// @ApiOperationSort(2) // Knife4j排序
// @ApiOperation(value = "获取菜单列表", notes = "获取菜单树形列表,支持条件筛选", httpMethod = "GET", response = Result.class)
// @ApiImplicitParams({
// @ApiImplicitParam(name = "code", value = "菜单编号", dataType = "string", paramType = "query"),
// @ApiImplicitParam(name = "name", value = "菜单名称", dataType = "string", paramType = "query")
// })
// public Result<List<MenuVO>> list(
// @ApiParam(hidden = true) // 在文档中隐藏这个参数
// @RequestParam Map<String, Object> menu) {
//
// List<Menu> list = menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().orderByAsc(Menu::getSort));
//
// List<MenuVO> treeList = MenuWrapper.build().listNodeVO(list);
//
// return Result.OK(treeList);
// }
// /**
// * 列表
// */
// @GetMapping("/list")
// @Parameters({
// @Parameter(name = "code", description = "菜单编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
// @Parameter(name = "name", description = "菜单名称", in = ParameterIn.QUERY, schema = @Schema(type = "string"))
// })
// @ApiOperationSupport(order = 2)
// @Operation(summary = "列表", description = "传入menu")
// public R<List<MenuVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> menu) {
// List<Menu> list = menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().orderByAsc(Menu::getSort));
// return R.data(MenuWrapper.build().listNodeVO(list));
// }
// /**
// * 懒加载列表
// */
// @IsAdministrator
// @GetMapping("/lazy-list")
// @Parameters({
// @Parameter(name = "code", description = "菜单编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
// @Parameter(name = "name", description = "菜单名称", in = ParameterIn.QUERY, schema = @Schema(type = "string"))
// })
// @ApiOperationSupport(order = 3)
// @Operation(summary = "懒加载列表", description = "传入menu")
// public R<List<MenuVO>> lazyList(Long parentId, @Parameter(hidden = true) @RequestParam Map<String, Object> menu) {
// List<MenuVO> list = menuService.lazyList(parentId, menu);
// return R.data(MenuWrapper.build().listNodeLazyVO(list));
// }
//
// /**
// * 菜单列表
// */
// @IsAdministrator
// @GetMapping("/menu-list")
// @Parameters({
// @Parameter(name = "code", description = "菜单编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
// @Parameter(name = "name", description = "菜单名称", in = ParameterIn.QUERY, schema = @Schema(type = "string"))
// })
// @ApiOperationSupport(order = 4)
// @Operation(summary = "菜单列表", description = "传入menu")
// public Result<List<MenuVO>> menuList(@Parameter(hidden = true) @RequestParam Map<String, Object> menu) {
// List<Menu> list = menuService.list(Condition.getQueryWrapper(menu, Menu.class).lambda().eq(Menu::getCategory, 1).orderByAsc(Menu::getSort));
// return R.data(MenuWrapper.build().listNodeVO(list));
// }
//
// /**
// * 懒加载菜单列表
// */
// @IsAdministrator
// @GetMapping("/lazy-menu-list")
// @Parameters({
// @Parameter(name = "code", description = "菜单编号", in = ParameterIn.QUERY, schema = @Schema(type = "string")),
// @Parameter(name = "name", description = "菜单名称", in = ParameterIn.QUERY, schema = @Schema(type = "string"))
// })
// @ApiOperationSupport(order = 5)
// @ApiOperation(value = "懒加载菜单列表")
// public R<List<MenuVO>> lazyMenuList(Long parentId, @Parameter(hidden = true) @RequestParam Map<String, Object> menu) {
// List<MenuVO> list = menuService.lazyMenuList(parentId, menu);
// return R.data(MenuWrapper.build().listNodeLazyVO(list));
// }
//
// /**
// * 新增或修改
// */
// @IsAdministrator
// @PostMapping("/submit")
// @ApiOperationSupport(order = 6)
// @Operation(summary = "新增或修改", description = "传入menu")
// public R submit(@Valid @RequestBody Menu menu) {
// if (menuService.submit(menu)) {
// CacheUtil.clear(MENU_CACHE);
// CacheUtil.clear(MENU_CACHE, Boolean.FALSE);
// // 返回懒加载树更新节点所需字段
// Kv kv = Kv.create().set("id", String.valueOf(menu.getId()));
// return R.data(kv);
// }
// return R.fail("操作失败");
// }
//
//
// /**
// * 删除
// */
// @IsAdministrator
// @PostMapping("/remove")
// @ApiOperationSupport(order = 7)
// @Operation(summary = "删除", description = "传入ids")
// public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
// CacheUtil.clear(MENU_CACHE);
// CacheUtil.clear(MENU_CACHE, Boolean.FALSE);
// return R.status(menuService.removeMenu(ids));
// }
//
// /**
// * 前端菜单数据
// */
// @GetMapping("/routes")
// @ApiOperationSupport(order = 8)
// @Operation(summary = "前端菜单数据", description = "前端菜单数据")
// public R<List<MenuVO>> routes(BladeUser user, Long topMenuId) {
// List<MenuVO> list = menuService.routes((user == null) ? null : user.getRoleId(), topMenuId);
// return R.data(list);
// }
//
// /**
// * 前端按钮数据
// */
// @GetMapping("/buttons")
// @ApiOperationSupport(order = 10)
// @Operation(summary = "前端按钮数据", description = "前端按钮数据")
// public R<List<MenuVO>> buttons(BladeUser user) {
// List<MenuVO> list = menuService.buttons(user.getRoleId());
// return R.data(list);
// }
//
// /**
// * 获取菜单树形结构
// */
// @GetMapping("/tree")
// @ApiOperationSupport(order = 11)
// @Operation(summary = "树形结构", description = "树形结构")
// public R<List<TreeNode>> tree() {
// List<TreeNode> tree = menuService.tree();
// return R.data(tree);
// }
//
// /**
// * 获取权限分配树形结构
// */
// @GetMapping("/grant-tree")
// @ApiOperationSupport(order = 12)
// @Operation(summary = "权限分配树形结构", description = "权限分配树形结构")
// public R<GrantTreeVO> grantTree(BladeUser user) {
// GrantTreeVO vo = new GrantTreeVO();
// vo.setMenu(menuService.grantTree(user));
// vo.setDataScope(menuService.grantDataScopeTree(user));
// vo.setApiScope(menuService.grantApiScopeTree(user));
// return R.data(vo);
// }
//
// /**
// * 获取权限分配树形结构
// */
// @GetMapping("/role-tree-keys")
// @ApiOperationSupport(order = 13)
// @Operation(summary = "角色所分配的树", description = "角色所分配的树")
// public R<CheckedTreeVO> roleTreeKeys(String roleIds) {
// CheckedTreeVO vo = new CheckedTreeVO();
// vo.setMenu(menuService.roleTreeKeys(roleIds));
// vo.setDataScope(menuService.dataScopeTreeKeys(roleIds));
// vo.setApiScope(menuService.apiScopeTreeKeys(roleIds));
// return R.data(vo);
// }
//
// /**
// * 获取顶部菜单树形结构
// */
// @GetMapping("/grant-top-tree")
// @ApiOperationSupport(order = 14)
// @Operation(summary = "顶部菜单树形结构", description = "顶部菜单树形结构")
// public R<User> grantTopTree(BladeUser user) {
// GrantTreeVO vo = new GrantTreeVO();
// vo.setMenu(menuService.grantTopTree(user));
// return R.ok(vo);
// }
//
// /**
// * 获取顶部菜单树形结构
// */
// @GetMapping("/top-tree-keys")
// @ApiOperationSupport(order = 15)
// @Operation(summary = "顶部菜单所分配的树", description = "顶部菜单所分配的树")
// public R<CheckedTreeVO> topTreeKeys(String topMenuIds) {
// CheckedTreeVO vo = new CheckedTreeVO();
// vo.setMenu(menuService.topTreeKeys(topMenuIds));
// return R.data(vo);
// }
//
// /**
// * 顶部菜单数据
// */
// @GetMapping("/top-menu")
// @ApiOperationSupport(order = 16)
// @Operation(summary = "顶部菜单数据", description = "顶部菜单数据")
// public R<List<TopMenu>> topMenu(BladeUser user) {
// if (Func.isEmpty(user)) {
// return null;
// }
// List<TopMenu> list = topMenuService.list(Wrappers.<TopMenu>query().lambda().orderByAsc(TopMenu::getSort));
// return R.data(list);
// }
//
// /**
// * 获取配置的角色权限
// */
// @GetMapping("auth-routes")
// @ApiOperationSupport(order = 17)
// @Operation(summary = "菜单的角色权限")
// public R<List<Kv>> authRoutes(BladeUser user) {
// if (Func.isEmpty(user)) {
// return null;
// }
// return R.data(menuService.authRoutes(user));
// }
}