mirror of https://gitee.com/stylefeng/roses
【7.6.0】【sys】更新角色绑定菜单的接口
parent
81141d9b64
commit
763d6f3e4a
|
@ -1,7 +1,7 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.role.mapper;
|
||||
|
||||
import cn.stylefeng.roses.kernel.db.mp.injector.CustomBaseMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleMenu;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* 角色菜单关联 Mapper 接口
|
||||
|
@ -9,6 +9,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||
* @author fengshuonan
|
||||
* @date 2023/06/10 21:29
|
||||
*/
|
||||
public interface SysRoleMenuMapper extends BaseMapper<SysRoleMenu> {
|
||||
public interface SysRoleMenuMapper extends CustomBaseMapper<SysRoleMenu> {
|
||||
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.role.service;
|
||||
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleMenu;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.role.pojo.request.SysRoleMenuRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
@ -15,7 +16,7 @@ import java.util.List;
|
|||
*/
|
||||
public interface SysRoleMenuService extends IService<SysRoleMenu> {
|
||||
|
||||
/**
|
||||
/**
|
||||
* 新增
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
|
@ -24,7 +25,7 @@ public interface SysRoleMenuService extends IService<SysRoleMenu> {
|
|||
*/
|
||||
void add(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
|
@ -33,7 +34,7 @@ public interface SysRoleMenuService extends IService<SysRoleMenu> {
|
|||
*/
|
||||
void del(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
|
@ -42,7 +43,7 @@ public interface SysRoleMenuService extends IService<SysRoleMenu> {
|
|||
*/
|
||||
void edit(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
/**
|
||||
* 查询详情
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
|
@ -51,24 +52,32 @@ public interface SysRoleMenuService extends IService<SysRoleMenu> {
|
|||
*/
|
||||
SysRoleMenu detail(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
/**
|
||||
* 获取列表
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
* @return List<SysRoleMenu> 返回结果
|
||||
* @author fengshuonan
|
||||
* @date 2023/06/10 21:29
|
||||
*/
|
||||
List<SysRoleMenu> findList(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
/**
|
||||
* 获取列表(带分页)
|
||||
*
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
* @param sysRoleMenuRequest 请求参数
|
||||
* @return PageResult<SysRoleMenu> 返回结果
|
||||
* @author fengshuonan
|
||||
* @date 2023/06/10 21:29
|
||||
*/
|
||||
PageResult<SysRoleMenu> findPage(SysRoleMenuRequest sysRoleMenuRequest);
|
||||
|
||||
/**
|
||||
* 给角色绑定某些菜单
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @since 2023/6/18 20:46
|
||||
*/
|
||||
void bindRoleMenus(Long roleId, List<SysMenu> menuList);
|
||||
|
||||
}
|
|
@ -8,6 +8,7 @@ import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
|||
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
|
||||
import cn.stylefeng.roses.kernel.sys.api.callback.RemoveMenuCallbackApi;
|
||||
import cn.stylefeng.roses.kernel.sys.api.callback.RemoveRoleCallbackApi;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.menu.entity.SysMenuOptions;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.menu.service.SysMenuOptionsService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.menu.service.SysMenuService;
|
||||
|
@ -85,6 +86,30 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo
|
|||
return PageResultFactory.createPageResult(sysRolePage);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindRoleMenus(Long roleId, List<SysMenu> menuList) {
|
||||
|
||||
if (ObjectUtil.isEmpty(roleId) || ObjectUtil.isEmpty(menuList)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// 清空角色的相关角色菜单关联
|
||||
LambdaQueryWrapper<SysRoleMenu> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SysRoleMenu::getRoleId, roleId);
|
||||
this.remove(queryWrapper);
|
||||
|
||||
// 绑定角色菜单
|
||||
ArrayList<SysRoleMenu> sysRoleMenus = new ArrayList<>();
|
||||
for (SysMenu sysMenu : menuList) {
|
||||
SysRoleMenu sysRoleMenu = new SysRoleMenu();
|
||||
sysRoleMenu.setRoleId(roleId);
|
||||
sysRoleMenu.setAppId(sysMenu.getAppId());
|
||||
sysRoleMenu.setMenuId(sysMenu.getMenuId());
|
||||
sysRoleMenus.add(sysRoleMenu);
|
||||
}
|
||||
this.getBaseMapper().insertBatchSomeColumn(sysRoleMenus);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysRoleMenu> findList(SysRoleMenuRequest sysRoleMenuRequest) {
|
||||
LambdaQueryWrapper<SysRoleMenu> wrapper = this.createWrapper(sysRoleMenuRequest);
|
||||
|
|
Loading…
Reference in New Issue