From e0652e168a1ad4a831d59d54363d3fa5582903d2 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 22 三月 2023 18:26:29 +0800
Subject: [PATCH] 修改用户服务相关内容,增加密码策略

---
 Source/BladeX/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java |   38 +++++++++++++++++++++++---------------
 1 files changed, 23 insertions(+), 15 deletions(-)

diff --git a/Source/BladeX/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java b/Source/BladeX/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java
index 9b0ada5..7465d53 100644
--- a/Source/BladeX/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java
+++ b/Source/BladeX/blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java
@@ -23,7 +23,6 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.AllArgsConstructor;
 import org.springblade.common.constant.CommonConstant;
-import org.springblade.common.constant.TenantConstant;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.core.mp.support.Condition;
@@ -32,7 +31,6 @@
 import org.springblade.core.tenant.BladeTenantProperties;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
-import org.springblade.core.tool.jackson.JsonUtil;
 import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.*;
 import org.springblade.system.cache.DictCache;
@@ -83,19 +81,7 @@
 			user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
 		}
 		String tenantId = user.getTenantId();
-		Tenant tenant = SysCache.getTenant(tenantId);
-		if (Func.isNotEmpty(tenant)) {
-			Integer accountNumber = tenant.getAccountNumber();
-			if (tenantProperties.getLicense()) {
-				String licenseKey = tenant.getLicenseKey();
-				String decrypt = DesUtil.decryptFormHex(licenseKey, TenantConstant.DES_KEY);
-				accountNumber = JsonUtil.parse(decrypt, Tenant.class).getAccountNumber();
-			}
-			Long tenantCount = baseMapper.selectCount(Wrappers.<User>query().lambda().eq(User::getTenantId, tenantId));
-			if (accountNumber != null && accountNumber > 0 && accountNumber <= tenantCount) {
-				throw new ServiceException("褰撳墠绉熸埛宸插埌鏈�澶ц处鍙烽搴�!");
-			}
-		}
+		//Tenant tenant = SysCache.getTenant(tenantId);
 		if (Func.isNotEmpty(user.getPassword())) {
 			user.setPassword(DigestUtil.encrypt(user.getPassword()));
 		}
@@ -108,6 +94,28 @@
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
+	public boolean submitList(List<User> users) {
+		Boolean flag = true;
+		for (User user : users){
+			if (StringUtil.isBlank(user.getTenantId())) {
+				user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
+			}
+			String tenantId = user.getTenantId();
+			if (Func.isNotEmpty(user.getPassword())) {
+				user.setPassword(DigestUtil.encrypt(user.getPassword()));
+			}
+			Long userCount = baseMapper.selectCount(Wrappers.<User>query().lambda().eq(User::getTenantId, tenantId).eq(User::getAccount, user.getAccount()));
+			if (userCount > 0L && Func.isEmpty(user.getId())) {
+				throw new ServiceException(StringUtil.format("褰撳墠鐢ㄦ埛 [{}] 宸插瓨鍦�!", user.getAccount()));
+			}
+			flag = save(user) && submitUserDept(user);
+
+		}
+		return flag;
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public boolean updateUser(User user) {
 		String tenantId = user.getTenantId();
 		Long userCount = baseMapper.selectCount(

--
Gitblit v1.9.3