From aa566e55023f6d4fa0d4223434b95cd064c3d0d0 Mon Sep 17 00:00:00 2001 From: yuxc <653031404@qq.com> Date: 星期一, 27 三月 2023 09:25:10 +0800 Subject: [PATCH] 直接使用业务字典完成功能,检查字典是否存在,存在即返回,不存在新增 --- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 54 insertions(+), 0 deletions(-) diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java index 50406e8..15a6b43 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java @@ -44,6 +44,15 @@ } /** + * 鏌ヨ榛樿瀵嗙爜绛栫暐 + * @return + */ + @Override + public Strategy queryByIsDefault() { + return this.strategyMapper.queryByIsDefault(); + } + + /** * 鍒嗛〉鏌ヨ * * @param query 鍒嗛〉瀵硅薄 @@ -78,6 +87,18 @@ .set(Strategy::getIsDefault, CommonConstant.NOT_SEALED_ID) .eq(Strategy::getIsDefault, CommonConstant.DATA_SCOPE_CATEGORY)); } + if(strategy.getRequiredType() > 0){ + throw new ServiceException("蹇呭~绉嶇被涓嶈兘灏忎簬绛変簬0!"); + } + if(strategy.getRequiredType() > strategy.getCombinationIds().split(",").length){ + throw new ServiceException("蹇呭~绉嶇被涓嶈兘澶т簬鎵�閫夋嫨鐨勫瘑鐮佺粍鍚堟柟寮忕殑涓暟!"); + } + if(strategy.getMaxPwdLen() > strategy.getMinPwdLen()){ + throw new ServiceException("瀵嗙爜鏈�澶ч暱搴︿笉鑳藉皬浜庢渶灏忛暱搴�!"); + } + if(strategy.getMinPwdLen() < strategy.getCombinationIds().split(",").length || strategy.getMaxPwdLen() < strategy.getCombinationIds().split(",").length){ + throw new ServiceException("瀵嗙爜鏈�灏忛暱搴︿笉鑳藉皬浜庣瀵嗙瓥鐣ョ殑鍊�!"); + } if(Func.isEmpty(strategy.getCreateTime())){ strategy.setCreateTime(new Date()); } @@ -92,6 +113,10 @@ this.update(Wrappers.<Strategy>update().lambda() .set(Strategy::getIsDefault,CommonConstant.NOT_SEALED_ID) .eq(Strategy::getIsDefault,CommonConstant.DATA_SCOPE_CATEGORY)); + }else { + if(Func.isEmpty(queryByIsDefault())){ + throw new ServiceException("榛樿瀵嗙爜绛栫暐蹇呴』鏈変笖浠呮湁涓�鏉�!"); + } } if(Func.isEmpty(strategy.getUpdateTime())){ strategy.setUpdateTime(new Date()); @@ -120,4 +145,33 @@ return tenantTemp; } + /** + * 閫氳繃绉熸埛id浠ュ強鐢ㄦ埛鍚嶆煡璇㈠瘑鐮佺瓥鐣� + * @param tenantId + * @param name + * @return + */ + @Override + public Strategy queryByNameAndTenantId(String tenantId, String name) { + Strategy strategy = this.strategyMapper.queryByNameAndTenantId(tenantId,name); + if(!Func.isEmpty(strategy)){ + return strategy; + } + return queryByIsDefault(); + } + + /** + * 鏍规嵁鐢ㄦ埛id鏌ヨ瀵嗙爜绛栫暐 + * @param userId + * @return + */ + @Override + public Strategy queryByUserId(Long userId) { + Strategy strategy = this.strategyMapper.queryByUserId(userId); + if(!Func.isEmpty(strategy)){ + return strategy; + } + return queryByIsDefault(); + } + } -- Gitblit v1.9.3