From 490db2e9cc769bd0aa3571fad345c7a01bc01bdd Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期四, 22 八月 2024 09:36:49 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java | 36 ++++++++++++++++++++++++++++++------ 1 files changed, 30 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index 6b7e40e..247bbe3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -15,11 +15,13 @@ import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.other.api.feignClient.RoleSiteClient; import com.ruoyi.other.api.feignClient.UserSiteClient; +import com.ruoyi.system.api.query.ChangeUserQuery; import com.ruoyi.system.domain.SysPost; import com.ruoyi.system.domain.SysUserPost; import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.query.GetSysUserList; import com.ruoyi.system.service.ISysConfigService; +import com.ruoyi.system.service.ISysRoleService; import com.ruoyi.system.service.ISysUserRoleService; import com.ruoyi.system.service.ISysUserService; import org.slf4j.Logger; @@ -85,6 +87,9 @@ @Resource private SiteClient siteClient; + + @Resource + private ISysRoleService sysRoleService; @@ -577,18 +582,30 @@ for (SysUser sysUser : list) { List<SysUserRole> list1 = sysUserRoleService.list(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, sysUser.getUserId())); List<Integer> data1 = userSiteClient.getSiteIds(sysUser.getUserId()).getData(); + if(null == data1){ + data1 = new ArrayList<>(); + } for (SysUserRole sysUserRole : list1) { List<Integer> data = roleSiteClient.getSiteIds(sysUserRole.getRoleId()).getData(); + if (null == data){ + continue; + } data1.addAll(data); } Set<Integer> siteIds = new HashSet<>(data1); + sysUser.setSiteIds(siteIds.stream().collect(Collectors.toList())); List<Site> data = siteClient.getSiteByIds(siteIds.stream().collect(Collectors.toList())).getData(); - List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); - sysUser.setSiteNames(siteNames); - - Set<Long> collect = list1.stream().map(SysUserRole::getRoleId).collect(Collectors.toSet()); - List<SysRole> sysRoles = roleMapper.selectBatchIds(collect); - List<String> roleNames = sysRoles.stream().map(SysRole::getRoleName).collect(Collectors.toList()); + if(null != data){ + List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); + sysUser.setSiteNames(siteNames); + } + List<String> roleNames = new ArrayList<>(); + for (SysUserRole sysUserRole : list1) { + SysRole sysRole = sysRoleService.selectRoleById(sysUserRole.getRoleId()); + roleNames.add(sysRole.getRoleName()); + } + Long[] roleIds = new Long[]{}; + sysUser.setRoleIds(list1.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()).toArray(roleIds)); sysUser.setRoleNames(roleNames); } return pageInfo.setRecords(list); @@ -609,4 +626,11 @@ this.baseMapper.deleteSysUser(userIds); } + @Override + public PageInfo<SysUser> getChangeUserList(ChangeUserQuery query) { + PageInfo<SysUser> pageInfo = new PageInfo<>(query.getPageCurr(), query.getPageSize()); + List<SysUser> list = this.baseMapper.getChangeUserList(pageInfo, query); + return pageInfo.setRecords(list); + } + } -- Gitblit v1.7.1