From b22df417e0bc423c788b013feaad686531d69eed Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 08 一月 2025 09:51:37 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java | 100 ++++++++++++++++++++++++++----------------------- 1 files changed, 53 insertions(+), 47 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 064938a..9bde5e4 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 @@ -2,8 +2,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.chargingPile.api.feignClient.SiteClient; -import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.common.core.constant.UserConstants; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.SpringUtils; @@ -13,32 +11,27 @@ import com.ruoyi.common.datascope.annotation.DataScope; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.utils.SecurityUtils; -import com.ruoyi.other.api.feignClient.RoleSiteClient; -import com.ruoyi.other.api.feignClient.UserSiteClient; +import com.ruoyi.system.api.domain.SysDept; import com.ruoyi.system.api.domain.SysRole; import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.model.UserShop; 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.mapper.*; 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 com.ruoyi.system.service.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import javax.validation.Validator; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; /** @@ -75,19 +68,17 @@ private ISysUserRoleService sysUserRoleService; @Resource - private RoleSiteClient roleSiteClient; - - @Resource - private UserSiteClient userSiteClient; - - @Resource - private SiteClient siteClient; - - @Resource private ISysRoleService sysRoleService; @Resource private TokenService tokenService; + + @Lazy + @Resource + private ISysDeptService deptService; + + @Resource + private UserShopService userShopService; /** @@ -459,7 +450,14 @@ // userRoleMapper.deleteUserRole(userIds); // // 删除用户与岗位关联 // userPostMapper.deleteUserPost(userIds); - return userMapper.deleteUserByIds(userIds); + int i = userMapper.deleteUserByIds(userIds); + List<SysUser> sysUsers = this.listByIds(Arrays.asList(userIds)); + for (SysUser user : sysUsers) { + if(2 == user.getRoleType()){ + userShopService.remove(new LambdaQueryWrapper<UserShop>().eq(UserShop::getUserId, user.getUserId()).eq(UserShop::getShopId, user.getObjectId())); + } + } + return i; } /** @@ -522,35 +520,38 @@ @Override public PageInfo<SysUser> getList(PageInfo<SysUser> pageInfo, GetSysUserList getSysUserList) { + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser1 = this.getById(userid); + if(sysUser1.getRoleType() == 2){ + getSysUserList.setObjectId(sysUser1.getObjectId()); + } List<SysUser> list = this.baseMapper.getList(pageInfo, getSysUserList); 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; + if(sysUser.getRoleType() == 2){ + UserShop userShop = userShopService.getOne(new LambdaQueryWrapper<UserShop>().eq(UserShop::getShopId, sysUser1.getObjectId()).eq(UserShop::getUserId, sysUser.getUserId())); + SysRole sysRole = roleMapper.selectRoleById(userShop.getRoleId()); + Long[] roleIds = new Long[]{userShop.getRoleId()}; + sysUser.setNickName(userShop.getNickName()); + sysUser.setRoleIds(roleIds); + sysUser.setRoleNames(Arrays.asList(sysRole.getRoleName())); + SysDept sysDept = deptService.selectDeptById(userShop.getDeptId()); + sysUser.setDept(sysDept); + }else{ + List<SysUserRole> list1 = sysUserRoleService.list(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, sysUser.getUserId())); + List<String> roleNames = new ArrayList<>(); + for (SysUserRole sysUserRole : list1) { + SysRole sysRole = sysRoleService.selectRoleById(sysUserRole.getRoleId()); + if(null == sysRole){ + continue; + } + roleNames.add(sysRole.getRoleName()); } - data1.addAll(data); + Long[] roleIds = new Long[]{}; + sysUser.setRoleIds(list1.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()).toArray(roleIds)); + sysUser.setRoleNames(roleNames); + SysDept sysDept = deptService.selectDeptById(sysUser.getDeptId()); + sysUser.setDept(sysDept); } - Set<Integer> siteIds = new HashSet<>(data1); - List<Site> data = siteClient.getSiteByIds(siteIds.stream().collect(Collectors.toList())).getData(); - if (null != data) { - List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList()); - sysUser.setSiteNames(siteNames); - sysUser.setSiteIds(data.stream().map(Site::getId).collect(Collectors.toList())); - } - 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); } @@ -572,6 +573,11 @@ @Override public PageInfo<SysUser> getChangeUserList(ChangeUserQuery query) { + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser1 = this.getById(userid); + if(sysUser1.getRoleType() == 2){ + query.setObjectId(sysUser1.getObjectId()); + } 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