From 680a9877fe64c40aced1f4e04ea34056fac204fc Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Thu, 19 Mar 2026 14:03:30 +0800
Subject: [PATCH] 支持多部门

---
 gkhy-system/src/main/java/com/gkhy/system/service/impl/SysUserServiceImpl.java |   52 +++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 47 insertions(+), 5 deletions(-)

diff --git a/gkhy-system/src/main/java/com/gkhy/system/service/impl/SysUserServiceImpl.java b/gkhy-system/src/main/java/com/gkhy/system/service/impl/SysUserServiceImpl.java
index 6134583..877c47f 100644
--- a/gkhy-system/src/main/java/com/gkhy/system/service/impl/SysUserServiceImpl.java
+++ b/gkhy-system/src/main/java/com/gkhy/system/service/impl/SysUserServiceImpl.java
@@ -7,6 +7,8 @@
 import javax.validation.Validator;
 
 import com.gkhy.common.core.domain.entity.IdsDto;
+import com.gkhy.system.domain.SysUserDept;
+import com.gkhy.system.mapper.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -25,11 +27,6 @@
 import com.gkhy.system.domain.SysPost;
 import com.gkhy.system.domain.SysUserPost;
 import com.gkhy.system.domain.SysUserRole;
-import com.gkhy.system.mapper.SysPostMapper;
-import com.gkhy.system.mapper.SysRoleMapper;
-import com.gkhy.system.mapper.SysUserMapper;
-import com.gkhy.system.mapper.SysUserPostMapper;
-import com.gkhy.system.mapper.SysUserRoleMapper;
 import com.gkhy.system.service.ISysConfigService;
 import com.gkhy.system.service.ISysDeptService;
 import com.gkhy.system.service.ISysUserService;
@@ -68,6 +65,10 @@
     @Autowired
     protected Validator validator;
 
+    @Autowired
+    private SysUserDeptMapper sysUserDeptMapper;
+
+
     /**
      * 根据条件分页查询用户列表
      * 
@@ -79,6 +80,11 @@
     public List<SysUser> selectUserList(SysUser user)
     {
         return userMapper.selectUserList(user);
+    }
+
+    @Override
+    public Long selectUserListCount(SysUser user) {
+        return userMapper.selectUserListCount( user);
     }
 
     @Override
@@ -274,6 +280,8 @@
         insertUserPost(user);
         // 新增用户与角色管理
         insertUserRole(user);
+        // 新增用户与部门管理
+        insertUserDept(user);
         return rows;
     }
 
@@ -308,6 +316,9 @@
         userPostMapper.deleteUserPostByUserId(userId);
         // 新增用户与岗位管理
         insertUserPost(user);
+        sysUserDeptMapper.deleteUserDeptByUserId(userId);
+        // 新增用户与部门管理
+        insertUserDept(user);
         return userMapper.updateUser(user);
     }
 
@@ -397,6 +408,11 @@
         this.insertUserRole(user.getUserId(), user.getRoleIds());
     }
 
+    public void insertUserDept(SysUser user)
+    {
+        this.insertUserDept(user.getUserId(), user.getDeptIds());
+    }
+
     /**
      * 新增用户岗位信息
      * 
@@ -444,6 +460,30 @@
     }
 
     /**
+     * 新增用户部门信息
+     *
+     * @param userId 用户ID
+     * @param deptIds 部门组
+     */
+    public void insertUserDept(Long userId, Long[] deptIds)
+    {
+        if (StringUtils.isNotEmpty(deptIds))
+        {
+            // 新增用户部门管理
+            List<SysUserDept> list = new ArrayList<SysUserDept>(deptIds.length);
+            for (Long deptId : deptIds)
+            {
+                SysUserDept du = new SysUserDept();
+                du.setUserId(userId);
+                du.setDeptId(deptId);
+                list.add(du);
+            }
+            sysUserDeptMapper.batchUserDept(list);
+        }
+    }
+
+
+    /**
      * 通过用户ID删除用户
      * 
      * @param userId 用户ID
@@ -479,6 +519,8 @@
         userRoleMapper.deleteUserRole(userIds);
         // 删除用户与岗位关联
         userPostMapper.deleteUserPost(userIds);
+        //删除对应的部门人员
+        sysUserDeptMapper.deleteUserDept(userIds);
         return userMapper.deleteUserByIds(userIds);
     }
 

--
Gitblit v1.9.2