From 2382a47279b6ed520593539f73aa5e512b4f016e Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期二, 03 六月 2025 11:31:55 +0800 Subject: [PATCH] 用户绑定多公司 --- src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java | 43 +++++++++++++++++++++++++++++++------------ 1 files changed, 31 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java b/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java index fd9df5a..903f7ae 100644 --- a/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java +++ b/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java @@ -5,6 +5,11 @@ import java.util.List; import java.util.stream.Collectors; import javax.validation.Validator; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ruoyi.project.system.domain.*; +import com.ruoyi.project.system.mapper.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -18,16 +23,6 @@ import com.ruoyi.common.utils.bean.BeanValidators; import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.framework.aspectj.lang.annotation.DataScope; -import com.ruoyi.project.system.domain.SysPost; -import com.ruoyi.project.system.domain.SysRole; -import com.ruoyi.project.system.domain.SysUser; -import com.ruoyi.project.system.domain.SysUserPost; -import com.ruoyi.project.system.domain.SysUserRole; -import com.ruoyi.project.system.mapper.SysPostMapper; -import com.ruoyi.project.system.mapper.SysRoleMapper; -import com.ruoyi.project.system.mapper.SysUserMapper; -import com.ruoyi.project.system.mapper.SysUserPostMapper; -import com.ruoyi.project.system.mapper.SysUserRoleMapper; import com.ruoyi.project.system.service.ISysConfigService; import com.ruoyi.project.system.service.ISysDeptService; import com.ruoyi.project.system.service.ISysUserService; @@ -40,6 +35,9 @@ @Service public class SysUserServiceImpl implements ISysUserService { + @Autowired + private SysUserDeptMapper sysUserDeptMapper; + private static final Logger log = LoggerFactory.getLogger(SysUserServiceImpl.class); @Autowired @@ -267,6 +265,8 @@ insertUserPost(user); // 鏂板鐢ㄦ埛涓庤鑹茬鐞� insertUserRole(user); + // 鏂板閮ㄩ棬鍏宠仈 + bindUserDept(user); return rows; } @@ -503,7 +503,6 @@ if (StringUtils.isNull(u)) { BeanValidators.validateWithException(validator, user); - deptService.checkDeptDataScope(user.getDeptId()); String password = configService.selectConfigByKey("sys.user.initPassword"); user.setPassword(SecurityUtils.encryptPassword(password)); user.setCreateBy(operName); @@ -516,7 +515,6 @@ BeanValidators.validateWithException(validator, user); checkUserAllowed(u); checkUserDataScope(u.getUserId()); - deptService.checkDeptDataScope(user.getDeptId()); user.setUserId(u.getUserId()); user.setUpdateBy(operName); userMapper.updateUser(user); @@ -558,4 +556,25 @@ public List<SysUser> userListNoPage(SysUser user) { return userMapper.selectUserList(user); } + + /** + * 缁戝畾鐢ㄦ埛閮ㄩ棬 + * @param user + * @return + */ + @Override + public int bindUserDept(SysUser user) { + // 鍒犻櫎鎵�鏈夊叧鑱旂粦瀹� + LambdaQueryWrapper<SysUserDept> delWrapper = new LambdaQueryWrapper<>(); + delWrapper.eq(SysUserDept::getUserId, user.getUserId()); + sysUserDeptMapper.delete(delWrapper); + // 閲嶆柊缁戝畾 + for (int i = 0; i < user.getDeptIds().length; i++) { + SysUserDept sysUserDept = new SysUserDept(); + sysUserDept.setDeptId(user.getDeptIds()[i]); + sysUserDept.setUserId(user.getUserId()); + sysUserDeptMapper.insert(sysUserDept); + } + return user.getDeptIds().length; + } } -- Gitblit v1.9.3