|
@@ -2,13 +2,11 @@ package cn.iocoder.yudao.module.system.service.errorcode;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
|
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
|
|
import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO;
|
|
|
import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO;
|
|
|
-import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeCreateReqVO;
|
|
|
-import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExportReqVO;
|
|
|
import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO;
|
|
|
-import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeUpdateReqVO;
|
|
|
-import cn.iocoder.yudao.module.system.convert.errorcode.ErrorCodeConvert;
|
|
|
+import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeSaveReqVO;
|
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
|
|
|
import cn.iocoder.yudao.module.system.dal.mysql.errorcode.ErrorCodeMapper;
|
|
|
import cn.iocoder.yudao.module.system.enums.errorcode.ErrorCodeTypeEnum;
|
|
@@ -43,12 +41,12 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
|
|
|
private ErrorCodeMapper errorCodeMapper;
|
|
|
|
|
|
@Override
|
|
|
- public Long createErrorCode(ErrorCodeCreateReqVO createReqVO) {
|
|
|
+ public Long createErrorCode(ErrorCodeSaveReqVO createReqVO) {
|
|
|
// 校验 code 重复
|
|
|
validateCodeDuplicate(createReqVO.getCode(), null);
|
|
|
|
|
|
// 插入
|
|
|
- ErrorCodeDO errorCode = ErrorCodeConvert.INSTANCE.convert(createReqVO)
|
|
|
+ ErrorCodeDO errorCode = BeanUtils.toBean(createReqVO, ErrorCodeDO.class)
|
|
|
.setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType());
|
|
|
errorCodeMapper.insert(errorCode);
|
|
|
// 返回
|
|
@@ -56,14 +54,14 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void updateErrorCode(ErrorCodeUpdateReqVO updateReqVO) {
|
|
|
+ public void updateErrorCode(ErrorCodeSaveReqVO updateReqVO) {
|
|
|
// 校验存在
|
|
|
validateErrorCodeExists(updateReqVO.getId());
|
|
|
// 校验 code 重复
|
|
|
validateCodeDuplicate(updateReqVO.getCode(), updateReqVO.getId());
|
|
|
|
|
|
// 更新
|
|
|
- ErrorCodeDO updateObj = ErrorCodeConvert.INSTANCE.convert(updateReqVO)
|
|
|
+ ErrorCodeDO updateObj = BeanUtils.toBean(updateReqVO, ErrorCodeDO.class)
|
|
|
.setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType());
|
|
|
errorCodeMapper.updateById(updateObj);
|
|
|
}
|
|
@@ -116,11 +114,6 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
|
|
|
return errorCodeMapper.selectPage(pageReqVO);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public List<ErrorCodeDO> getErrorCodeList(ErrorCodeExportReqVO exportReqVO) {
|
|
|
- return errorCodeMapper.selectList(exportReqVO);
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public void autoGenerateErrorCodes(List<ErrorCodeAutoGenerateReqDTO> autoGenerateDTOs) {
|
|
@@ -134,40 +127,40 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
|
|
|
|
|
|
// 遍历 autoGenerateBOs 数组,逐个插入或更新。考虑到每次量级不大,就不走批量了
|
|
|
autoGenerateDTOs.forEach(autoGenerateDTO -> {
|
|
|
- ErrorCodeDO errorCodeDO = errorCodeDOMap.get(autoGenerateDTO.getCode());
|
|
|
+ ErrorCodeDO errorCode = errorCodeDOMap.get(autoGenerateDTO.getCode());
|
|
|
// 不存在,则进行新增
|
|
|
- if (errorCodeDO == null) {
|
|
|
- errorCodeDO = ErrorCodeConvert.INSTANCE.convert(autoGenerateDTO)
|
|
|
+ if (errorCode == null) {
|
|
|
+ errorCode = BeanUtils.toBean(autoGenerateDTO, ErrorCodeDO.class)
|
|
|
.setType(ErrorCodeTypeEnum.AUTO_GENERATION.getType());
|
|
|
- errorCodeMapper.insert(errorCodeDO);
|
|
|
+ errorCodeMapper.insert(errorCode);
|
|
|
return;
|
|
|
}
|
|
|
// 存在,则进行更新。更新有三个前置条件:
|
|
|
// 条件 1. 只更新自动生成的错误码,即 Type 为 ErrorCodeTypeEnum.AUTO_GENERATION
|
|
|
- if (!ErrorCodeTypeEnum.AUTO_GENERATION.getType().equals(errorCodeDO.getType())) {
|
|
|
+ if (!ErrorCodeTypeEnum.AUTO_GENERATION.getType().equals(errorCode.getType())) {
|
|
|
return;
|
|
|
}
|
|
|
// 条件 2. 分组 applicationName 必须匹配,避免存在错误码冲突的情况
|
|
|
- if (!autoGenerateDTO.getApplicationName().equals(errorCodeDO.getApplicationName())) {
|
|
|
+ if (!autoGenerateDTO.getApplicationName().equals(errorCode.getApplicationName())) {
|
|
|
log.error("[autoGenerateErrorCodes][自动创建({}/{}) 错误码失败,数据库中已经存在({}/{})]",
|
|
|
autoGenerateDTO.getCode(), autoGenerateDTO.getApplicationName(),
|
|
|
- errorCodeDO.getCode(), errorCodeDO.getApplicationName());
|
|
|
+ errorCode.getCode(), errorCode.getApplicationName());
|
|
|
return;
|
|
|
}
|
|
|
// 条件 3. 错误提示语存在差异
|
|
|
- if (autoGenerateDTO.getMessage().equals(errorCodeDO.getMessage())) {
|
|
|
+ if (autoGenerateDTO.getMessage().equals(errorCode.getMessage())) {
|
|
|
return;
|
|
|
}
|
|
|
// 最终匹配,进行更新
|
|
|
- errorCodeMapper.updateById(new ErrorCodeDO().setId(errorCodeDO.getId()).setMessage(autoGenerateDTO.getMessage()));
|
|
|
+ errorCodeMapper.updateById(new ErrorCodeDO().setId(errorCode.getId()).setMessage(autoGenerateDTO.getMessage()));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public List<ErrorCodeRespDTO> getErrorCodeList(String applicationName, LocalDateTime minUpdateTime) {
|
|
|
- List<ErrorCodeDO> errorCodeDOs = errorCodeMapper.selectListByApplicationNameAndUpdateTimeGt(
|
|
|
+ List<ErrorCodeDO> list = errorCodeMapper.selectListByApplicationNameAndUpdateTimeGt(
|
|
|
applicationName, minUpdateTime);
|
|
|
- return ErrorCodeConvert.INSTANCE.convertList03(errorCodeDOs);
|
|
|
+ return BeanUtils.toBean(list, ErrorCodeRespDTO.class);
|
|
|
}
|
|
|
|
|
|
}
|