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