zhaoxian 3 yıl önce
ebeveyn
işleme
2429d3b780

+ 73 - 59
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/service/impl/SysUserServiceImpl.java

@@ -1,7 +1,16 @@
 package cn.com.ctop.common.module.service.impl;
 
-import cn.com.ctop.common.module.entity.*;
-import cn.com.ctop.common.module.mapper.*;
+import cn.com.ctop.common.module.entity.SysDepartRole;
+import cn.com.ctop.common.module.entity.SysDepartRoleUser;
+import cn.com.ctop.common.module.entity.SysRole;
+import cn.com.ctop.common.module.entity.SysUserDepart;
+import cn.com.ctop.common.module.mapper.SysDepartMapper;
+import cn.com.ctop.common.module.mapper.SysDepartRoleMapper;
+import cn.com.ctop.common.module.mapper.SysDepartRoleUserMapper;
+import cn.com.ctop.common.module.mapper.SysPermissionMapper;
+import cn.com.ctop.common.module.mapper.SysRoleMapper;
+import cn.com.ctop.common.module.mapper.SysUserDepartMapper;
+import cn.com.ctop.common.module.mapper.SysUserMapper;
 import cn.com.ctop.common.module.model.SysUserSysDepartModel;
 import cn.com.ctop.common.module.service.ISysUserService;
 import cn.com.ctop.common.module.utils.Check;
@@ -14,7 +23,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CacheConstant;
 import org.jeecg.common.constant.CommonConstant;
@@ -40,7 +48,14 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 /**
@@ -106,7 +121,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
 
-
     @Override
     public List<SysUserVo> getAllUser(String userName, String status) {
         return userMapper.getAllUser(userName, status);
@@ -150,25 +164,24 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
     /**
-     *
-     * @description: 修改用户 设计组长姓名
-     *用户 分配角色 为 设计组长  用户设计组长姓名 为自己真实姓名
-     * @param userId 用户id
+     * @param userId   用户id
      * @param userName 设计组长姓名
-     * @param roleId 角色id
+     * @param roleId   角色id
+     * @description: 修改用户 设计组长姓名
+     * 用户 分配角色 为 设计组长  用户设计组长姓名 为自己真实姓名
      * @return: java.lang.Integer
      * @author: zianY
      */
     @Override
-    public Integer updUserDesignLeaderById(String userId,String userName,String roleId) {
+    public Integer updUserDesignLeaderById(String userId, String userName, String roleId) {
         String designTeamLeaderName = "";
-        if (!Check.isNull(roleId)){
+        if (!Check.isNull(roleId)) {
             SysRole sysRole = sysRoleMapper.selectById(roleId);
-            if ("designTeamLeader".equals(sysRole.getRoleCode())){
+            if ("designTeamLeader".equals(sysRole.getRoleCode())) {
                 designTeamLeaderName = userName;
             }
         }
-       return userMapper.updUserDesignLeaderById(userId,designTeamLeaderName);
+        return userMapper.updUserDesignLeaderById(userId, designTeamLeaderName);
     }
 
 
@@ -215,7 +228,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
     @Override
-    @CacheEvict(value={CacheConstant.SYS_USERS_CACHE}, allEntries=true)
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true)
     @Transactional(rollbackFor = Exception.class)
     public boolean deleteUser(String userId) {
         //1.删除用户
@@ -224,7 +237,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
     @Override
-    @CacheEvict(value={CacheConstant.SYS_USERS_CACHE}, allEntries=true)
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true)
     @Transactional(rollbackFor = Exception.class)
     public boolean deleteBatchUsers(String userIds) {
         //1.删除用户
@@ -242,7 +255,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Transactional
     public void addUserWithRole(SysUser user, String roles) {
         this.save(user);
-        if(oConvertUtils.isNotEmpty(roles)) {
+        if (oConvertUtils.isNotEmpty(roles)) {
             String[] arr = roles.split(",");
             for (String roleId : arr) {
                 SysUserRole userRole = new SysUserRole(user.getId(), roleId);
@@ -252,13 +265,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
     @Override
-    @CacheEvict(value= {CacheConstant.SYS_USERS_CACHE}, allEntries=true)
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true)
     @Transactional
     public void editUserWithRole(SysUser user, String roles) {
         this.updateById(user);
         //先删后加
         sysUserRoleMapper.delete(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, user.getId()));
-        if(oConvertUtils.isNotEmpty(roles)) {
+        if (oConvertUtils.isNotEmpty(roles)) {
             String[] arr = roles.split(",");
             for (String roleId : arr) {
                 SysUserRole userRole = new SysUserRole(user.getId(), roleId);
@@ -275,6 +288,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     /**
      * 通过用户名获取用户角色集合
+     *
      * @param username 用户名
      * @return 角色集合
      */
@@ -305,7 +319,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
                 permissionSet.add(po.getPerms());
             }
         }
-        log.info("-------通过数据库读取用户拥有的权限Perms------username: "+ username+",Perms size: "+ (permissionSet==null?0:permissionSet.size()) );
+        log.info("-------通过数据库读取用户拥有的权限Perms------username: " + username + ",Perms size: " + (permissionSet == null ? 0 : permissionSet.size()));
         return permissionSet;
     }
 
@@ -319,7 +333,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
 
         LoginUser user = sysBaseApi.getUserByName(username);
-        if(user!=null) {
+        if (user != null) {
             info.setSysUserCode(user.getUsername());
             info.setSysUserName(user.getRealname());
             info.setSysOrgCode(user.getOrgCode());
@@ -328,12 +342,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         //多部门支持in查询
         List<SysDepart> list = sysDepartMapper.queryUserDeparts(user.getId());
         List<String> sysMultiOrgCode = new ArrayList<String>();
-        if(list==null || list.size()==0) {
+        if (list == null || list.size() == 0) {
             //当前用户无部门
             //sysMultiOrgCode.add("0");
-        }else if(list.size()==1) {
+        } else if (list.size() == 1) {
             sysMultiOrgCode.add(list.get(0).getOrgCode());
-        }else {
+        } else {
             info.setOneDepart(false);
             for (SysDepart dpt : list) {
                 sysMultiOrgCode.add(dpt.getOrgCode());
@@ -346,13 +360,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     // 根据部门Id查询
     @Override
-    public IPage<SysUser> getUserByDepId(Page<SysUser> page, String departId,String username) {
-        return userMapper.getUserByDepId(page, departId,username);
+    public IPage<SysUser> getUserByDepId(Page<SysUser> page, String departId, String username) {
+        return userMapper.getUserByDepId(page, departId, username);
     }
 
     @Override
     public IPage<SysUser> getUserByDepIds(Page<SysUser> page, List<String> departIds, String username) {
-        return userMapper.getUserByDepIds(page, departIds,username);
+        return userMapper.getUserByDepIds(page, departIds, username);
     }
 
     @Override
@@ -393,13 +407,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     // 根据角色Id查询
     @Override
     public IPage<SysUser> getUserByRoleId(Page<SysUser> page, String roleId, String username) {
-        return userMapper.getUserByRoleId(page,roleId,username);
+        return userMapper.getUserByRoleId(page, roleId, username);
     }
 
 
     @Override
-    @CacheEvict(value= {CacheConstant.SYS_USERS_CACHE}, key="#username")
-    public void updateUserDepart(String username,String orgCode) {
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, key = "#username")
+    public void updateUserDepart(String username, String orgCode) {
         baseMapper.updateUserDepart(username, orgCode);
     }
 
@@ -419,7 +433,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Transactional
     public void addUserWithDepart(SysUser user, String selectedParts) {
 //		this.save(user);  //保存角色的时候已经添加过一次了
-        if(oConvertUtils.isNotEmpty(selectedParts)) {
+        if (oConvertUtils.isNotEmpty(selectedParts)) {
             String[] arr = selectedParts.split(",");
             for (String deaprtId : arr) {
                 SysUserDepart userDeaprt = new SysUserDepart(user.getId(), deaprtId);
@@ -431,32 +445,32 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    @CacheEvict(value={CacheConstant.SYS_USERS_CACHE}, allEntries=true)
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true)
     public void editUserWithDepart(SysUser user, String departs) {
         this.updateById(user);  //更新角色的时候已经更新了一次了,可以再跟新一次
         String[] arr = {};
-        if(oConvertUtils.isNotEmpty(departs)){
+        if (oConvertUtils.isNotEmpty(departs)) {
             arr = departs.split(",");
         }
         //查询已关联部门
         List<SysUserDepart> userDepartList = sysUserDepartMapper.selectList(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
-        if(userDepartList != null && userDepartList.size()>0){
-            for(SysUserDepart depart : userDepartList ){
+        if (userDepartList != null && userDepartList.size() > 0) {
+            for (SysUserDepart depart : userDepartList) {
                 //修改已关联部门删除部门用户角色关系
-                if(!Arrays.asList(arr).contains(depart.getDepId())){
+                if (!Arrays.asList(arr).contains(depart.getDepId())) {
                     List<SysDepartRole> sysDepartRoleList = sysDepartRoleMapper.selectList(
-                            new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId,depart.getDepId()));
+                            new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId, depart.getDepId()));
                     List<String> roleIds = sysDepartRoleList.stream().map(SysDepartRole::getId).collect(Collectors.toList());
-                    if(roleIds != null && roleIds.size()>0){
+                    if (roleIds != null && roleIds.size() > 0) {
                         departRoleUserMapper.delete(new QueryWrapper<SysDepartRoleUser>().lambda().eq(SysDepartRoleUser::getUserId, user.getId())
-                                .in(SysDepartRoleUser::getDroleId,roleIds));
+                                .in(SysDepartRoleUser::getDroleId, roleIds));
                     }
                 }
             }
         }
         //先删后加
         sysUserDepartMapper.delete(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
-        if(oConvertUtils.isNotEmpty(departs)) {
+        if (oConvertUtils.isNotEmpty(departs)) {
             for (String departId : arr) {
                 SysUserDepart userDepart = new SysUserDepart(user.getId(), departId);
                 sysUserDepartMapper.insert(userDepart);
@@ -467,6 +481,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     /**
      * 校验用户是否有效
+     *
      * @param sysUser
      * @return
      */
@@ -564,7 +579,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     @Override
     public List<SysUser> queryByDepIds(List<String> departIds, String username) {
-        return userMapper.queryByDepIds(departIds,username);
+        return userMapper.queryByDepIds(departIds, username);
     }
 
     @Override
@@ -573,7 +588,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         //step.1 保存用户
         this.save(user);
         //step.2 保存角色
-        if(oConvertUtils.isNotEmpty(selectedRoles)) {
+        if (oConvertUtils.isNotEmpty(selectedRoles)) {
             String[] arr = selectedRoles.split(",");
             for (String roleId : arr) {
                 SysUserRole userRole = new SysUserRole(user.getId(), roleId);
@@ -581,7 +596,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             }
         }
         //step.3 保存所属部门
-        if(oConvertUtils.isNotEmpty(selectedDeparts)) {
+        if (oConvertUtils.isNotEmpty(selectedDeparts)) {
             String[] arr = selectedDeparts.split(",");
             for (String deaprtId : arr) {
                 SysUserDepart userDeaprt = new SysUserDepart(user.getId(), deaprtId);
@@ -592,14 +607,14 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    @CacheEvict(value={CacheConstant.SYS_USERS_CACHE}, allEntries=true)
+    @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true)
     public void editUser(SysUser user, String roles, String departs) {
         //step.1 修改用户基础信息
         this.updateById(user);
         //step.2 修改角色
         //处理用户角色 先删后加
         sysUserRoleMapper.delete(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, user.getId()));
-        if(oConvertUtils.isNotEmpty(roles)) {
+        if (oConvertUtils.isNotEmpty(roles)) {
             String[] arr = roles.split(",");
             for (String roleId : arr) {
                 SysUserRole userRole = new SysUserRole(user.getId(), roleId);
@@ -609,28 +624,28 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         //step.3 修改部门
         String[] arr = {};
-        if(oConvertUtils.isNotEmpty(departs)){
+        if (oConvertUtils.isNotEmpty(departs)) {
             arr = departs.split(",");
         }
         //查询已关联部门
         List<SysUserDepart> userDepartList = sysUserDepartMapper.selectList(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
-        if(userDepartList != null && userDepartList.size()>0){
-            for(SysUserDepart depart : userDepartList ){
+        if (userDepartList != null && userDepartList.size() > 0) {
+            for (SysUserDepart depart : userDepartList) {
                 //修改已关联部门删除部门用户角色关系
-                if(!Arrays.asList(arr).contains(depart.getDepId())){
+                if (!Arrays.asList(arr).contains(depart.getDepId())) {
                     List<SysDepartRole> sysDepartRoleList = sysDepartRoleMapper.selectList(
-                            new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId,depart.getDepId()));
+                            new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId, depart.getDepId()));
                     List<String> roleIds = sysDepartRoleList.stream().map(SysDepartRole::getId).collect(Collectors.toList());
-                    if(roleIds != null && roleIds.size()>0){
+                    if (roleIds != null && roleIds.size() > 0) {
                         departRoleUserMapper.delete(new QueryWrapper<SysDepartRoleUser>().lambda().eq(SysDepartRoleUser::getUserId, user.getId())
-                                .in(SysDepartRoleUser::getDroleId,roleIds));
+                                .in(SysDepartRoleUser::getDroleId, roleIds));
                     }
                 }
             }
         }
         //先删后加
         sysUserDepartMapper.delete(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
-        if(oConvertUtils.isNotEmpty(departs)) {
+        if (oConvertUtils.isNotEmpty(departs)) {
             for (String departId : arr) {
                 SysUserDepart userDepart = new SysUserDepart(user.getId(), departId);
                 sysUserDepartMapper.insert(userDepart);
@@ -657,13 +672,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
 
     @Override
-    public void getItsPersonnelIds( List<String> rids,String userId) {
-        List<String> ids =  userMapper.getUserIdsByLeaderId(userId);
-        if(Check.isNull(ids)){
-            rids.add(userId);
-        }else{
+    public void getItsPersonnelIds(List<String> rids, String userId) {
+        List<String> ids = userMapper.getUserIdsByLeaderId(userId);
+        rids.add(userId);
+        if (!Check.isNull(ids)) {
             for (String id : ids) {
-                getItsPersonnelIds(rids,id);
+                getItsPersonnelIds(rids, id);
             }
         }
     }