From 2871cb99e018f6bf9e2ef76a424a1429a7c818f0 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期四, 13 七月 2023 11:40:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java |   57 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 48 insertions(+), 9 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
index 6e31f40..366f031 100644
--- a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
@@ -19,6 +19,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.vci.ubcs.system.cache.DictCache;
@@ -44,6 +45,7 @@
 import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.BladeUser;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tenant.BladeTenantProperties;
 import org.springblade.core.tool.api.R;
@@ -67,6 +69,7 @@
 @Service
 @RequiredArgsConstructor
 public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implements IUserService {
+
 	private static final String GUEST_NAME = "guest";
 
 	private final IUserDeptService userDeptService;
@@ -76,13 +79,16 @@
 	//鎷垮埌閰嶇疆鐨勮秴绠d
 	@Value("${user-info.id}")
 	private String adminUserId;
-
+	@Value("${user-info.tenant-id}")
+	private String tenantId;
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public boolean submit(User user) {
 		if (StringUtil.isBlank(user.getTenantId())) {
-			user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
+			// user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
+			// 榛樿璁剧疆涓虹鐞嗙粍涓嬬殑鐢ㄦ埛
+			user.setTenantId(this.tenantId);
 		}
 		String tenantId = user.getTenantId();
 		//Tenant tenant = SysCache.getTenant(tenantId);
@@ -160,6 +166,13 @@
 	}
 
 	@Override
+	public List<User> selectAllUser(User user, Long deptId){
+		List<Long> deptIdList = SysCache.getDeptChildIds(deptId);
+		List<User> users = baseMapper.selectUserPage(user, deptIdList, (AuthUtil.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : AuthUtil.getTenantId()));
+		return users;
+	}
+
+	@Override
 	public IPage<UserVO> selectUserSearch(UserVO user, Query query) {
 		LambdaQueryWrapper<User> queryWrapper = Wrappers.<User>query().lambda();
 		String tenantId = AuthUtil.getTenantId();
@@ -204,13 +217,20 @@
 
 	@Override
 	public UserInfo userInfo(String tenantId, String account) {
-		User user = baseMapper.getUser(tenantId, account);
+		User user = baseMapper.getUser(tenantId, account,null);
 		return buildUserInfo(user);
 	}
 
 	@Override
+	public UserInfo userInfo(String tenantId, String account,String name) {
+		User user = baseMapper.getUser(tenantId, account,name);
+		UserInfo userInfo = buildUserInfo(user);
+		return null;
+	}
+
+	@Override
 	public UserInfo userInfo(String tenantId, String account, UserEnum userEnum) {
-		User user = baseMapper.getUser(tenantId, account);
+		User user = baseMapper.getUser(tenantId, account,null);
 		return buildUserInfo(user, userEnum);
 	}
 
@@ -307,6 +327,10 @@
 		}
 		//鑾峰彇鐢ㄦ埛閲囩敤鐨勫瘑鐮佺瓥鐣�
 		Strategy strategy = sysClient.getByUserId(userId).getData();
+		// 鍑犱箮涓嶄細鍑虹幇杩欑鎯呭喌
+		if(ObjectUtil.isEmpty(strategy)) {
+			throw new ServiceException("褰撳墠鐢ㄦ埛鏈簲鐢ㄥ瘑鐮佺瓥鐣ワ紒");
+		}
 		//瀵嗙爜闀垮害鏍¢獙
 		if(newPassword1.length() < strategy.getMinPwdLen() || newPassword1.length() > strategy.getMaxPwdLen()){
 			throw new ServiceException("瀵嗙爜涓繀椤诲惈鏈夈��"+strategy.getCombinationNames()+"銆戜腑鐨勩��"+strategy.getRequiredType()+"銆戠瀵嗙爜缁勫悎鏂瑰紡锛屼笖瀵嗙爜闀垮害蹇呴』鍦ㄣ��"+strategy.getMinPwdLen()+"-"+strategy.getMaxPwdLen()+"銆戣寖鍥村唴");
@@ -318,7 +342,7 @@
 			if(reqType>=strategy.getRequiredType()){
 				break;
 			}
-			if(!Func.isEmpty(RegexUtil.findResult(regexs.get(i),newPassword1))){
+			if(RegexUtil.find(regexs.get(i),newPassword1)){
 				reqType++;
 			}
 		}
@@ -326,12 +350,13 @@
 		if(reqType<strategy.getRequiredType()){
 			throw new ServiceException(resException);
 		}
-		// 鏄惁灞炰簬缁勫悎鏂瑰紡涓殑绫诲瀷
+		// 鏄惁灞炰簬缁勫悎鏂瑰紡涓殑绫诲瀷,浠ュ墠鏄瘑鐮佸繀椤绘槸鍖呭惈鍦ㄧ粍鍚堟柟寮忎腑鐨勭被鍨�
 		String regex = sysClient.getRegex(Arrays.asList(strategy.getCombinationIds().split(","))).getData();
 		regex = "^"+regex+"{"+strategy.getRequiredType()+",}$";
 		boolean result = RegexUtil.find(regex, newPassword1);
 		if(!result){
-			throw new ServiceException(resException);
+			throw new ServiceException("瀵嗙爜涓彧鑳藉瓨鍦ㄣ��"+strategy.getCombinationNames()+"銆戜腑鍖呭惈鐨勫瓧绗︼紒");
+			//throw new ServiceException(resException);
 		}
 		//淇敼瀵嗙爜鍚屾椂锛屾敼鍙樼敤鎴蜂俊鎭腑鐨勫瘑鐮佷慨鏀圭姸鎬佸瓧娈�,瀵嗙爜淇敼鏃堕棿
 		return this.update(Wrappers.<User>update().lambda()
@@ -417,6 +442,7 @@
 		boolean oauthTemp = userOauthService.updateById(userOauth);
 		return (userTemp && oauthTemp);
 	}
+
 	@Override
 	public boolean updatePlatform(Long userId, Integer userType, String userExt) {
 		if (userType.equals(UserEnum.WEB.getCategory())) {
@@ -481,8 +507,9 @@
 		if(adminUserId.equals(userId)){
 			return 0L;
 		}
+		QueryWrapper<User> wrapper = Wrappers.<User>query().eq("ID", userId);
 		//鑾峰彇鍒板瘑鐮佷慨鏀规椂闂�
-		Date pwdUpdateTime = this.getOne(Wrappers.<User>query().eq("ID", userId)).getPwdUpdateTime();
+		Date pwdUpdateTime = this.getOne(wrapper).getPwdUpdateTime();
 		Long pwdupdateday = 0L;
 		if(!Func.isEmpty(pwdUpdateTime)){
 			pwdupdateday = dateToDay(pwdUpdateTime);
@@ -503,8 +530,20 @@
 		return 0L;
 	}
 
+	@Override
+	public boolean updateByUseStrategyId(List<Long> userIds) {
+		return this.update(Wrappers.<User>lambdaUpdate().in(User::getId, userIds).set(User::getStrategyUpdateStatus,CommonConstant.IS_DEFAULT));
+	}
+
+	@Override
+	public List<UserVO> getByRoleUserList(BladeUser user, String roleName) {
+
+
+		return null;
+	}
+
 	/**
-	 * 鏃堕棿鏍煎紡杞ぉ
+	 * 鏃ユ湡鏃堕棿鏍煎紡杞ぉ
 	 * @param date
 	 * @return
 	 */

--
Gitblit v1.9.3