接口优化

This commit is contained in:
chenwenjian 2023-08-16 13:58:11 +08:00
parent 3359aebb33
commit 3b65072bb7
9 changed files with 56 additions and 39 deletions

View File

@ -30,10 +30,11 @@ public interface BlackAndWhiteListApi {
/**
* 删除黑名单
*
* @return
*/
@PostMapping("api/black-list/delete")
ApiResult<Void> delete(@RequestBody @Validated BlackAndWhiteListReq req);
ApiResult<List<Long>> delete(@RequestBody @Validated BlackAndWhiteListReq req);
/**
* 查询黑名单
@ -43,6 +44,6 @@ public interface BlackAndWhiteListApi {
ApiResult<List<BlackAndWhiteListResp>> detail(@RequestBody @Validated BlackAndWhiteListReq req);
@PostMapping("api/black-list/is-in")
ApiResult<Boolean> isInBlackOrWhiteList(BlackAndWhiteListReq req);
ApiResult<Boolean> isInBlackOrWhiteList(@RequestBody @Validated BlackAndWhiteListReq req);
}

View File

@ -1,18 +1,15 @@
package cn.axzo.nanopart.api.config;
import cn.axzo.nanopart.api.constant.NanopartConstant;
import org.springframework.cloud.openfeign.EnableFeignClients;
/**
* @author chenwenjian
* @date 2023/8/11 16:28
* @description
* @modifiedBy
* @version: 1.0
*/
@EnableFeignClients(NanopartConstant.BASIC_FEIGN_PACKAGE)
public class NanopartApiAutoConfiguration {
}
//package cn.axzo.nanopart.api.config;
//
//import cn.axzo.nanopart.api.constant.NanopartConstant;
//import org.springframework.cloud.openfeign.EnableFeignClients;
//
///**
// * @author chenwenjian
// * @date 2023/8/11 16:28
// * @description
// * @modifiedBy
// * @version: 1.0
// */
//@EnableFeignClients(NanopartConstant.BASIC_FEIGN_PACKAGE)
//public class NanopartApiAutoConfiguration {
//}

View File

@ -1,2 +0,0 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
cn.axzo.nanopart.black_list.api.config.NanopartApiAutoConfiguration

View File

@ -0,0 +1,2 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
cn.axzo.nanopart.api.config.NanopartApiAutoConfiguration

View File

@ -29,7 +29,7 @@ public class BlackAndWhiteListController implements BlackAndWhiteListApi {
}
@Override
public ApiResult<Void> delete(BlackAndWhiteListReq req) {
public ApiResult<List<Long>> delete(BlackAndWhiteListReq req) {
return blackAndWhiteListService.delete(req);
}

View File

@ -1,6 +1,7 @@
package cn.axzo.nanopart.server.dao.repository;
import cn.axzo.basics.common.BeanMapper;
import cn.axzo.nanopart.api.request.BlackAndWhiteListReq;
import cn.axzo.nanopart.server.dao.entity.SaasBlackWhiteList;
import cn.axzo.nanopart.server.dao.mapper.BlackAndWhiteListMapper;
@ -9,8 +10,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.json.JSONObject;
import org.springframework.stereotype.Repository;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -28,15 +32,28 @@ public class BlackAndWhiteListRepository extends ServiceImpl<BlackAndWhiteListMa
private final BlackAndWhiteListMapper blackAndWhiteListMapper;
public void delete(BlackAndWhiteListReq req) {
public Long create(BlackAndWhiteListReq req){
SaasBlackWhiteList blackWhiteList = BeanMapper.copyBean(req, SaasBlackWhiteList.class);
blackWhiteList.setCreateAt(new Date(System.currentTimeMillis()));
blackWhiteList.setUpdateAt(new Date(System.currentTimeMillis()));
blackAndWhiteListMapper.insert(blackWhiteList);
return blackWhiteList.getId();
}
public List<Long> delete(BlackAndWhiteListReq req) {
List<SaasBlackWhiteList> blackWhiteLists = detail(req);
ArrayList<Long> deletedList = new ArrayList<>();
if (blackWhiteLists!=null&&blackWhiteLists.size()>0){
blackWhiteLists.stream().forEach(saasBlackWhiteList -> {
saasBlackWhiteList.setIsDelete(saasBlackWhiteList.getId());
blackAndWhiteListMapper.updateById(saasBlackWhiteList);
log.info("delete record:"+saasBlackWhiteList);
lambdaUpdate().eq(SaasBlackWhiteList::getId,saasBlackWhiteList.getId())
.eq(SaasBlackWhiteList::getIsDelete,0)
.set(SaasBlackWhiteList::getIsDelete,saasBlackWhiteList.getId())
.update();
deletedList.add(saasBlackWhiteList.getId());
log.info("deleted record:{}", JSONObject.valueToString(saasBlackWhiteList));
});
}
return deletedList;
}
public List<SaasBlackWhiteList> detail(BlackAndWhiteListReq req) {

View File

@ -18,7 +18,7 @@ public interface BlackAndWhiteListService {
ApiResult<Long> create(BlackAndWhiteListReq req);
ApiResult<Void> delete(BlackAndWhiteListReq req);
ApiResult<List<Long>> delete(BlackAndWhiteListReq req);
ApiResult<List<BlackAndWhiteListResp>> detail(BlackAndWhiteListReq req);

View File

@ -35,20 +35,18 @@ public class BlackAndWhiteListServiceImpl implements BlackAndWhiteListService {
*/
@Override
public ApiResult<Long> create(BlackAndWhiteListReq req) {
SaasBlackWhiteList blackWhiteList = BeanMapper.copyBean(req, SaasBlackWhiteList.class);
blackAndWhiteListRepository.save(blackWhiteList);
return ApiResult.ok(blackWhiteList.getId());
return ApiResult.ok(blackAndWhiteListRepository.create(req));
}
/**
* 删除指定条件的所有黑白名单记录
*
* @param req
* @return
*/
@Override
public ApiResult<Void> delete(BlackAndWhiteListReq req) {
blackAndWhiteListRepository.delete(req);
return ApiResult.ok();
public ApiResult<List<Long>> delete(BlackAndWhiteListReq req) {
return ApiResult.ok(blackAndWhiteListRepository.delete(req));
}
/**
@ -62,6 +60,10 @@ public class BlackAndWhiteListServiceImpl implements BlackAndWhiteListService {
List<BlackAndWhiteListResp> blackAndWhiteListResps = BeanMapper.copyList(saasBlackWhiteLists, BlackAndWhiteListResp.class, (saasBlackWhiteList, blackAndWhiteListResp) -> {
JSONObject jsonObject = new JSONObject(saasBlackWhiteList.getParam());
blackAndWhiteListResp.setParam(jsonObject.toString());
// String jsonObjectString = jsonObject.toString();
// // 将json串中的\去除并返回
// String formattedJson = jsonObjectString.replace("", "");
// blackAndWhiteListResp.setParam(formattedJson);
});
return ApiResult.ok(blackAndWhiteListResps);
}

View File

@ -51,11 +51,11 @@
<artifactId>axzo-logger-spring-boot-starter</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>cn.axzo.nanopart</groupId>-->
<!-- <artifactId>black-list</artifactId>-->
<!-- <version>2.0.0-SNAPSHOT</version>-->
<!-- </dependency>-->
<dependency>
<groupId>cn.axzo.pokonyan</groupId>
<artifactId>pokonyan</artifactId>
</dependency>
<dependency>
<groupId>cn.axzo.nanopart</groupId>
<artifactId>black-list-api</artifactId>