All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.wslxm.springbootplus2.manage.sys.controller.SysMenuController Maven / Gradle / Ivy

package io.github.wslxm.springbootplus2.manage.sys.controller;


import io.github.wslxm.springbootplus2.core.base.controller.BaseController;
import io.github.wslxm.springbootplus2.core.base.model.BasePage;
import io.github.wslxm.springbootplus2.core.constant.BaseConstant;
import io.github.wslxm.springbootplus2.core.result.Result;
import io.github.wslxm.springbootplus2.manage.sys.model.dto.SysMenuDTO;
import io.github.wslxm.springbootplus2.manage.sys.model.query.SysMenuQuery;
import io.github.wslxm.springbootplus2.manage.sys.model.vo.SysMenuVO;
import io.github.wslxm.springbootplus2.manage.sys.service.SysMenuService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 *   菜单
 *
 * @author 王松
 * @WX-QQ 1720696548
 * @date 2019/11/13 13:38
 */
@RestController
@RequestMapping(BaseConstant.Uri.API_ADMIN+ "/sys/menu")
@Api(value = "SysMenuController", tags = "base--sys--菜单管理")
public class SysMenuController extends BaseController {


    @GetMapping(value = "/tree")
    @ApiOperation(value = "列表查询(不支持分页)", notes = "根据sort正序排序返回")
    public Result> tree(@ModelAttribute SysMenuQuery query) {
        return Result.success(baseService.tree(query));
    }

    @GetMapping(value = "/findPage")
    @ApiOperation(value = "列表查询")
    public Result> findPage(@ModelAttribute @Validated SysMenuQuery query) {
        return Result.success(baseService.findPage(query));
    }

    @GetMapping(value = "/{id}")
    @ApiOperation(value = "ID查询")
    public Result findId(@PathVariable String id) {
        return Result.success(baseService.findId(id));
    }

    @PostMapping
    @ApiOperation(value = "菜单添加")
    public Result insert(@RequestBody SysMenuDTO dto) {
        return Result.successInsert(baseService.insert(dto));
    }


    @PutMapping(value = "/{id}")
    @ApiOperation(value = "ID编辑", notes = "")
    public Result upd(@PathVariable String id, @RequestBody SysMenuDTO dto) {
        return Result.successUpdate(baseService.upd(id, dto));
    }


    @PutMapping(value = "updPid/{id}")
    @ApiOperation(value = "修改父级", notes = "")
    public Result updPid(@PathVariable String id, @RequestParam  String pid) {
        return Result.successUpdate(baseService.updPid(id, pid));
    }


    @DeleteMapping(value = "/{id}")
    @ApiOperation(value = "ID删除", notes = "同时删除当前菜单和当前菜单下的所有子菜单")
    public Result> del(@PathVariable String id) {
        return Result.successDelete(baseService.del(id));
    }


    @GetMapping(value = "/findTree")
    @ApiOperation(value = "左导航菜单", notes = "当前用户对应的角色菜单数据, 树结构数据,无限级,不限制层次,根据sort字段正序排序,sort越小越靠前")
    public Result> findTree() {
        return Result.successFind(baseService.findTree());
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy