From 4203c28f06c08155b3f4163c23f7b115f38fc8a5 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期二, 21 三月 2023 20:01:35 +0800 Subject: [PATCH] 修改密码策略部分接口 --- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java | 1 Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/IStrategyService.java | 9 ++-- Document/设计文档/密码安全策略开发模块文档.docx | 0 Document/设计文档/租户管理开发模块文档.docx | 0 Document/设计文档/菜单管理开发模块文档.docx | 0 Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.java | 18 ++------- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/StrategyController.java | 14 +++---- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/StrategyServiceImpl.java | 37 ++++++++++++++---- Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.xml | 8 ---- 9 files changed, 42 insertions(+), 45 deletions(-) diff --git "a/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\345\257\206\347\240\201\345\256\211\345\205\250\347\255\226\347\225\245\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\345\257\206\347\240\201\345\256\211\345\205\250\347\255\226\347\225\245\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" new file mode 100644 index 0000000..2c1e4db --- /dev/null +++ "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\345\257\206\347\240\201\345\256\211\345\205\250\347\255\226\347\225\245\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" Binary files differ diff --git "a/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\347\247\237\346\210\267\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\347\247\237\346\210\267\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" index 133a1b8..47544d1 100644 --- "a/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\347\247\237\346\210\267\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" +++ "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\347\247\237\346\210\267\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" Binary files differ diff --git "a/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\350\217\234\345\215\225\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\350\217\234\345\215\225\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" index 84a7576..9b0f1b7 100644 --- "a/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\350\217\234\345\215\225\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" +++ "b/Document/\350\256\276\350\256\241\346\226\207\346\241\243/\350\217\234\345\215\225\347\256\241\347\220\206\345\274\200\345\217\221\346\250\241\345\235\227\346\226\207\346\241\243.docx" Binary files differ diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java index d2af8bc..7226035 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/RoleController.java @@ -152,7 +152,6 @@ /** * 涓嬫媺鏁版嵁婧� */ - //@PreAuth(AuthConstant.PERMIT_ALL) @GetMapping("/select") @ApiOperationSupport(order = 8) @ApiOperation(value = "涓嬫媺鏁版嵁婧�", notes = "浼犲叆id闆嗗悎") diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/StrategyController.java b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/StrategyController.java index 16ed941..be8eb8a 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/StrategyController.java +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/controller/StrategyController.java @@ -1,17 +1,16 @@ package org.springblade.system.controller; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; -import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.system.entity.Strategy; import org.springblade.system.service.IStrategyService; +import org.springframework.data.domain.Page; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; @@ -43,16 +42,15 @@ /** * 鍒嗛〉鏌ヨ * - * @param strategy 绛涢�夋潯浠� - * @param query 鍒嗛〉瀵硅薄 + * @param query 鍒嗛〉瀵硅薄 * @return 鏌ヨ缁撴灉 */ @GetMapping("/page") @ApiOperationSupport(order = 1) @ApiOperation(value = "鍒嗛〉鏌ヨ", notes = "浼犲叆combination锛屽垎椤靛弬鏁皅uery") - public R<IPage<Strategy>> queryByPage(Strategy strategy, Query query) { - IPage<Strategy> pages = strategyService.page(Condition.getPage(query), Condition.getQueryWrapper(strategy)); - return R.data(pages); + public R<Page<Strategy>> queryByPage(Query query) { + Page<Strategy> strategyPage = strategyService.queryAllByPage(query); + return R.data(strategyPage); } /** @@ -90,7 +88,7 @@ @PostMapping("/remove") @ApiOperationSupport(order = 4) @ApiOperation(value = "鍒犻櫎", notes = "浼犲叆ids") - public ResponseEntity<Boolean> deleteById(List<String> ids) { + public ResponseEntity<Boolean> deleteById(@ApiParam(value = "涓婚敭闆嗗悎", required = true) @RequestParam List<String> ids) { return ResponseEntity.ok(this.strategyService.deleteByIds(ids)); } diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.java b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.java index 7a66428..4d6db55 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.java +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.java @@ -1,10 +1,9 @@ package org.springblade.system.mapper; -import org.springblade.system.entity.Strategy; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.apache.ibatis.annotations.Param; -import org.springframework.data.domain.Pageable; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.springblade.system.entity.Strategy; import java.util.List; @@ -17,21 +16,12 @@ public interface StrategyMapper extends BaseMapper<Strategy> { /** - * 閫氳繃ID鏌ヨ鍗曟潯鏁版嵁 - * - * @param id 涓婚敭 - * @return 瀹炰緥瀵硅薄 - */ - Strategy queryById(String id); - - /** * 鏌ヨ鎸囧畾琛屾暟鎹� * - * @param strategy 鏌ヨ鏉′欢 - * @param pageable 鍒嗛〉瀵硅薄 + * @param page 鍒嗛〉瀵硅薄 * @return 瀵硅薄鍒楄〃 */ - List<Strategy> queryAllByPage(Strategy strategy, @Param("pageable") Pageable pageable); + List<Strategy> queryAllByPage(IPage page); /** * 缁熻鎬昏鏁� diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.xml b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.xml index 57d9a56..fdd77f4 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.xml +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/mapper/StrategyMapper.xml @@ -22,14 +22,6 @@ <result property="combinationNames" column="COMBINATIONNAMES"/> </resultMap> - <!--鏌ヨ鍗曚釜--> - <select id="queryById" resultMap="StrategyMap"> - select - ID, STRATEGY_NAME, MIN_PWD_LEN, MAX_PWD_LEN, COMBINATION , REQUIRED_TYPE, EXPIRATION_TIME, REMINDER_TIME, LOCKING_NUM, LOCKING_TIME, DESC, IS_DEFAULT, CREATE_DATE, CREATE_USER, UPDATE_DATE, UPDATE_USER - from PL_SYS_STRATEGY - where ID = #{id} - </select> - <!--鏌ヨ鎸囧畾琛屾暟鎹�--> <select id="queryAllByPage" resultMap="StrategyMap"> select pss.*, diff --git a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/IStrategyService.java b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/IStrategyService.java index 10129d5..a94829a 100644 --- a/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/IStrategyService.java +++ b/Source/BladeX/blade-service/blade-system/src/main/java/org/springblade/system/service/IStrategyService.java @@ -1,9 +1,9 @@ package org.springblade.system.service; import com.baomidou.mybatisplus.extension.service.IService; +import org.springblade.core.mp.support.Query; import org.springblade.system.entity.Strategy; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.PageImpl; import java.util.List; @@ -26,11 +26,10 @@ /** * 鍒嗛〉鏌ヨ * - * @param strategy 绛涢�夋潯浠� - * @param pageRequest 鍒嗛〉瀵硅薄 + * @param query 鍒嗛〉瀵硅薄 * @return 鏌ヨ缁撴灉 */ - Page<Strategy> queryAllByPage(Strategy strategy, PageRequest pageRequest); + PageImpl<Strategy> queryAllByPage(Query query); /** * 鏂板鏁版嵁鎴栦慨鏀规暟鎹� 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 729f287..50406e8 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 @@ -1,16 +1,17 @@ package org.springblade.system.service.impl; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springblade.common.constant.CommonConstant; import org.springblade.core.cache.utils.CacheUtil; import org.springblade.core.log.exception.ServiceException; +import org.springblade.core.mp.support.Query; import org.springblade.core.tool.utils.Func; import org.springblade.system.entity.Strategy; import org.springblade.system.mapper.StrategyMapper; import org.springblade.system.service.IStrategyService; -import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; -import org.springframework.data.domain.PageRequest; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -39,20 +40,19 @@ */ @Override public Strategy queryById(String id) { - return this.strategyMapper.queryById(id); + return this.getById(id); } /** * 鍒嗛〉鏌ヨ * - * @param strategy 绛涢�夋潯浠� - * @param pageRequest 鍒嗛〉瀵硅薄 + * @param query 鍒嗛〉瀵硅薄 * @return 鏌ヨ缁撴灉 */ @Override - public Page<Strategy> queryAllByPage(Strategy strategy, PageRequest pageRequest) { - long total = this.strategyMapper.count(strategy); - return new PageImpl<>(this.strategyMapper.queryAllByPage(strategy, pageRequest), pageRequest, total); + public PageImpl<Strategy> queryAllByPage(Query query) { + Page<Strategy> strategyPage = new Page<>(query.getCurrent(), query.getSize()); + return new PageImpl<>(this.strategyMapper.queryAllByPage(strategyPage)); } /** @@ -65,12 +65,18 @@ public boolean submit(Strategy strategy) { //鍒ゆ柇鏄惁鎼哄甫id if(Func.isEmpty(strategy.getId())){ - //鏂板 + //鎵ц鏂板 Strategy dbstrategy = this.getOne(Wrappers.<Strategy>query().lambda() .eq(Strategy::getStrategyName, strategy.getStrategyName())); //濡傛灉鏁版嵁搴撲腑瀛樺湪杩欐潯缁勫悎鍚嶇О鐨勮褰曠洿鎺ヨ繑鍥� if(!Func.isEmpty(dbstrategy)){ throw new ServiceException("璇ュ瘑鐮佺瓥鐣ュ凡瀛樺湪!"); + } + //濡傛灉褰撳墠鏂板璁剧疆涓洪粯璁ゅ瘑鐮佺瓥鐣ワ紝闇�瑕佸皢宸插瓨鍦ㄩ粯璁ゅ瘑鐮佺瓥鐣ヤ慨鏀逛负闈為粯璁� + if(strategy.getIsDefault().equals("1") || strategy.getIsDefault() == 1){ + this.update(Wrappers.<Strategy>update().lambda() + .set(Strategy::getIsDefault, CommonConstant.NOT_SEALED_ID) + .eq(Strategy::getIsDefault, CommonConstant.DATA_SCOPE_CATEGORY)); } if(Func.isEmpty(strategy.getCreateTime())){ strategy.setCreateTime(new Date()); @@ -81,6 +87,12 @@ boolean temp = super.saveOrUpdate(strategy); return temp; }else { + //濡傛灉褰撳墠淇敼璁剧疆涓洪粯璁ゅ瘑鐮佺瓥鐣ワ紝闇�瑕佸皢宸插瓨鍦ㄩ粯璁ゅ瘑鐮佺瓥鐣ヤ慨鏀逛负闈為粯璁� + if(strategy.getIsDefault().equals("1") || strategy.getIsDefault() == 1){ + this.update(Wrappers.<Strategy>update().lambda() + .set(Strategy::getIsDefault,CommonConstant.NOT_SEALED_ID) + .eq(Strategy::getIsDefault,CommonConstant.DATA_SCOPE_CATEGORY)); + } if(Func.isEmpty(strategy.getUpdateTime())){ strategy.setUpdateTime(new Date()); } @@ -97,6 +109,13 @@ */ @Override public boolean deleteByIds(List<String> ids) { + Strategy strategy = this.getOne(Wrappers.<Strategy>query().lambda() + .in(Strategy::getId,ids) + .eq(Strategy::getIsDefault, CommonConstant.DATA_SCOPE_CATEGORY)); + //濡傛灉瀛樺湪榛樿绛栫暐鐨刬d锛屽氨涓嶈兘鐩存帴鍒犻櫎缁欏嚭鎻愮ず + if(!Func.isEmpty(strategy)){ + throw new ServiceException("涓嶈兘鍒犻櫎榛樿瀵嗙爜绛栫暐!"); + } boolean tenantTemp = this.removeBatchByIds(ids); return tenantTemp; } -- Gitblit v1.9.3