From 0ddba506bfe01493b95a2ce20dd19c09903cb28b Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 4 Jul 2025 16:16:12 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E8=A7=92=E8=89=B2=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysRoleServiceImpl.java | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java index db2da3125..dc47059f6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysRoleServiceImpl.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.exception.NotLoginException; import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -39,6 +40,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** * 角色 业务层处理 @@ -355,19 +357,18 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { * @param role 角色对象 */ private int insertRoleMenu(SysRoleBo role) { - int rows = 1; - // 新增用户与角色管理 - List list = new ArrayList<>(); - for (Long menuId : role.getMenuIds()) { - SysRoleMenu rm = new SysRoleMenu(); - rm.setRoleId(role.getRoleId()); - rm.setMenuId(menuId); - list.add(rm); + Long[] menuIds = role.getMenuIds(); + if (ArrayUtil.isEmpty(menuIds)) { + return 0; } - if (CollUtil.isEmpty(list)) { - rows = roleMenuMapper.insertBatch(list) ? list.size() : 0; - } - return rows; + List roleMenuList = Arrays.stream(menuIds) + .map(menuId -> { + SysRoleMenu roleMenu = new SysRoleMenu(); + roleMenu.setRoleId(role.getRoleId()); + roleMenu.setMenuId(menuId); + return roleMenu; + }).collect(Collectors.toList()); + return roleMenuMapper.insertBatch(roleMenuList) ? roleMenuList.size() : 0; } /** @@ -376,19 +377,18 @@ public class SysRoleServiceImpl implements ISysRoleService, RoleService { * @param role 角色对象 */ private int insertRoleDept(SysRoleBo role) { - int rows = 1; - // 新增角色与部门(数据权限)管理 - List list = new ArrayList<>(); - for (Long deptId : role.getDeptIds()) { - SysRoleDept rd = new SysRoleDept(); - rd.setRoleId(role.getRoleId()); - rd.setDeptId(deptId); - list.add(rd); + Long[] deptIds = role.getDeptIds(); + if (ArrayUtil.isEmpty(deptIds)) { + return 0; } - if (CollUtil.isEmpty(list)) { - rows = roleDeptMapper.insertBatch(list) ? list.size() : 0; - } - return rows; + List roleDeptList = Arrays.stream(deptIds) + .map(deptId -> { + SysRoleDept roleDept = new SysRoleDept(); + roleDept.setRoleId(role.getRoleId()); + roleDept.setDeptId(deptId); + return roleDept; + }).collect(Collectors.toList()); + return roleDeptMapper.insertBatch(roleDeptList) ? roleDeptList.size() : 0; } /**