ludc
2023-10-11 869a5b02c515dca42022c53647edbfbef8c2c3c1
租户条件从常量类配置方式修改为nacos上拉取配置
已修改10个文件
53 ■■■■■ 文件已修改
Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/service/BladeUserDetailsServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-auth/src/main/java/com/vci/ubcs/auth/utils/TokenUtil.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/DeptController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/RoleController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/TenantController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/TenantServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
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()) {
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));
    }
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));
    }
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);
    }
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
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);
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">
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和realName")
    //@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));
    }
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;
    }