From 3b6ced8185a19c9377aa2a059142f15e3b23cd88 Mon Sep 17 00:00:00 2001 From: bleachtred <bleachtred@163.com> Date: 星期一, 27 三月 2023 16:35:12 +0800 Subject: [PATCH] update 优化BaseMapperPlus接口 去除 @param <M> Mapper 泛型 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java | 97 +++++++++++++++++++++++++----------------------- 1 files changed, 50 insertions(+), 47 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java index 02665ad..785e48c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTenantServiceImpl.java @@ -43,16 +43,16 @@ public class SysTenantServiceImpl implements ISysTenantService { private final SysTenantMapper baseMapper; - private final SysTenantPackageMapper sysTenantPackageMapper; - private final SysUserMapper sysUserMapper; - private final SysDeptMapper sysDeptMapper; - private final SysRoleMapper sysRoleMapper; - private final SysRoleMenuMapper sysRoleMenuMapper; - private final SysRoleDeptMapper sysRoleDeptMapper; - private final SysUserRoleMapper sysUserRoleMapper; - private final SysDictTypeMapper sysDictTypeMapper; - private final SysDictDataMapper sysDictDataMapper; - private final SysConfigMapper sysConfigMapper; + private final SysTenantPackageMapper tenantPackageMapper; + private final SysUserMapper userMapper; + private final SysDeptMapper deptMapper; + private final SysRoleMapper roleMapper; + private final SysRoleMenuMapper roleMenuMapper; + private final SysRoleDeptMapper roleDeptMapper; + private final SysUserRoleMapper userRoleMapper; + private final SysDictTypeMapper dictTypeMapper; + private final SysDictDataMapper dictDataMapper; + private final SysConfigMapper configMapper; /** * 鏌ヨ绉熸埛 @@ -139,14 +139,14 @@ dept.setLeader(bo.getUsername()); dept.setParentId(Constants.TOP_PARENT_ID); dept.setAncestors(Constants.TOP_PARENT_ID.toString()); - sysDeptMapper.insert(dept); + deptMapper.insert(dept); Long deptId = dept.getDeptId(); // 瑙掕壊鍜岄儴闂ㄥ叧鑱旇〃 SysRoleDept roleDept = new SysRoleDept(); roleDept.setRoleId(roleId); roleDept.setDeptId(deptId); - sysRoleDeptMapper.insert(roleDept); + roleDeptMapper.insert(roleDept); // 鍒涘缓绯荤粺鐢ㄦ埛 SysUser user = new SysUser(); @@ -155,18 +155,18 @@ user.setNickName(bo.getUsername()); user.setPassword(BCrypt.hashpw(bo.getPassword())); user.setDeptId(deptId); - sysUserMapper.insert(user); + userMapper.insert(user); // 鐢ㄦ埛鍜岃鑹插叧鑱旇〃 SysUserRole userRole = new SysUserRole(); userRole.setUserId(user.getUserId()); userRole.setRoleId(roleId); - sysUserRoleMapper.insert(userRole); + userRoleMapper.insert(userRole); String defaultTenantId = TenantConstants.DEFAULT_TENANT_ID; - List<SysDictType> dictTypeList = sysDictTypeMapper.selectList( + List<SysDictType> dictTypeList = dictTypeMapper.selectList( new LambdaQueryWrapper<SysDictType>().eq(SysDictType::getTenantId, defaultTenantId)); - List<SysDictData> dictDataList = sysDictDataMapper.selectList( + List<SysDictData> dictDataList = dictDataMapper.selectList( new LambdaQueryWrapper<SysDictData>().eq(SysDictData::getTenantId, defaultTenantId)); for (SysDictType dictType : dictTypeList) { dictType.setDictId(null); @@ -176,16 +176,16 @@ dictData.setDictCode(null); dictData.setTenantId(tenantId); } - sysDictTypeMapper.insertBatch(dictTypeList); - sysDictDataMapper.insertBatch(dictDataList); + dictTypeMapper.insertBatch(dictTypeList); + dictDataMapper.insertBatch(dictDataList); - List<SysConfig> sysConfigList = sysConfigMapper.selectList( + List<SysConfig> sysConfigList = configMapper.selectList( new LambdaQueryWrapper<SysConfig>().eq(SysConfig::getTenantId, defaultTenantId)); for (SysConfig config : sysConfigList) { config.setConfigId(null); config.setTenantId(tenantId); } - sysConfigMapper.insertBatch(sysConfigList); + configMapper.insertBatch(sysConfigList); TenantHelper.disableIgnore(); return true; @@ -214,9 +214,9 @@ * @param packageId 绉熸埛濂楅id * @return 瑙掕壊id */ - public Long createTenantRole(String tenantId, Long packageId) { + private Long createTenantRole(String tenantId, Long packageId) { // 鑾峰彇绉熸埛濂楅 - SysTenantPackage tenantPackage = sysTenantPackageMapper.selectById(packageId); + SysTenantPackage tenantPackage = tenantPackageMapper.selectById(packageId); if (ObjectUtil.isNull(tenantPackage)) { throw new ServiceException("濂楅涓嶅瓨鍦�"); } @@ -230,7 +230,7 @@ role.setRoleKey(TenantConstants.TENANT_ADMIN_ROLE_KEY); role.setRoleSort(1); role.setStatus(TenantConstants.NORMAL); - sysRoleMapper.insert(role); + roleMapper.insert(role); Long roleId = role.getRoleId(); // 鍒涘缓瑙掕壊鑿滃崟 @@ -241,7 +241,7 @@ roleMenu.setMenuId(menuId); roleMenus.add(roleMenu); }); - sysRoleMenuMapper.insertBatch(roleMenus); + roleMenuMapper.insertBatch(roleMenus); return roleId; } @@ -272,6 +272,18 @@ } /** + * 鏍¢獙绉熸埛鏄惁鍏佽鎿嶄綔 + * + * @param tenantId 绉熸埛ID + */ + @Override + public void checkTenantAllowed(String tenantId) { + if (ObjectUtil.isNotNull(tenantId) && TenantConstants.DEFAULT_TENANT_ID.equals(tenantId)) { + throw new ServiceException("涓嶅厑璁告搷浣滅鐞嗙鎴�"); + } + } + + /** * 鎵归噺鍒犻櫎绉熸埛 */ @CacheEvict(cacheNames = CacheNames.SYS_TENANT, allEntries = true) @@ -290,49 +302,40 @@ * 鏍¢獙浼佷笟鍚嶇О鏄惁鍞竴 */ @Override - public String checkCompanyNameUnique(SysTenantBo bo) { + public boolean checkCompanyNameUnique(SysTenantBo bo) { boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysTenant>() .eq(SysTenant::getCompanyName, bo.getCompanyName()) .ne(ObjectUtil.isNotNull(bo.getTenantId()), SysTenant::getTenantId, bo.getTenantId())); - if (exist) { - return TenantConstants.NOT_PASS; - } - return TenantConstants.PASS; + return !exist; } /** * 鏍¢獙璐﹀彿浣欓 */ @Override - public String checkAccountBalance(String tenantId) { + public boolean checkAccountBalance(String tenantId) { SysTenantVo tenant = SpringUtils.getAopProxy(this).queryByTenantId(tenantId); // 濡傛灉浣欓涓�-1浠h〃涓嶉檺鍒� if (tenant.getAccountCount() == -1) { - return TenantConstants.PASS; + return true; } - Long userNumber = sysUserMapper.selectCount(new LambdaQueryWrapper<>()); + Long userNumber = userMapper.selectCount(new LambdaQueryWrapper<>()); // 濡傛灉浣欓澶т簬0浠h〃杩樻湁鍙敤鍚嶉 - if (tenant.getAccountCount() - userNumber > 0) { - return TenantConstants.PASS; - } - return TenantConstants.NOT_PASS; + return tenant.getAccountCount() - userNumber > 0; } /** * 鏍¢獙鏈夋晥鏈� */ @Override - public String checkExpireTime(String tenantId) { + public boolean checkExpireTime(String tenantId) { SysTenantVo tenant = SpringUtils.getAopProxy(this).queryByTenantId(tenantId); // 濡傛灉鏈缃繃鏈熸椂闂翠唬琛ㄤ笉闄愬埗 if (ObjectUtil.isNull(tenant.getExpireTime())) { - return TenantConstants.PASS; + return true; } // 濡傛灉褰撳墠鏃堕棿鍦ㄨ繃鏈熸椂闂翠箣鍓嶅垯閫氳繃 - if (new Date().before(tenant.getExpireTime())) { - return TenantConstants.PASS; - } - return TenantConstants.NOT_PASS; + return new Date().before(tenant.getExpireTime()); } /** @@ -342,8 +345,8 @@ @Transactional(rollbackFor = Exception.class) public Boolean syncTenantPackage(String tenantId, String packageId) { TenantHelper.enableIgnore(); - SysTenantPackage tenantPackage = sysTenantPackageMapper.selectById(packageId); - List<SysRole> roles = sysRoleMapper.selectList( + SysTenantPackage tenantPackage = tenantPackageMapper.selectById(packageId); + List<SysRole> roles = roleMapper.selectList( new LambdaQueryWrapper<SysRole>().eq(SysRole::getTenantId, tenantId)); List<Long> roleIds = new ArrayList<>(roles.size() - 1); List<Long> menuIds = StringUtils.splitTo(tenantPackage.getMenuIds(), Convert::toLong); @@ -356,14 +359,14 @@ roleMenu.setMenuId(menuId); roleMenus.add(roleMenu); }); - sysRoleMenuMapper.delete(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, item.getRoleId())); - sysRoleMenuMapper.insertBatch(roleMenus); + roleMenuMapper.delete(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getRoleId, item.getRoleId())); + roleMenuMapper.insertBatch(roleMenus); } else { roleIds.add(item.getRoleId()); } }); if (!roleIds.isEmpty()) { - sysRoleMenuMapper.delete( + roleMenuMapper.delete( new LambdaQueryWrapper<SysRoleMenu>().in(SysRoleMenu::getRoleId, roleIds).notIn(!menuIds.isEmpty(), SysRoleMenu::getMenuId, menuIds)); } TenantHelper.disableIgnore(); -- Gitblit v1.9.3