Commit 8eb04d6805621db14280659932a0957fb241604b

Authored by YunaiV
1 parent c4933976

🔧 简化 errorCode 模块的 VO

Showing 12 changed files with 72 additions and 239 deletions
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/ErrorCodeController.java
1 package cn.iocoder.yudao.module.system.controller.admin.errorcode; 1 package cn.iocoder.yudao.module.system.controller.admin.errorcode;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 3 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
  4 +import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 import cn.iocoder.yudao.framework.common.pojo.PageResult; 5 import cn.iocoder.yudao.framework.common.pojo.PageResult;
  6 +import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
5 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; 7 import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
6 import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; 8 import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
7 -import cn.iocoder.yudao.module.system.convert.errorcode.ErrorCodeConvert;  
8 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.*; 9 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.*;
9 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO; 10 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
10 import cn.iocoder.yudao.module.system.service.errorcode.ErrorCodeService; 11 import cn.iocoder.yudao.module.system.service.errorcode.ErrorCodeService;
@@ -36,14 +37,14 @@ public class ErrorCodeController { @@ -36,14 +37,14 @@ public class ErrorCodeController {
36 @PostMapping("/create") 37 @PostMapping("/create")
37 @Operation(summary = "创建错误码") 38 @Operation(summary = "创建错误码")
38 @PreAuthorize("@ss.hasPermission('system:error-code:create')") 39 @PreAuthorize("@ss.hasPermission('system:error-code:create')")
39 - public CommonResult<Long> createErrorCode(@Valid @RequestBody ErrorCodeCreateReqVO createReqVO) { 40 + public CommonResult<Long> createErrorCode(@Valid @RequestBody ErrorCodeSaveReqVO createReqVO) {
40 return success(errorCodeService.createErrorCode(createReqVO)); 41 return success(errorCodeService.createErrorCode(createReqVO));
41 } 42 }
42 43
43 @PutMapping("/update") 44 @PutMapping("/update")
44 @Operation(summary = "更新错误码") 45 @Operation(summary = "更新错误码")
45 @PreAuthorize("@ss.hasPermission('system:error-code:update')") 46 @PreAuthorize("@ss.hasPermission('system:error-code:update')")
46 - public CommonResult<Boolean> updateErrorCode(@Valid @RequestBody ErrorCodeUpdateReqVO updateReqVO) { 47 + public CommonResult<Boolean> updateErrorCode(@Valid @RequestBody ErrorCodeSaveReqVO updateReqVO) {
47 errorCodeService.updateErrorCode(updateReqVO); 48 errorCodeService.updateErrorCode(updateReqVO);
48 return success(true); 49 return success(true);
49 } 50 }
@@ -63,7 +64,7 @@ public class ErrorCodeController { @@ -63,7 +64,7 @@ public class ErrorCodeController {
63 @PreAuthorize("@ss.hasPermission('system:error-code:query')") 64 @PreAuthorize("@ss.hasPermission('system:error-code:query')")
64 public CommonResult<ErrorCodeRespVO> getErrorCode(@RequestParam("id") Long id) { 65 public CommonResult<ErrorCodeRespVO> getErrorCode(@RequestParam("id") Long id) {
65 ErrorCodeDO errorCode = errorCodeService.getErrorCode(id); 66 ErrorCodeDO errorCode = errorCodeService.getErrorCode(id);
66 - return success(ErrorCodeConvert.INSTANCE.convert(errorCode)); 67 + return success(BeanUtils.toBean(errorCode, ErrorCodeRespVO.class));
67 } 68 }
68 69
69 @GetMapping("/page") 70 @GetMapping("/page")
@@ -71,19 +72,20 @@ public class ErrorCodeController { @@ -71,19 +72,20 @@ public class ErrorCodeController {
71 @PreAuthorize("@ss.hasPermission('system:error-code:query')") 72 @PreAuthorize("@ss.hasPermission('system:error-code:query')")
72 public CommonResult<PageResult<ErrorCodeRespVO>> getErrorCodePage(@Valid ErrorCodePageReqVO pageVO) { 73 public CommonResult<PageResult<ErrorCodeRespVO>> getErrorCodePage(@Valid ErrorCodePageReqVO pageVO) {
73 PageResult<ErrorCodeDO> pageResult = errorCodeService.getErrorCodePage(pageVO); 74 PageResult<ErrorCodeDO> pageResult = errorCodeService.getErrorCodePage(pageVO);
74 - return success(ErrorCodeConvert.INSTANCE.convertPage(pageResult)); 75 + return success(BeanUtils.toBean(pageResult, ErrorCodeRespVO.class));
75 } 76 }
76 77
77 @GetMapping("/export-excel") 78 @GetMapping("/export-excel")
78 @Operation(summary = "导出错误码 Excel") 79 @Operation(summary = "导出错误码 Excel")
79 @PreAuthorize("@ss.hasPermission('system:error-code:export')") 80 @PreAuthorize("@ss.hasPermission('system:error-code:export')")
80 @OperateLog(type = EXPORT) 81 @OperateLog(type = EXPORT)
81 - public void exportErrorCodeExcel(@Valid ErrorCodeExportReqVO exportReqVO, 82 + public void exportErrorCodeExcel(@Valid ErrorCodePageReqVO exportReqVO,
82 HttpServletResponse response) throws IOException { 83 HttpServletResponse response) throws IOException {
83 - List<ErrorCodeDO> list = errorCodeService.getErrorCodeList(exportReqVO); 84 + exportReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
  85 + List<ErrorCodeDO> list = errorCodeService.getErrorCodePage(exportReqVO).getList();
84 // 导出 Excel 86 // 导出 Excel
85 - List<ErrorCodeExcelVO> datas = ErrorCodeConvert.INSTANCE.convertList02(list);  
86 - ExcelUtils.write(response, "错误码.xls", "数据", ErrorCodeExcelVO.class, datas); 87 + ExcelUtils.write(response, "错误码.xls", "数据", ErrorCodeRespVO.class,
  88 + BeanUtils.toBean(list, ErrorCodeRespVO.class));
87 } 89 }
88 90
89 } 91 }
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeCreateReqVO.java deleted
1 -package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo;  
2 -  
3 -import io.swagger.v3.oas.annotations.media.Schema;  
4 -import lombok.Data;  
5 -import lombok.EqualsAndHashCode;  
6 -import lombok.ToString;  
7 -  
8 -@Schema(description = "管理后台 - 错误码创建 Request VO")  
9 -@Data  
10 -@EqualsAndHashCode(callSuper = true)  
11 -@ToString(callSuper = true)  
12 -public class ErrorCodeCreateReqVO extends ErrorCodeBaseVO {  
13 -  
14 -}  
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeExcelVO.java deleted
1 -package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo;  
2 -  
3 -import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;  
4 -import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;  
5 -import com.alibaba.excel.annotation.ExcelProperty;  
6 -import lombok.Data;  
7 -  
8 -import java.time.LocalDateTime;  
9 -  
10 -/**  
11 - * 错误码 Excel VO  
12 - *  
13 - * @author 芋道源码  
14 - */  
15 -@Data  
16 -public class ErrorCodeExcelVO {  
17 -  
18 - @ExcelProperty("错误码编号")  
19 - private Long id;  
20 -  
21 - @ExcelProperty(value = "错误码类型", converter = DictConvert.class)  
22 - @DictFormat("inf_error_code_type") // TODO 芋艿:得思考下杂解决枚举值  
23 - private Integer type;  
24 -  
25 - @ExcelProperty("应用名")  
26 - private String applicationName;  
27 -  
28 - @ExcelProperty("错误码编码")  
29 - private Integer code;  
30 -  
31 - @ExcelProperty("错误码错误提示")  
32 - private String message;  
33 -  
34 - @ExcelProperty("备注")  
35 - private String memo;  
36 -  
37 - @ExcelProperty("创建时间")  
38 - private LocalDateTime createTime;  
39 -  
40 -}  
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeExportReqVO.java deleted
1 -package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo;  
2 -  
3 -import io.swagger.v3.oas.annotations.media.Schema;  
4 -import lombok.Data;  
5 -import org.springframework.format.annotation.DateTimeFormat;  
6 -  
7 -import java.time.LocalDateTime;  
8 -  
9 -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;  
10 -  
11 -@Schema(description = "管理后台 - 错误码 Excel 导出 Request VO,参数和 InfErrorCodePageReqVO 是一致的")  
12 -@Data  
13 -public class ErrorCodeExportReqVO {  
14 -  
15 - @Schema(description = "错误码类型", example = "1")  
16 - private Integer type;  
17 -  
18 - @Schema(description = "应用名", example = "dashboard")  
19 - private String applicationName;  
20 -  
21 - @Schema(description = "错误码编码", example = "1234")  
22 - private Integer code;  
23 -  
24 - @Schema(description = "错误码错误提示", example = "帅气")  
25 - private String message;  
26 -  
27 - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)  
28 - @Schema(description = "创建时间")  
29 - private LocalDateTime[] createTime;  
30 -  
31 -}  
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeRespVO.java
1 package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo; 1 package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo;
2 2
  3 +import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
  4 +import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
  5 +import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
  6 +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
  7 +import com.alibaba.excel.annotation.ExcelProperty;
3 import io.swagger.v3.oas.annotations.media.Schema; 8 import io.swagger.v3.oas.annotations.media.Schema;
4 import lombok.Data; 9 import lombok.Data;
5 -import lombok.EqualsAndHashCode;  
6 -import lombok.ToString;  
7 10
  11 +import javax.validation.constraints.NotNull;
8 import java.time.LocalDateTime; 12 import java.time.LocalDateTime;
9 13
10 @Schema(description = "管理后台 - 错误码 Response VO") 14 @Schema(description = "管理后台 - 错误码 Response VO")
11 @Data 15 @Data
12 -@EqualsAndHashCode(callSuper = true)  
13 -@ToString(callSuper = true)  
14 -public class ErrorCodeRespVO extends ErrorCodeBaseVO { 16 +@ExcelIgnoreUnannotated
  17 +public class ErrorCodeRespVO {
15 18
16 @Schema(description = "错误码编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") 19 @Schema(description = "错误码编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
  20 + @ExcelProperty("错误码编号")
17 private Long id; 21 private Long id;
18 22
19 @Schema(description = "错误码类型,参见 ErrorCodeTypeEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") 23 @Schema(description = "错误码类型,参见 ErrorCodeTypeEnum 枚举类", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
  24 + @ExcelProperty(value = "错误码类型", converter = DictConvert.class)
  25 + @DictFormat(DictTypeConstants.ERROR_CODE_TYPE)
20 private Integer type; 26 private Integer type;
21 27
  28 + @Schema(description = "应用名", requiredMode = Schema.RequiredMode.REQUIRED, example = "dashboard")
  29 + @NotNull(message = "应用名不能为空")
  30 + @ExcelProperty("应用名")
  31 + private String applicationName;
  32 +
  33 + @Schema(description = "错误码编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "1234")
  34 + @NotNull(message = "错误码编码不能为空")
  35 + @ExcelProperty("错误码编码")
  36 + private Integer code;
  37 +
  38 + @Schema(description = "错误码错误提示", requiredMode = Schema.RequiredMode.REQUIRED, example = "帅气")
  39 + @NotNull(message = "错误码错误提示不能为空")
  40 + @ExcelProperty("错误码错误提示")
  41 + private String message;
  42 +
  43 + @Schema(description = "备注", example = "哈哈哈")
  44 + @ExcelProperty("备注")
  45 + private String memo;
  46 +
22 @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) 47 @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
  48 + @ExcelProperty("创建时间")
23 private LocalDateTime createTime; 49 private LocalDateTime createTime;
24 50
25 } 51 }
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeBaseVO.java renamed to yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeSaveReqVO.java
@@ -5,12 +5,12 @@ import lombok.Data; @@ -5,12 +5,12 @@ import lombok.Data;
5 5
6 import javax.validation.constraints.NotNull; 6 import javax.validation.constraints.NotNull;
7 7
8 -/**  
9 -* 错误码 Base VO,提供给添加、修改、详细的子 VO 使用  
10 -* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成  
11 -*/ 8 +@Schema(description = "管理后台 - 错误码创建/修改 Request VO")
12 @Data 9 @Data
13 -public class ErrorCodeBaseVO { 10 +public class ErrorCodeSaveReqVO {
  11 +
  12 + @Schema(description = "错误码编号", example = "1024")
  13 + private Long id;
14 14
15 @Schema(description = "应用名", requiredMode = Schema.RequiredMode.REQUIRED, example = "dashboard") 15 @Schema(description = "应用名", requiredMode = Schema.RequiredMode.REQUIRED, example = "dashboard")
16 @NotNull(message = "应用名不能为空") 16 @NotNull(message = "应用名不能为空")
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/errorcode/vo/ErrorCodeUpdateReqVO.java deleted
1 -package cn.iocoder.yudao.module.system.controller.admin.errorcode.vo;  
2 -  
3 -import io.swagger.v3.oas.annotations.media.Schema;  
4 -import lombok.Data;  
5 -import lombok.EqualsAndHashCode;  
6 -import lombok.ToString;  
7 -  
8 -import javax.validation.constraints.NotNull;  
9 -  
10 -@Schema(description = "管理后台 - 错误码更新 Request VO")  
11 -@Data  
12 -@EqualsAndHashCode(callSuper = true)  
13 -@ToString(callSuper = true)  
14 -public class ErrorCodeUpdateReqVO extends ErrorCodeBaseVO {  
15 -  
16 - @Schema(description = "错误码编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")  
17 - @NotNull(message = "错误码编号不能为空")  
18 - private Long id;  
19 -  
20 -}  
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/errorcode/ErrorCodeConvert.java deleted
1 -package cn.iocoder.yudao.module.system.convert.errorcode;  
2 -  
3 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
4 -import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO;  
5 -import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO;  
6 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeCreateReqVO;  
7 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExcelVO;  
8 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeRespVO;  
9 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeUpdateReqVO;  
10 -import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;  
11 -import org.mapstruct.Mapper;  
12 -import org.mapstruct.factory.Mappers;  
13 -  
14 -import java.util.List;  
15 -  
16 -/**  
17 - * 错误码 Convert  
18 - *  
19 - * @author 芋道源码  
20 - */  
21 -@Mapper  
22 -public interface ErrorCodeConvert {  
23 -  
24 - ErrorCodeConvert INSTANCE = Mappers.getMapper(ErrorCodeConvert.class);  
25 -  
26 - ErrorCodeDO convert(ErrorCodeCreateReqVO bean);  
27 -  
28 - ErrorCodeDO convert(ErrorCodeUpdateReqVO bean);  
29 -  
30 - ErrorCodeRespVO convert(ErrorCodeDO bean);  
31 -  
32 - List<ErrorCodeRespVO> convertList(List<ErrorCodeDO> list);  
33 -  
34 - PageResult<ErrorCodeRespVO> convertPage(PageResult<ErrorCodeDO> page);  
35 -  
36 - List<ErrorCodeExcelVO> convertList02(List<ErrorCodeDO> list);  
37 -  
38 - ErrorCodeDO convert(ErrorCodeAutoGenerateReqDTO bean);  
39 -  
40 - List<ErrorCodeRespDTO> convertList03(List<ErrorCodeDO> list);  
41 -  
42 -}  
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/errorcode/ErrorCodeMapper.java
@@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.errorcode; @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.system.dal.mysql.errorcode;
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; 4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; 5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
6 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExportReqVO;  
7 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO; 6 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO;
8 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO; 7 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
9 import org.apache.ibatis.annotations.Mapper; 8 import org.apache.ibatis.annotations.Mapper;
@@ -25,16 +24,6 @@ public interface ErrorCodeMapper extends BaseMapperX&lt;ErrorCodeDO&gt; { @@ -25,16 +24,6 @@ public interface ErrorCodeMapper extends BaseMapperX&lt;ErrorCodeDO&gt; {
25 .orderByDesc(ErrorCodeDO::getCode)); 24 .orderByDesc(ErrorCodeDO::getCode));
26 } 25 }
27 26
28 - default List<ErrorCodeDO> selectList(ErrorCodeExportReqVO reqVO) {  
29 - return selectList(new LambdaQueryWrapperX<ErrorCodeDO>()  
30 - .eqIfPresent(ErrorCodeDO::getType, reqVO.getType())  
31 - .likeIfPresent(ErrorCodeDO::getApplicationName, reqVO.getApplicationName())  
32 - .eqIfPresent(ErrorCodeDO::getCode, reqVO.getCode())  
33 - .likeIfPresent(ErrorCodeDO::getMessage, reqVO.getMessage())  
34 - .betweenIfPresent(ErrorCodeDO::getCreateTime, reqVO.getCreateTime())  
35 - .orderByDesc(ErrorCodeDO::getCode));  
36 - }  
37 -  
38 default List<ErrorCodeDO> selectListByCodes(Collection<Integer> codes) { 27 default List<ErrorCodeDO> selectListByCodes(Collection<Integer> codes) {
39 return selectList(ErrorCodeDO::getCode, codes); 28 return selectList(ErrorCodeDO::getCode, codes);
40 } 29 }
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/errorcode/ErrorCodeService.java
@@ -3,10 +3,8 @@ package cn.iocoder.yudao.module.system.service.errorcode; @@ -3,10 +3,8 @@ package cn.iocoder.yudao.module.system.service.errorcode;
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO; 4 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO;
5 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO; 5 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO;
6 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeCreateReqVO;  
7 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExportReqVO;  
8 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO; 6 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO;
9 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeUpdateReqVO; 7 +import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeSaveReqVO;
10 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO; 8 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
11 9
12 import javax.validation.Valid; 10 import javax.validation.Valid;
@@ -44,14 +42,14 @@ public interface ErrorCodeService { @@ -44,14 +42,14 @@ public interface ErrorCodeService {
44 * @param createReqVO 创建信息 42 * @param createReqVO 创建信息
45 * @return 编号 43 * @return 编号
46 */ 44 */
47 - Long createErrorCode(@Valid ErrorCodeCreateReqVO createReqVO); 45 + Long createErrorCode(@Valid ErrorCodeSaveReqVO createReqVO);
48 46
49 /** 47 /**
50 * 更新错误码 48 * 更新错误码
51 * 49 *
52 * @param updateReqVO 更新信息 50 * @param updateReqVO 更新信息
53 */ 51 */
54 - void updateErrorCode(@Valid ErrorCodeUpdateReqVO updateReqVO); 52 + void updateErrorCode(@Valid ErrorCodeSaveReqVO updateReqVO);
55 53
56 /** 54 /**
57 * 删除错误码 55 * 删除错误码
@@ -76,12 +74,4 @@ public interface ErrorCodeService { @@ -76,12 +74,4 @@ public interface ErrorCodeService {
76 */ 74 */
77 PageResult<ErrorCodeDO> getErrorCodePage(ErrorCodePageReqVO pageReqVO); 75 PageResult<ErrorCodeDO> getErrorCodePage(ErrorCodePageReqVO pageReqVO);
78 76
79 - /**  
80 - * 获得错误码列表, 用于 Excel 导出  
81 - *  
82 - * @param exportReqVO 查询条件  
83 - * @return 错误码列表  
84 - */  
85 - List<ErrorCodeDO> getErrorCodeList(ErrorCodeExportReqVO exportReqVO);  
86 -  
87 } 77 }
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/errorcode/ErrorCodeServiceImpl.java
@@ -2,13 +2,11 @@ package cn.iocoder.yudao.module.system.service.errorcode; @@ -2,13 +2,11 @@ package cn.iocoder.yudao.module.system.service.errorcode;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.iocoder.yudao.framework.common.pojo.PageResult; 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
  5 +import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
5 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO; 6 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO;
6 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO; 7 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO;
7 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeCreateReqVO;  
8 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExportReqVO;  
9 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO; 8 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO;
10 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeUpdateReqVO;  
11 -import cn.iocoder.yudao.module.system.convert.errorcode.ErrorCodeConvert; 9 +import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeSaveReqVO;
12 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO; 10 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
13 import cn.iocoder.yudao.module.system.dal.mysql.errorcode.ErrorCodeMapper; 11 import cn.iocoder.yudao.module.system.dal.mysql.errorcode.ErrorCodeMapper;
14 import cn.iocoder.yudao.module.system.enums.errorcode.ErrorCodeTypeEnum; 12 import cn.iocoder.yudao.module.system.enums.errorcode.ErrorCodeTypeEnum;
@@ -43,12 +41,12 @@ public class ErrorCodeServiceImpl implements ErrorCodeService { @@ -43,12 +41,12 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
43 private ErrorCodeMapper errorCodeMapper; 41 private ErrorCodeMapper errorCodeMapper;
44 42
45 @Override 43 @Override
46 - public Long createErrorCode(ErrorCodeCreateReqVO createReqVO) { 44 + public Long createErrorCode(ErrorCodeSaveReqVO createReqVO) {
47 // 校验 code 重复 45 // 校验 code 重复
48 validateCodeDuplicate(createReqVO.getCode(), null); 46 validateCodeDuplicate(createReqVO.getCode(), null);
49 47
50 // 插入 48 // 插入
51 - ErrorCodeDO errorCode = ErrorCodeConvert.INSTANCE.convert(createReqVO) 49 + ErrorCodeDO errorCode = BeanUtils.toBean(createReqVO, ErrorCodeDO.class)
52 .setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType()); 50 .setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType());
53 errorCodeMapper.insert(errorCode); 51 errorCodeMapper.insert(errorCode);
54 // 返回 52 // 返回
@@ -56,14 +54,14 @@ public class ErrorCodeServiceImpl implements ErrorCodeService { @@ -56,14 +54,14 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
56 } 54 }
57 55
58 @Override 56 @Override
59 - public void updateErrorCode(ErrorCodeUpdateReqVO updateReqVO) { 57 + public void updateErrorCode(ErrorCodeSaveReqVO updateReqVO) {
60 // 校验存在 58 // 校验存在
61 validateErrorCodeExists(updateReqVO.getId()); 59 validateErrorCodeExists(updateReqVO.getId());
62 // 校验 code 重复 60 // 校验 code 重复
63 validateCodeDuplicate(updateReqVO.getCode(), updateReqVO.getId()); 61 validateCodeDuplicate(updateReqVO.getCode(), updateReqVO.getId());
64 62
65 // 更新 63 // 更新
66 - ErrorCodeDO updateObj = ErrorCodeConvert.INSTANCE.convert(updateReqVO) 64 + ErrorCodeDO updateObj = BeanUtils.toBean(updateReqVO, ErrorCodeDO.class)
67 .setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType()); 65 .setType(ErrorCodeTypeEnum.MANUAL_OPERATION.getType());
68 errorCodeMapper.updateById(updateObj); 66 errorCodeMapper.updateById(updateObj);
69 } 67 }
@@ -117,11 +115,6 @@ public class ErrorCodeServiceImpl implements ErrorCodeService { @@ -117,11 +115,6 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
117 } 115 }
118 116
119 @Override 117 @Override
120 - public List<ErrorCodeDO> getErrorCodeList(ErrorCodeExportReqVO exportReqVO) {  
121 - return errorCodeMapper.selectList(exportReqVO);  
122 - }  
123 -  
124 - @Override  
125 @Transactional 118 @Transactional
126 public void autoGenerateErrorCodes(List<ErrorCodeAutoGenerateReqDTO> autoGenerateDTOs) { 119 public void autoGenerateErrorCodes(List<ErrorCodeAutoGenerateReqDTO> autoGenerateDTOs) {
127 if (CollUtil.isEmpty(autoGenerateDTOs)) { 120 if (CollUtil.isEmpty(autoGenerateDTOs)) {
@@ -134,40 +127,40 @@ public class ErrorCodeServiceImpl implements ErrorCodeService { @@ -134,40 +127,40 @@ public class ErrorCodeServiceImpl implements ErrorCodeService {
134 127
135 // 遍历 autoGenerateBOs 数组,逐个插入或更新。考虑到每次量级不大,就不走批量了 128 // 遍历 autoGenerateBOs 数组,逐个插入或更新。考虑到每次量级不大,就不走批量了
136 autoGenerateDTOs.forEach(autoGenerateDTO -> { 129 autoGenerateDTOs.forEach(autoGenerateDTO -> {
137 - ErrorCodeDO errorCodeDO = errorCodeDOMap.get(autoGenerateDTO.getCode()); 130 + ErrorCodeDO errorCode = errorCodeDOMap.get(autoGenerateDTO.getCode());
138 // 不存在,则进行新增 131 // 不存在,则进行新增
139 - if (errorCodeDO == null) {  
140 - errorCodeDO = ErrorCodeConvert.INSTANCE.convert(autoGenerateDTO) 132 + if (errorCode == null) {
  133 + errorCode = BeanUtils.toBean(autoGenerateDTO, ErrorCodeDO.class)
141 .setType(ErrorCodeTypeEnum.AUTO_GENERATION.getType()); 134 .setType(ErrorCodeTypeEnum.AUTO_GENERATION.getType());
142 - errorCodeMapper.insert(errorCodeDO); 135 + errorCodeMapper.insert(errorCode);
143 return; 136 return;
144 } 137 }
145 // 存在,则进行更新。更新有三个前置条件: 138 // 存在,则进行更新。更新有三个前置条件:
146 // 条件 1. 只更新自动生成的错误码,即 Type 为 ErrorCodeTypeEnum.AUTO_GENERATION 139 // 条件 1. 只更新自动生成的错误码,即 Type 为 ErrorCodeTypeEnum.AUTO_GENERATION
147 - if (!ErrorCodeTypeEnum.AUTO_GENERATION.getType().equals(errorCodeDO.getType())) { 140 + if (!ErrorCodeTypeEnum.AUTO_GENERATION.getType().equals(errorCode.getType())) {
148 return; 141 return;
149 } 142 }
150 // 条件 2. 分组 applicationName 必须匹配,避免存在错误码冲突的情况 143 // 条件 2. 分组 applicationName 必须匹配,避免存在错误码冲突的情况
151 - if (!autoGenerateDTO.getApplicationName().equals(errorCodeDO.getApplicationName())) { 144 + if (!autoGenerateDTO.getApplicationName().equals(errorCode.getApplicationName())) {
152 log.error("[autoGenerateErrorCodes][自动创建({}/{}) 错误码失败,数据库中已经存在({}/{})]", 145 log.error("[autoGenerateErrorCodes][自动创建({}/{}) 错误码失败,数据库中已经存在({}/{})]",
153 autoGenerateDTO.getCode(), autoGenerateDTO.getApplicationName(), 146 autoGenerateDTO.getCode(), autoGenerateDTO.getApplicationName(),
154 - errorCodeDO.getCode(), errorCodeDO.getApplicationName()); 147 + errorCode.getCode(), errorCode.getApplicationName());
155 return; 148 return;
156 } 149 }
157 // 条件 3. 错误提示语存在差异 150 // 条件 3. 错误提示语存在差异
158 - if (autoGenerateDTO.getMessage().equals(errorCodeDO.getMessage())) { 151 + if (autoGenerateDTO.getMessage().equals(errorCode.getMessage())) {
159 return; 152 return;
160 } 153 }
161 // 最终匹配,进行更新 154 // 最终匹配,进行更新
162 - errorCodeMapper.updateById(new ErrorCodeDO().setId(errorCodeDO.getId()).setMessage(autoGenerateDTO.getMessage())); 155 + errorCodeMapper.updateById(new ErrorCodeDO().setId(errorCode.getId()).setMessage(autoGenerateDTO.getMessage()));
163 }); 156 });
164 } 157 }
165 158
166 @Override 159 @Override
167 public List<ErrorCodeRespDTO> getErrorCodeList(String applicationName, LocalDateTime minUpdateTime) { 160 public List<ErrorCodeRespDTO> getErrorCodeList(String applicationName, LocalDateTime minUpdateTime) {
168 - List<ErrorCodeDO> errorCodeDOs = errorCodeMapper.selectListByApplicationNameAndUpdateTimeGt( 161 + List<ErrorCodeDO> list = errorCodeMapper.selectListByApplicationNameAndUpdateTimeGt(
169 applicationName, minUpdateTime); 162 applicationName, minUpdateTime);
170 - return ErrorCodeConvert.INSTANCE.convertList03(errorCodeDOs); 163 + return BeanUtils.toBean(list, ErrorCodeRespDTO.class);
171 } 164 }
172 165
173 } 166 }
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/errorcode/ErrorCodeServiceTest.java
@@ -5,10 +5,8 @@ import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils; @@ -5,10 +5,8 @@ import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils;
5 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; 5 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
6 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO; 6 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeAutoGenerateReqDTO;
7 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO; 7 import cn.iocoder.yudao.module.system.api.errorcode.dto.ErrorCodeRespDTO;
8 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeCreateReqVO;  
9 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeExportReqVO;  
10 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO; 8 import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodePageReqVO;
11 -import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeUpdateReqVO; 9 +import cn.iocoder.yudao.module.system.controller.admin.errorcode.vo.ErrorCodeSaveReqVO;
12 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO; 10 import cn.iocoder.yudao.module.system.dal.dataobject.errorcode.ErrorCodeDO;
13 import cn.iocoder.yudao.module.system.dal.mysql.errorcode.ErrorCodeMapper; 11 import cn.iocoder.yudao.module.system.dal.mysql.errorcode.ErrorCodeMapper;
14 import cn.iocoder.yudao.module.system.enums.errorcode.ErrorCodeTypeEnum; 12 import cn.iocoder.yudao.module.system.enums.errorcode.ErrorCodeTypeEnum;
@@ -44,7 +42,8 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest { @@ -44,7 +42,8 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest {
44 @Test 42 @Test
45 public void testCreateErrorCode_success() { 43 public void testCreateErrorCode_success() {
46 // 准备参数 44 // 准备参数
47 - ErrorCodeCreateReqVO reqVO = randomPojo(ErrorCodeCreateReqVO.class); 45 + ErrorCodeSaveReqVO reqVO = randomPojo(ErrorCodeSaveReqVO.class)
  46 + .setId(null); // 防止 id 被赋值
48 47
49 // 调用 48 // 调用
50 Long errorCodeId = errorCodeService.createErrorCode(reqVO); 49 Long errorCodeId = errorCodeService.createErrorCode(reqVO);
@@ -52,7 +51,7 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest { @@ -52,7 +51,7 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest {
52 assertNotNull(errorCodeId); 51 assertNotNull(errorCodeId);
53 // 校验记录的属性是否正确 52 // 校验记录的属性是否正确
54 ErrorCodeDO errorCode = errorCodeMapper.selectById(errorCodeId); 53 ErrorCodeDO errorCode = errorCodeMapper.selectById(errorCodeId);
55 - assertPojoEquals(reqVO, errorCode); 54 + assertPojoEquals(reqVO, errorCode, "id");
56 assertEquals(ErrorCodeTypeEnum.MANUAL_OPERATION.getType(), errorCode.getType()); 55 assertEquals(ErrorCodeTypeEnum.MANUAL_OPERATION.getType(), errorCode.getType());
57 } 56 }
58 57
@@ -62,7 +61,7 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest { @@ -62,7 +61,7 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest {
62 ErrorCodeDO dbErrorCode = randomErrorCodeDO(); 61 ErrorCodeDO dbErrorCode = randomErrorCodeDO();
63 errorCodeMapper.insert(dbErrorCode);// @Sql: 先插入出一条存在的数据 62 errorCodeMapper.insert(dbErrorCode);// @Sql: 先插入出一条存在的数据
64 // 准备参数 63 // 准备参数
65 - ErrorCodeUpdateReqVO reqVO = randomPojo(ErrorCodeUpdateReqVO.class, o -> { 64 + ErrorCodeSaveReqVO reqVO = randomPojo(ErrorCodeSaveReqVO.class, o -> {
66 o.setId(dbErrorCode.getId()); // 设置更新的 ID 65 o.setId(dbErrorCode.getId()); // 设置更新的 ID
67 }); 66 });
68 67
@@ -134,25 +133,6 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest { @@ -134,25 +133,6 @@ public class ErrorCodeServiceTest extends BaseDbUnitTest {
134 } 133 }
135 134
136 @Test 135 @Test
137 - public void testGetErrorCodeList_export() {  
138 - // mock 数据  
139 - ErrorCodeDO dbErrorCode = initGetErrorCodePage();  
140 - // 准备参数  
141 - ErrorCodeExportReqVO reqVO = new ErrorCodeExportReqVO();  
142 - reqVO.setType(ErrorCodeTypeEnum.AUTO_GENERATION.getType());  
143 - reqVO.setApplicationName("tu");  
144 - reqVO.setCode(1);  
145 - reqVO.setMessage("ma");  
146 - reqVO.setCreateTime(buildBetweenTime(2020, 11, 1, 2020, 11, 30));  
147 -  
148 - // 调用  
149 - List<ErrorCodeDO> list = errorCodeService.getErrorCodeList(reqVO);  
150 - // 断言  
151 - assertEquals(1, list.size());  
152 - assertPojoEquals(dbErrorCode, list.get(0));  
153 - }  
154 -  
155 - @Test  
156 public void testValidateCodeDuplicate_codeDuplicateForCreate() { 136 public void testValidateCodeDuplicate_codeDuplicateForCreate() {
157 // 准备参数 137 // 准备参数
158 Integer code = randomInteger(); 138 Integer code = randomInteger();