|
|
@@ -53,6 +53,7 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService {
|
|
|
@Override
|
|
|
public boolean updateSysTenantPackageById(SysTenantPackageDTO source) {
|
|
|
validatePackageSource(Collections.singleton(source.getId()));
|
|
|
+ validateSource(source);
|
|
|
SysTenantPackagePO exitPackage = tenantPackageRepository.selectOne(new LambdaQueryWrapper<SysTenantPackagePO>()
|
|
|
.eq(SysTenantPackagePO::getPackageCode, source.getPackageCode())
|
|
|
.ne(SysTenantPackagePO::getId,source.getId())
|
|
|
@@ -65,12 +66,7 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService {
|
|
|
|
|
|
@Override
|
|
|
public boolean insertSysTenantPackage(SysTenantPackageDTO source) {
|
|
|
- SysTenantPackagePO exitPackage = tenantPackageRepository.selectOne(new LambdaQueryWrapper<SysTenantPackagePO>()
|
|
|
- .eq(SysTenantPackagePO::getPackageCode, source.getPackageCode())
|
|
|
- .last("limit 1"));
|
|
|
- if(exitPackage!=null){
|
|
|
- throw new ServiceException(TRExcCode.SYSTEM_ERROR_B0001,String.format("租户套餐编号 %s 已存在,无法重复添加",source.getPackageCode()));
|
|
|
- }
|
|
|
+ validateSource(source);
|
|
|
return tenantPackageRepository.insert(SysTenantPackageMapper.INSTANCE.toPO(source))!=0;
|
|
|
}
|
|
|
|
|
|
@@ -101,6 +97,17 @@ public class SysTenantPackageServiceImpl implements ISysTenantPackageService {
|
|
|
.eq(SysTenantPackagePO::getType, PackageEnum.sys.name())));
|
|
|
}
|
|
|
|
|
|
+ private void validateSource(SysTenantPackageDTO source){
|
|
|
+ SysTenantPackagePO sysTenantPackagePO = tenantPackageRepository.selectOne(new LambdaQueryWrapper<SysTenantPackagePO>()
|
|
|
+ .ne(StrUtil.isNotEmpty(source.getId()), SysTenantPackagePO::getId, source.getId())
|
|
|
+ .eq(SysTenantPackagePO::getPackageCode, source.getPackageCode())
|
|
|
+ .eq(SysTenantPackagePO::getPackageName, source.getPackageName())
|
|
|
+ .last("limit 1"));
|
|
|
+ if(ObjectUtil.isNotNull(sysTenantPackagePO)){
|
|
|
+ throw new ServiceException(TRExcCode.SYSTEM_ERROR_B0001,"租户套餐的名称、编码不能重复");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void validatePackageSource(Collection<String> packageIds){
|
|
|
List<SysTenantPackagePO> packages = tenantPackageRepository.selectList(new LambdaQueryWrapper<SysTenantPackagePO>()
|
|
|
.in(SysTenantPackagePO::getId, packageIds));
|