From 82ea85d8714462e23e598f4563c758ebf2b764ca Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 20 二月 2025 18:08:47 +0800
Subject: [PATCH] 合同新增审批
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java | 69 +++++++++++++++++++++++++++++-----
1 files changed, 59 insertions(+), 10 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index 5fc26a4..ed7ae34 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -6,8 +6,14 @@
import java.util.stream.Collectors;
import javax.validation.Validator;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
+import com.ruoyi.common.core.domain.entity.SysDept;
+import com.ruoyi.system.mapper.*;
+import com.ruoyi.system.model.TDept;
+import com.ruoyi.system.model.TDeptToUser;
import com.ruoyi.system.query.SysUserQuery;
+import com.ruoyi.system.service.TDeptToUserService;
import com.ruoyi.system.vo.SysUserVO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -27,11 +33,6 @@
import com.ruoyi.system.domain.SysPost;
import com.ruoyi.system.domain.SysUserPost;
import com.ruoyi.system.domain.SysUserRole;
-import com.ruoyi.system.mapper.SysPostMapper;
-import com.ruoyi.system.mapper.SysRoleMapper;
-import com.ruoyi.system.mapper.SysUserMapper;
-import com.ruoyi.system.mapper.SysUserPostMapper;
-import com.ruoyi.system.mapper.SysUserRoleMapper;
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserService;
@@ -59,9 +60,13 @@
@Autowired
private SysUserPostMapper userPostMapper;
+ @Autowired
+ private TDeptToUserMapper deptToUserMapper;
@Autowired
private ISysConfigService configService;
+ @Autowired
+ private TDeptMapper deptMapper;
@Autowired
protected Validator validator;
@@ -264,7 +269,7 @@
// 新增用户信息
int rows = userMapper.insertUser(user);
// 新增用户岗位关联
-// insertUserPost(user);
+ insertUserDept(user);
// 新增用户与角色管理
insertUserRoleId(user);
return rows;
@@ -297,10 +302,10 @@
userRoleMapper.deleteUserRoleByUserId(userId);
// 新增用户与角色管理
insertUserRoleId(user);
- // 删除用户与岗位关联
-// userPostMapper.deleteUserPostByUserId(userId);
- // 新增用户与岗位管理
-// insertUserPost(user);
+ // 删除用户与部门关联
+ deptToUserMapper.deleteUserDeptByUserId(userId);
+ // 新增用户与部门管理
+ insertUserDept(user);
return userMapper.updateUser(user);
}
@@ -401,6 +406,17 @@
}
/**
+ * 新增用户角色信息
+ *
+ * @param user 用户对象
+ */
+ public void insertUserDept(SysUser user)
+ {
+ this.insertUserDept(user.getUserId(), user.getDeptIds());
+ }
+
+
+ /**
* 新增用户岗位信息
*
* @param user 用户对象
@@ -460,6 +476,26 @@
ur.setUserId(userId);
ur.setRoleId(roleId);
userRoleMapper.insertUserRole(ur);
+ }
+ }
+ /**
+ * 新增用户部门信息
+ *
+ * @param userId 用户ID
+ * @param deptIds 部门id集合
+ */
+ public void insertUserDept(Long userId, List<String> deptIds)
+ {
+ if (Objects.nonNull(userId) && !CollectionUtils.isEmpty(deptIds)){
+ List<TDeptToUser> deptToUserList = new ArrayList<>();
+ for (String deptId : deptIds) {
+ // 新增用户与角色管理
+ TDeptToUser deptToUser = new TDeptToUser();
+ deptToUser.setUserId(userId);
+ deptToUser.setDeptId(deptId);
+ deptToUserList.add(deptToUser);
+ }
+ userRoleMapper.insertBatchUserDept(deptToUserList);
}
}
@@ -628,6 +664,19 @@
public PageInfo<SysUserVO> pageList(SysUserQuery query) {
PageInfo<SysUserVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
List<SysUserVO> list = userMapper.pageList(query,pageInfo);
+ if(CollectionUtils.isEmpty(list)){
+ return pageInfo;
+ }
+ List<Long> userIds = list.stream().map(SysUserVO::getUserId).collect(Collectors.toList());
+ // 查询所有部门
+ List<TDept> depts = deptMapper.selectList(Wrappers.lambdaQuery(TDept.class));
+ List<TDeptToUser> tDeptToUsers = deptToUserMapper.selectList(Wrappers.lambdaQuery(TDeptToUser.class)
+ .in(TDeptToUser::getUserId, userIds));
+ for (SysUserVO sysUserVO : list) {
+ tDeptToUsers.stream().filter(tDeptToUser -> tDeptToUser.getUserId().equals(sysUserVO.getUserId())).forEach(tDeptToUser -> {
+ sysUserVO.setDeptList(depts.stream().filter(tDept -> tDept.getId().equals(tDeptToUser.getDeptId())).map(TDept::getDeptName).collect(Collectors.toList()));
+ });
+ }
pageInfo.setRecords(list);
return pageInfo;
}
--
Gitblit v1.7.1