From 0baeb5d2b147bf29add1e5373652ae70dd749b69 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期五, 24 三月 2023 21:08:55 +0800 Subject: [PATCH] 更新密码策略功能 --- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java | 49 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 45 insertions(+), 4 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 f76c5aa..8d0c523 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,16 @@ } /** + * 鏌ヨ榛樿瀵嗙爜绛栫暐 + * @return + */ + @Override + public Strategy queryByIsDefault() { + return this.getOne(Wrappers.<Strategy>query().lambda() + .eq(Strategy::getIsDefault, CommonConstant.DATA_SCOPE_CATEGORY)); + } + + /** * 鍒嗛〉鏌ヨ * * @param query 鍒嗛〉瀵硅薄 @@ -77,6 +87,18 @@ this.update(Wrappers.<Strategy>update().lambda() .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()); @@ -125,13 +147,32 @@ } /** - * 鏌ヨ榛樿瀵嗙爜绛栫暐 + * 閫氳繃绉熸埛id浠ュ強鐢ㄦ埛鍚嶆煡璇㈠瘑鐮佺瓥鐣� + * @param tenantId + * @param name * @return */ @Override - public Long queryByIsDefault() { - return this.getOne(Wrappers.<Strategy>query().lambda() - .eq(Strategy::getIsDefault, CommonConstant.DATA_SCOPE_CATEGORY)).getId(); + 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