接续上一篇,spring boot 、mybatis-plus、shiro整合入门教程(一)——mybatis-plus代码生成器
项目中的数据库表设计如下:
菜单管理页面功能:新增、修改、删除、查询
新增代码如下:
SysMenuController类的代码如下:
@Resource
private SysMenuServiceImpl sysMenuService;
/**
* 保存
* @param menu
* @return
*/
@SysLog("保存菜单")
@RequestMapping("/save")
@RequiresPermissions("sys:menu:save")
public WebResult save(@RequestBody SysMenu menu){
//数据校验
verifyForm(menu);
sysMenuService.save(menu);
return new WebResult();
}
修改
/**
* 修改
*/
@SysLog("修改菜单")
@RequestMapping("/update")
@RequiresPermissions("sys:menu:update")
public WebResult update(@RequestBody SysMenu menu){
//数据校验
verifyForm(menu);
sysMenuService.updateById(menu);
return new WebResult();
}
删除
/**
* 删除
* @param menuId
* @return
*/
@SysLog("删除菜单")
@RequestMapping("/delete")
@RequiresPermissions("sys:menu:delete")
public WebResult delete(long menuId){
//判断是否有子菜单或按钮
List<SysMenu> menuList = sysMenuService.queryListByParentId(menuId);
if(menuList.size() > 0){
return WebResult.error("请先删除子菜单或按钮");
}
sysMenuService.removeById(menuId);
return new WebResult();
}
查询
/**
* 所有列表菜单
* @return
*/
@RequestMapping("/list")
@RequiresPermissions("sys:menu:list")
public List<SysMenu> list() {
return sysMenuService.list();
}