From 7bcd0d2d7510cb2ba67099cd768e1b2b6d047dc2 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Thu, 22 Feb 2024 17:16:27 +0800
Subject: [PATCH] 投票人员查询优化

---
 src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java |   23 ++++++++++++++++++-----
 1 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index e309a8a..02d2ecd 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -17,6 +17,7 @@
 package org.springblade.modules.system.service.impl;
 
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -212,9 +213,9 @@
 	}
 
 	@Override
-	public IPage<User> selectUserPage(IPage<User> page, User user, Long deptId, String tenantId) {
-		if (null == deptId && !AuthUtil.isAdministrator()) {
-			deptId = Long.parseLong(AuthUtil.getDeptId());
+	public IPage<User> selectUserPage(IPage<User> page, User user, String deptId, String tenantId) {
+		if (Strings.isBlank(deptId) && !AuthUtil.isAdministrator() && !AuthUtil.isAdmin()) {
+			deptId = AuthUtil.getDeptId();
 		}
 		List<Long> deptIdList = SysCache.getDeptChildIds(deptId);
 		return page.setRecords(baseMapper.selectUserPage(page, user, deptIdList, tenantId));
@@ -609,6 +610,12 @@
 		return baseMapper.getUserInfoByDistrictId(districtId, building);
 	}
 
+	@Override
+	public List<UserEntity> getUserInfoByDistrictIds(String districtIds) {
+		List<String> list = JSON.parseArray(districtIds).toJavaList(String.class);
+		return baseMapper.getUserInfoByDistrictIds(list);
+	}
+
 	/**
 	 * 处理漏绑定的user_dept
 	 */
@@ -748,8 +755,14 @@
 					list.remove(deptPcs.getId().toString());
 					user.setDeptId(String.join(",",list));
 				}
-				if (!user.getDeptId().contains(dept.getId().toString())) {
-					user.setDeptId(user.getDeptId() + "," + dept.getId());
+				// 删完后可能就没了
+				if (!Strings.isBlank(user.getDeptId())) {
+					if (!user.getDeptId().contains(dept.getId().toString())) {
+						user.setDeptId(user.getDeptId() + "," + dept.getId());
+					}
+				}else {
+					// 删完后的
+					user.setDeptId(dept.getId().toString());
 				}
 			}else {
 				if (!user.getDeptId().contains(dept.getId().toString())) {

--
Gitblit v1.9.3