From 869a5b02c515dca42022c53647edbfbef8c2c3c1 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 11 十月 2023 15:39:26 +0800
Subject: [PATCH] 租户条件从常量类配置方式修改为nacos上拉取配置

---
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java |    6 +++---
 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java       |    4 +++-
 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java                                  |    2 +-
 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java       |    4 +++-
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java    |    6 ++++--
 Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java              |    4 ++--
 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java     |    7 +++++--
 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java  |    2 +-
 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java    |   10 ++++++----
 Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml                               |    8 +++++++-
 10 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java
index f7ae9a8..1320bca 100644
--- a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java
+++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java
@@ -132,8 +132,8 @@
 			throw new UserDeniedAuthorizationException(TokenUtil.USER_HAS_TOO_MANY_FAILS);
 		}
 
-		//瓒呯骇绠$悊鍛橀厤缃枃浠堕厤缃处鍙峰瘑鐮侊紝瀹炵幇鐧诲綍, 榛樿绉熸埛id涓�000000
-		if(tenantId.equals(this.tenantId)){
+		//瓒呯骇绠$悊鍛橀厤缃枃浠堕厤缃处鍙峰瘑鐮侊紝瀹炵幇鐧诲綍, 榛樿绉熸埛id鍜岃秴绠′负閰嶇疆鍑烘潵鐨�
+		if(tenantId.equals(this.tenantId) && userName.equals(username)){
 			if (!this.userName.equals(username) && !password.equalsIgnoreCase(this.password)) {
 				setFailCount(tenantId, username, count,strategy.getLockingTime());
 				throw new UsernameNotFoundException(TokenUtil.USER_NOT_FOUND);
diff --git a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java
index b24bd0b..f7b79a3 100644
--- a/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java
+++ b/Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java
@@ -168,7 +168,7 @@
 		if (tenant == null || tenant.getId() == null) {
 			throw new UserDeniedAuthorizationException(TokenUtil.USER_HAS_NO_TENANT);
 		}
-		if (StringUtil.equalsIgnoreCase(tenant.getTenantId(), BladeConstant.ADMIN_TENANT_ID)) {
+		if (StringUtil.equalsIgnoreCase(tenant.getTenantId(), nacosConfigCache.getAdminUserInfo().getTenantId())) {
 			return false;
 		}
 		if (getTenantProperties().getLicense()) {
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java
index 498661f..6f2455b 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java
@@ -21,6 +21,7 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import com.vci.ubcs.system.cache.DictCache;
+import com.vci.ubcs.system.cache.NacosConfigCache;
 import com.vci.ubcs.system.entity.Dept;
 import com.vci.ubcs.system.enums.DictEnum;
 import com.vci.ubcs.system.service.IDeptService;
@@ -63,6 +64,7 @@
 public class DeptController extends BladeController {
 
 	private final IDeptService deptService;
+	private final NacosConfigCache nacosConfigCache;
 
 	/**
 	 * 璇︽儏
@@ -87,7 +89,7 @@
 	@ApiOperation(value = "鍒楄〃", notes = "浼犲叆dept")
 	public R<List<DeptVO>> list(@ApiIgnore @RequestParam Map<String, Object> dept, BladeUser bladeUser) {
 		QueryWrapper<Dept> queryWrapper = Condition.getQueryWrapper(dept, Dept.class);
-		List<Dept> list = deptService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Dept::getTenantId, bladeUser.getTenantId()) : queryWrapper);
+		List<Dept> list = deptService.list((!bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())) ? queryWrapper.lambda().eq(Dept::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(DeptWrapper.build().listNodeVO(list));
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java
index 1a40eb8..6709c7e 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java
@@ -20,6 +20,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.system.cache.NacosConfigCache;
 import com.vci.ubcs.system.cache.SysCache;
 import com.vci.ubcs.system.entity.Role;
 import com.vci.ubcs.system.service.IRoleService;
@@ -62,6 +63,7 @@
 public class RoleController extends BladeController {
 
 	private final IRoleService roleService;
+	private final NacosConfigCache nacosConfigCache;
 
 	/**
 	 * 璇︽儏
@@ -87,7 +89,7 @@
 	public R<IPage<RoleVO>> list(@ApiIgnore @RequestParam Map<String, Object> role, BladeUser bladeUser, Query query) {
 		QueryWrapper<Role> queryWrapper = Condition.getQueryWrapper(role, Role.class);
 		IPage<Role> page = roleService.page(Condition.getPage(query),
-			(!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
+			(!bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(RoleWrapper.build().pageNodeVO(page));
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java
index 31572a7..f4c1dc7 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java
@@ -20,6 +20,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.system.cache.NacosConfigCache;
 import com.vci.ubcs.system.entity.Tenant;
 import com.vci.ubcs.system.entity.TenantPackage;
 import com.vci.ubcs.system.service.ITenantPackageService;
@@ -69,6 +70,8 @@
 
 	private final ITenantPackageService tenantPackageService;
 
+	private final NacosConfigCache nacosConfigCache;
+
 	/**
 	 * 璇︽儏
 	 */
@@ -95,7 +98,7 @@
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<IPage<Tenant>> list(@ApiIgnore @RequestParam Map<String, Object> tenant, Query query, BladeUser bladeUser) {
 		QueryWrapper<Tenant> queryWrapper = Condition.getQueryWrapper(tenant, Tenant.class);
-		IPage<Tenant> pages = tenantService.page(Condition.getPage(query), (!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper);
+		IPage<Tenant> pages = tenantService.page(Condition.getPage(query), (!bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())) ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(pages);
 	}
 
@@ -108,7 +111,7 @@
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<List<Tenant>> select(Tenant tenant, BladeUser bladeUser) {
 		QueryWrapper<Tenant> queryWrapper = Condition.getQueryWrapper(tenant);
-		List<Tenant> list = tenantService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper);
+		List<Tenant> list = tenantService.list((!bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())) ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(list);
 	}
 
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java
index aa566ac..7a8879c 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java
@@ -20,6 +20,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.vci.ubcs.system.cache.NacosConfigCache;
 import com.vci.ubcs.system.cache.SysCache;
 import com.vci.ubcs.system.dto.MenuDTO;
 import com.vci.ubcs.system.entity.*;
@@ -67,6 +68,7 @@
 	private final ITopMenuSettingService topMenuSettingService;
 	private final static String PARENT_ID = "parentId";
 	private final static Integer MENU_CATEGORY = 1;
+	private final NacosConfigCache nacosConfigCache;
 
 	@Override
 	public List<MenuVO> lazyList(Long parentId, Map<String, Object> param) {
@@ -148,13 +150,13 @@
 
 	@Override
 	public List<TreeNode> grantTree(BladeUser user) {
-		List<TreeNode> menuTree = user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? baseMapper.grantTree() : baseMapper.grantTreeByRole(Func.toLongList(user.getRoleId()));
+		List<TreeNode> menuTree = user.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? baseMapper.grantTree() : baseMapper.grantTreeByRole(Func.toLongList(user.getRoleId()));
 		return ForestNodeMerger.merge(tenantPackageTree(menuTree, user.getTenantId()));
 	}
 
 	@Override
 	public List<TreeNode> grantTopTree(BladeUser user) {
-		List<TreeNode> menuTree = user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? baseMapper.grantTopTree() : baseMapper.grantTopTreeByRole(Func.toLongList(user.getRoleId()));
+		List<TreeNode> menuTree = user.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? baseMapper.grantTopTree() : baseMapper.grantTopTreeByRole(Func.toLongList(user.getRoleId()));
 		return ForestNodeMerger.merge(tenantPackageTree(menuTree, user.getTenantId()));
 	}
 
@@ -217,12 +219,12 @@
 
 	@Override
 	public List<TreeNode> grantDataScopeTree(BladeUser user) {
-		return ForestNodeMerger.merge(user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? baseMapper.grantDataScopeTree() : baseMapper.grantDataScopeTreeByRole(Func.toLongList(user.getRoleId())));
+		return ForestNodeMerger.merge(user.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? baseMapper.grantDataScopeTree() : baseMapper.grantDataScopeTreeByRole(Func.toLongList(user.getRoleId())));
 	}
 
 	@Override
 	public List<TreeNode> grantApiScopeTree(BladeUser user) {
-		return ForestNodeMerger.merge(user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? baseMapper.grantApiScopeTree() : baseMapper.grantApiScopeTreeByRole(Func.toLongList(user.getRoleId())));
+		return ForestNodeMerger.merge(user.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? baseMapper.grantApiScopeTree() : baseMapper.grantApiScopeTreeByRole(Func.toLongList(user.getRoleId())));
 	}
 
 	@Override
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java
index 799420e..bf8fc63 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java
@@ -194,7 +194,7 @@
 		List<String> tenantIds = this.list(Wrappers.<Tenant>query().lambda().in(Tenant::getId, ids))
 			.stream().map(tenant -> Func.toStr(tenant.getTenantId())).distinct().collect(Collectors.toList());
 		CacheUtil.clear(SYS_CACHE, tenantIds);
-		if (tenantIds.contains(BladeConstant.ADMIN_TENANT_ID)) {
+		if (tenantIds.contains(nacosConfigCache.getAdminUserInfo().getTenantId())) {
 			throw new ServiceException("涓嶅彲鍒犻櫎绠$悊绉熸埛!");
 		}
 		boolean tenantTemp = this.deleteLogic(ids);
diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
index ff6e118..6877a21 100644
--- a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
+++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml
@@ -221,7 +221,13 @@
     </select>
 
     <select id="grantTree" resultMap="treeNodeResultMap">
-        select id, parent_id, name as title, id as "value", id as "key" from pl_sys_menu where is_deleted = 0 order by sort
+        select
+               id,
+               parent_id,
+               name as title,
+               id as "value",
+               id as "key"
+        from pl_sys_menu where is_deleted = 0 order by sort
     </select>
 
     <select id="grantTreeByRole" resultMap="treeNodeResultMap">
diff --git a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
index 5d3f5e4..24c20c5 100644
--- a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
+++ b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
@@ -21,6 +21,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.vci.ubcs.system.cache.NacosConfigCache;
 import com.vci.ubcs.system.user.entity.User;
 import com.vci.ubcs.system.user.excel.UserExcel;
 import com.vci.ubcs.system.user.excel.UserImporter;
@@ -75,6 +76,7 @@
 
 	private final IUserService userService;
 	private final BladeRedis bladeRedis;
+	private final NacosConfigCache nacosConfigCache;
 
 	/**
 	 * 鏌ヨ鍗曟潯
@@ -123,7 +125,7 @@
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<IPage<UserVO>> list(@ApiIgnore @RequestParam Map<String, Object> user, Query query, BladeUser bladeUser) {
 		QueryWrapper<User> queryWrapper = Condition.getQueryWrapper(user, User.class);
-		IPage<User> pages = userService.page(Condition.getPage(query), (!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(User::getTenantId, bladeUser.getTenantId()) : queryWrapper);
+		IPage<User> pages = userService.page(Condition.getPage(query), (!bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId())) ? queryWrapper.lambda().eq(User::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(UserWrapper.build().pageVO(pages));
 	}
 
@@ -139,7 +141,7 @@
 	@ApiOperation(value = "鍒楄〃", notes = "浼犲叆account鍜宺ealName")
 	//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
 	public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) {
-		IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId()));
+		IPage<User> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? StringPool.EMPTY : bladeUser.getTenantId()));
 		return R.data(UserWrapper.build().pageVO(pages));
 	}
 
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 943f36f..6cc6556 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
@@ -84,7 +84,7 @@
 	@Transactional(rollbackFor = Exception.class)
 	public boolean submit(User user) {
 		if (StringUtil.isBlank(user.getTenantId())) {
-			// user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
+			// user.setTenantId(nacosConfigCache.getAdminUserInfo().getTenantId());
 			// 榛樿璁剧疆涓虹鐞嗙粍涓嬬殑鐢ㄦ埛
 			user.setTenantId(nacosConfigCache.getAdminUserInfo().getTenantId());
 		}
@@ -106,7 +106,7 @@
 		Boolean flag = true;
 		for (User user : users){
 			if (StringUtil.isBlank(user.getTenantId())) {
-				user.setTenantId(BladeConstant.ADMIN_TENANT_ID);
+				user.setTenantId(nacosConfigCache.getAdminUserInfo().getTenantId());
 			}
 			String tenantId = user.getTenantId();
 			if (Func.isNotEmpty(user.getPassword())) {
@@ -166,7 +166,7 @@
 	@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()));
+		List<User> users = baseMapper.selectUserPage(user, deptIdList, (AuthUtil.getTenantId().equals(nacosConfigCache.getAdminUserInfo().getTenantId()) ? StringPool.EMPTY : AuthUtil.getTenantId()));
 		return users;
 	}
 

--
Gitblit v1.9.3