Commit 0c68962a97c9910c86de5a66ba4c4e7f688fe78f

Authored by YunaiV
1 parent d14aaae6

review:【INFRA 基础设施】代码生成的 review

yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/Demo01ContactController.java
... ... @@ -60,6 +60,7 @@ public class Demo01ContactController {
60 60 return success(true);
61 61 }
62 62  
  63 + // TODO @puhui999:要不要 deleteDemo01ContactList?url 也叫 delete-list
63 64 @DeleteMapping("/delete-batch")
64 65 @Parameter(name = "ids", description = "编号", required = true)
65 66 @Operation(summary = "批量删除示例联系人")
... ...
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java
... ... @@ -13,6 +13,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_
13 13  
14 14 @Schema(description = "管理后台 - 示例联系人分页 Request VO")
15 15 @Data
  16 +// TODO @puhui999:要不要去掉所有 pojo 里的 @EqualsAndHashCode、@ToString,代码生成里的。因为 lombok.config 已经处理了全局了;
16 17 @EqualsAndHashCode(callSuper = true)
17 18 @ToString(callSuper = true)
18 19 public class Demo01ContactPageReqVO extends PageParam {
... ...
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/framework/codegen/config/CodegenProperties.java
... ... @@ -44,15 +44,15 @@ public class CodegenProperties {
44 44 private Integer voType;
45 45  
46 46 /**
47   - * 是否生成单元测试
48   - */
49   - @NotNull(message = "是否生成单元测试不能为空")
50   - private Boolean unitTestEnable;
51   -
52   - /**
53 47 * 是否生成批量删除接口
54 48 */
55 49 @NotNull(message = "是否生成批量删除接口不能为空")
56 50 private Boolean deleteBatchEnable;
57 51  
  52 + /**
  53 + * 是否生成单元测试
  54 + */
  55 + @NotNull(message = "是否生成单元测试不能为空")
  56 + private Boolean unitTestEnable;
  57 +
58 58 }
... ...
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/normal/Demo03StudentNormalServiceImpl.java
... ... @@ -135,6 +135,8 @@ public class Demo03StudentNormalServiceImpl implements Demo03StudentNormalServic
135 135 List<List<Demo03CourseDO>> diffList = diffList(oldList, list, (oldVal, newVal) -> {
136 136 boolean same = ObjectUtil.equal(oldVal.getId(), newVal.getId());
137 137 if (same) {
  138 + // TODO @puhui999:BaseDO 增加一个 clean 方法,里面把 creator、updator、updateTime、updater 都清空?
  139 + // TODO @puhui999:然后 DO 模式新增、更新,以及主子表,都 clean 下。避免前端直接传递 creator 之类的字段,直接就被更新了。
138 140 newVal.setId(oldVal.getId()).setUpdater(null).setUpdateTime(null); // 解决更新情况下:updateTime 不更新
139 141 }
140 142 return same;
... ...
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/demo/demo03/package-info.java deleted
1   -package cn.iocoder.yudao.module.infra.service.demo.demo03;
2 0 \ No newline at end of file
yudao-module-infra/src/main/resources/codegen/java/dal/do.vm
... ... @@ -79,6 +79,7 @@ public class ${table.className}DO extends BaseDO {
79 79 #end
80 80  
81 81 ## 特殊:主子表专属逻辑(非 ERP 模式)
  82 +## TODO @puhui999:这里空行看看,会不会多了一个哈
82 83 #if ( $voType == 20 && $subTables && $subTables.size() > 0 && $table.templateType != 11 )
83 84 #foreach ($subTable in $subTables)
84 85 #set ($index = $foreach.count - 1)
... ...
yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm
... ... @@ -340,6 +340,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service
340 340 ${subClassNameVars.get($index)}Mapper.deleteById(id);
341 341 }
342 342  
  343 +## TODO @puhui999:批量删除的时候,要不直接删除,就不“校验存在”;ps:主子表删除的时候,子表的处理,也要处理下哈;
343 344 #if ($deleteBatchEnable)
344 345 @Override
345 346 public void delete${subSimpleClassName}ByIds(List<${subPrimaryColumn.javaType}> ids) {
... ...
yudao-server/src/main/resources/application.yaml
... ... @@ -270,8 +270,8 @@ yudao:
270 270 db-schemas: ${spring.datasource.dynamic.datasource.master.name}
271 271 front-type: 20 # 前端模版的类型,参见 CodegenFrontTypeEnum 枚举类
272 272 vo-type: 10 # VO 的类型,参见 CodegenVOTypeEnum 枚举类
  273 + delete-batch-enable: true # 是否生成批量删除接口
273 274 unit-test-enable: false # 是否生成单元测试
274   - delete-batch-enable: false # 是否生成批量删除接口
275 275 tenant: # 多租户相关配置项
276 276 enable: true
277 277 ignore-urls:
... ...