diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/SysRoleMenuOptionsService.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/SysRoleMenuOptionsService.java index c51c7c111..dc3cbcbc4 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/SysRoleMenuOptionsService.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/SysRoleMenuOptionsService.java @@ -15,7 +15,7 @@ import java.util.List; */ public interface SysRoleMenuOptionsService extends IService { - /** + /** * 新增 * * @param sysRoleMenuOptionsRequest 请求参数 @@ -24,7 +24,7 @@ public interface SysRoleMenuOptionsService extends IService */ void add(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest); - /** + /** * 删除 * * @param sysRoleMenuOptionsRequest 请求参数 @@ -33,7 +33,7 @@ public interface SysRoleMenuOptionsService extends IService */ void del(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest); - /** + /** * 编辑 * * @param sysRoleMenuOptionsRequest 请求参数 @@ -42,7 +42,7 @@ public interface SysRoleMenuOptionsService extends IService */ void edit(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest); - /** + /** * 查询详情 * * @param sysRoleMenuOptionsRequest 请求参数 @@ -51,20 +51,20 @@ public interface SysRoleMenuOptionsService extends IService */ SysRoleMenuOptions detail(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest); - /** + /** * 获取列表 * - * @param sysRoleMenuOptionsRequest 请求参数 + * @param sysRoleMenuOptionsRequest 请求参数 * @return List 返回结果 * @author fengshuonan * @date 2023/06/10 21:29 */ List findList(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest); - /** + /** * 获取列表(带分页) * - * @param sysRoleMenuOptionsRequest 请求参数 + * @param sysRoleMenuOptionsRequest 请求参数 * @return PageResult 返回结果 * @author fengshuonan * @date 2023/06/10 21:29 diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleMenuOptionsServiceImpl.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleMenuOptionsServiceImpl.java index cd2d86e1f..039ca2d5b 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleMenuOptionsServiceImpl.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleMenuOptionsServiceImpl.java @@ -7,12 +7,17 @@ import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory; 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.RemoveRoleCallbackApi; +import cn.stylefeng.roses.kernel.sys.modular.role.action.RoleAssignOperateAction; import cn.stylefeng.roses.kernel.sys.modular.role.entity.SysRoleMenuOptions; +import cn.stylefeng.roses.kernel.sys.modular.role.enums.PermissionNodeTypeEnum; import cn.stylefeng.roses.kernel.sys.modular.role.enums.exception.SysRoleMenuOptionsExceptionEnum; import cn.stylefeng.roses.kernel.sys.modular.role.mapper.SysRoleMenuOptionsMapper; +import cn.stylefeng.roses.kernel.sys.modular.role.pojo.request.RoleBindPermissionRequest; import cn.stylefeng.roses.kernel.sys.modular.role.pojo.request.SysRoleMenuOptionsRequest; +import cn.stylefeng.roses.kernel.sys.modular.role.pojo.response.RoleBindPermissionItem; import cn.stylefeng.roses.kernel.sys.modular.role.service.SysRoleMenuOptionsService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; @@ -27,7 +32,8 @@ import java.util.Set; * @date 2023/06/10 21:29 */ @Service -public class SysRoleMenuOptionsServiceImpl extends ServiceImpl implements SysRoleMenuOptionsService, RemoveRoleCallbackApi { +public class SysRoleMenuOptionsServiceImpl extends ServiceImpl implements + SysRoleMenuOptionsService, RemoveRoleCallbackApi, RoleAssignOperateAction { @Override public void add(SysRoleMenuOptionsRequest sysRoleMenuOptionsRequest) { @@ -79,6 +85,32 @@ public class SysRoleMenuOptionsServiceImpl extends ServiceImpl doOperateAction(RoleBindPermissionRequest roleBindPermissionRequest) { + + Long roleId = roleBindPermissionRequest.getRoleId(); + Long menuOptionId = roleBindPermissionRequest.getNodeId(); + + if (roleBindPermissionRequest.getChecked()) { + SysRoleMenuOptions sysRoleMenuOptions = new SysRoleMenuOptions(); + sysRoleMenuOptions.setRoleId(roleId); + sysRoleMenuOptions.setMenuOptionId(menuOptionId); + this.save(sysRoleMenuOptions); + } else { + LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); + wrapper.eq(SysRoleMenuOptions::getRoleId, roleId); + wrapper.eq(SysRoleMenuOptions::getMenuOptionId, menuOptionId); + this.remove(wrapper); + } + + return null; + } + /** * 获取信息 *