Commit 15e2121078a4f47560bab4bd39c6292f0a4f96f4
Merge remote-tracking branch 'origin/vben5-antd-schema' into vben5-antd-schema
Showing
14 changed files
with
30 additions
and
37 deletions
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableRespVO.java
| 1 | package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table; | 1 | package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table; |
| 2 | 2 | ||
| 3 | import io.swagger.v3.oas.annotations.media.Schema; | 3 | import io.swagger.v3.oas.annotations.media.Schema; |
| 4 | -import jakarta.validation.constraints.NotNull; | ||
| 5 | import lombok.Data; | 4 | import lombok.Data; |
| 6 | 5 | ||
| 7 | import java.time.LocalDateTime; | 6 | import java.time.LocalDateTime; |
| @@ -46,9 +45,6 @@ public class CodegenTableRespVO { | @@ -46,9 +45,6 @@ public class CodegenTableRespVO { | ||
| 46 | @Schema(description = "前端类型,参见 CodegenFrontTypeEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "20") | 45 | @Schema(description = "前端类型,参见 CodegenFrontTypeEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "20") |
| 47 | private Integer frontType; | 46 | private Integer frontType; |
| 48 | 47 | ||
| 49 | - @Schema(description = "是否生成批量删除接口", example = "true") | ||
| 50 | - private Boolean deleteBatch; | ||
| 51 | - | ||
| 52 | @Schema(description = "父菜单编号", example = "1024") | 48 | @Schema(description = "父菜单编号", example = "1024") |
| 53 | private Long parentMenuId; | 49 | private Long parentMenuId; |
| 54 | 50 |
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java
| @@ -60,10 +60,6 @@ public class CodegenTableSaveReqVO { | @@ -60,10 +60,6 @@ public class CodegenTableSaveReqVO { | ||
| 60 | @NotNull(message = "前端类型不能为空") | 60 | @NotNull(message = "前端类型不能为空") |
| 61 | private Integer frontType; | 61 | private Integer frontType; |
| 62 | 62 | ||
| 63 | - @Schema(description = "是否生成批量删除接口", example = "true") | ||
| 64 | - @NotNull(message = "是否生成批量删除接口不能为空") | ||
| 65 | - private Boolean deleteBatch; | ||
| 66 | - | ||
| 67 | @Schema(description = "父菜单编号", example = "1024") | 63 | @Schema(description = "父菜单编号", example = "1024") |
| 68 | private Long parentMenuId; | 64 | private Long parentMenuId; |
| 69 | 65 |
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/dal/dataobject/codegen/CodegenTableDO.java
| @@ -108,12 +108,6 @@ public class CodegenTableDO extends BaseDO { | @@ -108,12 +108,6 @@ public class CodegenTableDO extends BaseDO { | ||
| 108 | * 枚举 {@link CodegenFrontTypeEnum} | 108 | * 枚举 {@link CodegenFrontTypeEnum} |
| 109 | */ | 109 | */ |
| 110 | private Integer frontType; | 110 | private Integer frontType; |
| 111 | - /** | ||
| 112 | - * 是否生成批量删除接口 | ||
| 113 | - * -true 是 | ||
| 114 | - * -false 否 | ||
| 115 | - */ | ||
| 116 | - private Boolean deleteBatch; | ||
| 117 | 111 | ||
| 118 | // ========== 菜单相关字段 ========== | 112 | // ========== 菜单相关字段 ========== |
| 119 | 113 |
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/framework/codegen/config/CodegenProperties.java
| @@ -49,4 +49,10 @@ public class CodegenProperties { | @@ -49,4 +49,10 @@ public class CodegenProperties { | ||
| 49 | @NotNull(message = "是否生成单元测试不能为空") | 49 | @NotNull(message = "是否生成单元测试不能为空") |
| 50 | private Boolean unitTestEnable; | 50 | private Boolean unitTestEnable; |
| 51 | 51 | ||
| 52 | + /** | ||
| 53 | + * 是否生成批量删除接口 | ||
| 54 | + */ | ||
| 55 | + @NotNull(message = "是否生成批量删除接口不能为空") | ||
| 56 | + private Boolean deleteBatchEnable; | ||
| 57 | + | ||
| 52 | } | 58 | } |
yudao-module-infra/src/main/java/cn/iocoder/yudao/module/infra/service/codegen/inner/CodegenEngine.java
| @@ -382,7 +382,7 @@ public class CodegenEngine { | @@ -382,7 +382,7 @@ public class CodegenEngine { | ||
| 382 | bindingMap.put("columns", columns); | 382 | bindingMap.put("columns", columns); |
| 383 | bindingMap.put("primaryColumn", CollectionUtils.findFirst(columns, CodegenColumnDO::getPrimaryKey)); // 主键字段 | 383 | bindingMap.put("primaryColumn", CollectionUtils.findFirst(columns, CodegenColumnDO::getPrimaryKey)); // 主键字段 |
| 384 | bindingMap.put("sceneEnum", CodegenSceneEnum.valueOf(table.getScene())); | 384 | bindingMap.put("sceneEnum", CodegenSceneEnum.valueOf(table.getScene())); |
| 385 | - | 385 | + bindingMap.put("deleteBatchEnable", codegenProperties.getDeleteBatchEnable()); |
| 386 | // className 相关 | 386 | // className 相关 |
| 387 | // 去掉指定前缀,将 TestDictType 转换成 DictType. 因为在 create 等方法后,不需要带上 Test 前缀 | 387 | // 去掉指定前缀,将 TestDictType 转换成 DictType. 因为在 create 等方法后,不需要带上 Test 前缀 |
| 388 | String className = table.getClassName(); | 388 | String className = table.getClassName(); |
yudao-module-infra/src/main/resources/codegen/java/controller/controller.vm
| @@ -74,7 +74,7 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { | @@ -74,7 +74,7 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { | ||
| 74 | return success(true); | 74 | return success(true); |
| 75 | } | 75 | } |
| 76 | 76 | ||
| 77 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 77 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 78 | @DeleteMapping("/delete-batch") | 78 | @DeleteMapping("/delete-batch") |
| 79 | @Parameter(name = "ids", description = "编号", required = true) | 79 | @Parameter(name = "ids", description = "编号", required = true) |
| 80 | @Operation(summary = "批量删除${table.classComment}") | 80 | @Operation(summary = "批量删除${table.classComment}") |
| @@ -243,7 +243,7 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { | @@ -243,7 +243,7 @@ public class ${sceneEnum.prefixClass}${table.className}Controller { | ||
| 243 | return success(true); | 243 | return success(true); |
| 244 | } | 244 | } |
| 245 | 245 | ||
| 246 | -#if ($table.deleteBatch) | 246 | +#if ($deleteBatchEnable) |
| 247 | @DeleteMapping("/${subSimpleClassName_strikeCase}/delete-batch") | 247 | @DeleteMapping("/${subSimpleClassName_strikeCase}/delete-batch") |
| 248 | @Parameter(name = "ids", description = "编号", required = true) | 248 | @Parameter(name = "ids", description = "编号", required = true) |
| 249 | @Operation(summary = "批量删除${subTable.classComment}") | 249 | @Operation(summary = "批量删除${subTable.classComment}") |
yudao-module-infra/src/main/resources/codegen/java/dal/mapper_sub.vm
| @@ -54,7 +54,7 @@ public interface ${subTable.className}Mapper extends BaseMapperX<${subTable.clas | @@ -54,7 +54,7 @@ public interface ${subTable.className}Mapper extends BaseMapperX<${subTable.clas | ||
| 54 | return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}); | 54 | return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}); |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 57 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 58 | default int deleteBy${SubJoinColumnName}s(List<${subJoinColumn.javaType}> ${subJoinColumn.javaField}s) { | 58 | default int deleteBy${SubJoinColumnName}s(List<${subJoinColumn.javaType}> ${subJoinColumn.javaField}s) { |
| 59 | return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}s); | 59 | return delete(${subTable.className}DO::get${SubJoinColumnName}, ${subJoinColumn.javaField}s); |
| 60 | } | 60 | } |
yudao-module-infra/src/main/resources/codegen/java/service/service.vm
| @@ -40,7 +40,7 @@ public interface ${table.className}Service { | @@ -40,7 +40,7 @@ public interface ${table.className}Service { | ||
| 40 | */ | 40 | */ |
| 41 | void delete${simpleClassName}(${primaryColumn.javaType} id); | 41 | void delete${simpleClassName}(${primaryColumn.javaType} id); |
| 42 | 42 | ||
| 43 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 43 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 44 | /** | 44 | /** |
| 45 | * 批量删除${table.classComment} | 45 | * 批量删除${table.classComment} |
| 46 | * | 46 | * |
| @@ -143,7 +143,7 @@ public interface ${table.className}Service { | @@ -143,7 +143,7 @@ public interface ${table.className}Service { | ||
| 143 | */ | 143 | */ |
| 144 | void delete${subSimpleClassName}(${subPrimaryColumn.javaType} id); | 144 | void delete${subSimpleClassName}(${subPrimaryColumn.javaType} id); |
| 145 | 145 | ||
| 146 | -#if ($table.deleteBatch) | 146 | +#if ($deleteBatchEnable) |
| 147 | /** | 147 | /** |
| 148 | * 批量删除${subTable.classComment} | 148 | * 批量删除${subTable.classComment} |
| 149 | * | 149 | * |
yudao-module-infra/src/main/resources/codegen/java/service/serviceImpl.vm
| @@ -161,7 +161,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | @@ -161,7 +161,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | ||
| 161 | #end | 161 | #end |
| 162 | } | 162 | } |
| 163 | 163 | ||
| 164 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 164 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 165 | @Override | 165 | @Override |
| 166 | ## 特殊:主子表专属逻辑 | 166 | ## 特殊:主子表专属逻辑 |
| 167 | #if ( $subTables && $subTables.size() > 0) | 167 | #if ( $subTables && $subTables.size() > 0) |
| @@ -338,7 +338,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | @@ -338,7 +338,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | ||
| 338 | ${subClassNameVars.get($index)}Mapper.deleteById(id); | 338 | ${subClassNameVars.get($index)}Mapper.deleteById(id); |
| 339 | } | 339 | } |
| 340 | 340 | ||
| 341 | -#if ($table.deleteBatch) | 341 | +#if ($deleteBatchEnable) |
| 342 | @Override | 342 | @Override |
| 343 | public void delete${subSimpleClassName}ByIds(List<${subPrimaryColumn.javaType}> ids) { | 343 | public void delete${subSimpleClassName}ByIds(List<${subPrimaryColumn.javaType}> ids) { |
| 344 | // 校验存在 | 344 | // 校验存在 |
| @@ -359,7 +359,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | @@ -359,7 +359,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | ||
| 359 | } | 359 | } |
| 360 | } | 360 | } |
| 361 | 361 | ||
| 362 | -#if ($table.deleteBatch) | 362 | +#if ($deleteBatchEnable) |
| 363 | private void validate${subSimpleClassName}Exists(List<${subPrimaryColumn.javaType}> ids) { | 363 | private void validate${subSimpleClassName}Exists(List<${subPrimaryColumn.javaType}> ids) { |
| 364 | List<${subTable.className}DO> list = ${subClassNameVar}Mapper.selectByIds(ids); | 364 | List<${subTable.className}DO> list = ${subClassNameVar}Mapper.selectByIds(ids); |
| 365 | if (CollUtil.isEmpty(list) || list.size() != ids.size()) { | 365 | if (CollUtil.isEmpty(list) || list.size() != ids.size()) { |
| @@ -406,7 +406,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | @@ -406,7 +406,7 @@ public class ${table.className}ServiceImpl implements ${table.className}Service | ||
| 406 | ${subClassNameVars.get($index)}Mapper.deleteBy${SubJoinColumnName}(${subJoinColumn.javaField}); | 406 | ${subClassNameVars.get($index)}Mapper.deleteBy${SubJoinColumnName}(${subJoinColumn.javaField}); |
| 407 | } | 407 | } |
| 408 | 408 | ||
| 409 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 409 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 410 | private void delete${subSimpleClassName}By${SubJoinColumnName}s(List<${primaryColumn.javaType}> ${subJoinColumn.javaField}s) { | 410 | private void delete${subSimpleClassName}By${SubJoinColumnName}s(List<${primaryColumn.javaType}> ${subJoinColumn.javaField}s) { |
| 411 | ${subClassNameVars.get($index)}Mapper.deleteBy${SubJoinColumnName}s(${subJoinColumn.javaField}s); | 411 | ${subClassNameVars.get($index)}Mapper.deleteBy${SubJoinColumnName}s(${subJoinColumn.javaField}s); |
| 412 | } | 412 | } |
yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm
| @@ -89,7 +89,7 @@ export function delete${simpleClassName}(id: number) { | @@ -89,7 +89,7 @@ export function delete${simpleClassName}(id: number) { | ||
| 89 | return requestClient.delete(`${baseURL}/delete?id=${id}`); | 89 | return requestClient.delete(`${baseURL}/delete?id=${id}`); |
| 90 | } | 90 | } |
| 91 | 91 | ||
| 92 | -#if ( $table.templateType != 2 && $table.deleteBatch) | 92 | +#if ( $table.templateType != 2 && $deleteBatchEnable) |
| 93 | // 批量删除${table.classComment} | 93 | // 批量删除${table.classComment} |
| 94 | export function delete${simpleClassName}ByIds(ids: number[]) { | 94 | export function delete${simpleClassName}ByIds(ids: number[]) { |
| 95 | return requestClient.delete(`${baseURL}/delete-batch?ids=${ids.join(',')}`) | 95 | return requestClient.delete(`${baseURL}/delete-batch?ids=${ids.join(',')}`) |
| @@ -151,7 +151,7 @@ export function delete${subSimpleClassName}(id: number) { | @@ -151,7 +151,7 @@ export function delete${subSimpleClassName}(id: number) { | ||
| 151 | return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete?id=${id}`); | 151 | return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete?id=${id}`); |
| 152 | } | 152 | } |
| 153 | 153 | ||
| 154 | -#if ($table.deleteBatch) | 154 | +#if ($deleteBatchEnable) |
| 155 | // 批量删除${subTable.classComment} | 155 | // 批量删除${subTable.classComment} |
| 156 | export function delete${subSimpleClassName}ByIds(ids: number[]) { | 156 | export function delete${subSimpleClassName}ByIds(ids: number[]) { |
| 157 | return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete-batch?ids=${ids.join(',')}`) | 157 | return requestClient.delete(`${baseURL}/${subSimpleClassName_strikeCase}/delete-batch?ids=${ids.join(',')}`) |
yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/data.ts.vm
| @@ -193,7 +193,7 @@ export function useGridColumns( | @@ -193,7 +193,7 @@ export function useGridColumns( | ||
| 193 | onActionClick?: OnActionClickFn<${simpleClassName}Api.${simpleClassName}>, | 193 | onActionClick?: OnActionClickFn<${simpleClassName}Api.${simpleClassName}>, |
| 194 | ): VxeTableGridOptions<${simpleClassName}Api.${simpleClassName}>['columns'] { | 194 | ): VxeTableGridOptions<${simpleClassName}Api.${simpleClassName}>['columns'] { |
| 195 | return [ | 195 | return [ |
| 196 | -#if ($table.templateType != 2 && $table.deleteBatch) | 196 | +#if ($table.templateType != 2 && $deleteBatchEnable) |
| 197 | { type: 'checkbox', width: 40 }, | 197 | { type: 'checkbox', width: 40 }, |
| 198 | #end | 198 | #end |
| 199 | #if ($table.templateType == 12) ## 内嵌情况 | 199 | #if ($table.templateType == 12) ## 内嵌情况 |
| @@ -431,7 +431,7 @@ export function use${subSimpleClassName}GridColumns( | @@ -431,7 +431,7 @@ export function use${subSimpleClassName}GridColumns( | ||
| 431 | onActionClick?: OnActionClickFn<${simpleClassName}Api.${subSimpleClassName}>, | 431 | onActionClick?: OnActionClickFn<${simpleClassName}Api.${subSimpleClassName}>, |
| 432 | ): VxeTableGridOptions<${simpleClassName}Api.${subSimpleClassName}>['columns'] { | 432 | ): VxeTableGridOptions<${simpleClassName}Api.${subSimpleClassName}>['columns'] { |
| 433 | return [ | 433 | return [ |
| 434 | - #if ($table.templateType != 2 && $table.deleteBatch) | 434 | + #if ($table.templateType != 2 && $deleteBatchEnable) |
| 435 | { type: 'checkbox', width: 40 }, | 435 | { type: 'checkbox', width: 40 }, |
| 436 | #end | 436 | #end |
| 437 | #foreach($column in $subColumns) | 437 | #foreach($column in $subColumns) |
yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm
| @@ -22,7 +22,7 @@ import { useVbenVxeGrid } from '#/adapter/vxe-table'; | @@ -22,7 +22,7 @@ import { useVbenVxeGrid } from '#/adapter/vxe-table'; | ||
| 22 | #if (${table.templateType} == 2)## 树表接口 | 22 | #if (${table.templateType} == 2)## 树表接口 |
| 23 | import { get${simpleClassName}List, delete${simpleClassName}, export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; | 23 | import { get${simpleClassName}List, delete${simpleClassName}, export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; |
| 24 | #else## 标准表接口 | 24 | #else## 标准表接口 |
| 25 | -import { get${simpleClassName}Page, delete${simpleClassName},#if ($table.deleteBatch) delete${simpleClassName}ByIds,#end export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; | 25 | +import { get${simpleClassName}Page, delete${simpleClassName},#if ($deleteBatchEnable) delete${simpleClassName}ByIds,#end export${simpleClassName} } from '#/api/${table.moduleName}/${table.businessName}'; |
| 26 | #end | 26 | #end |
| 27 | import { downloadFileFromBlobPart, isEmpty } from '@vben/utils'; | 27 | import { downloadFileFromBlobPart, isEmpty } from '@vben/utils'; |
| 28 | 28 | ||
| @@ -92,7 +92,7 @@ async function onDelete(row: ${simpleClassName}Api.${simpleClassName}) { | @@ -92,7 +92,7 @@ async function onDelete(row: ${simpleClassName}Api.${simpleClassName}) { | ||
| 92 | } | 92 | } |
| 93 | } | 93 | } |
| 94 | 94 | ||
| 95 | -#if ($table.templateType != 2 && $table.deleteBatch) | 95 | +#if ($table.templateType != 2 && $deleteBatchEnable) |
| 96 | const deleteIds = ref<number[]>([]) // 待删除${table.classComment} ID | 96 | const deleteIds = ref<number[]>([]) // 待删除${table.classComment} ID |
| 97 | const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); | 97 | const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); |
| 98 | function setDeleteIds({ | 98 | function setDeleteIds({ |
| @@ -204,14 +204,14 @@ const [Grid, gridApi] = useVbenVxeGrid({ | @@ -204,14 +204,14 @@ const [Grid, gridApi] = useVbenVxeGrid({ | ||
| 204 | search: true, | 204 | search: true, |
| 205 | }, | 205 | }, |
| 206 | } as VxeTableGridOptions<${simpleClassName}Api.${simpleClassName}>, | 206 | } as VxeTableGridOptions<${simpleClassName}Api.${simpleClassName}>, |
| 207 | -#if (${table.templateType} == 11 || $table.deleteBatch) | 207 | +#if (${table.templateType} == 11 || $deleteBatchEnable) |
| 208 | gridEvents:{ | 208 | gridEvents:{ |
| 209 | #if(${table.templateType} == 11) | 209 | #if(${table.templateType} == 11) |
| 210 | cellClick: ({ row }: { row: ${simpleClassName}Api.${simpleClassName}}) => { | 210 | cellClick: ({ row }: { row: ${simpleClassName}Api.${simpleClassName}}) => { |
| 211 | select${simpleClassName}.value = row; | 211 | select${simpleClassName}.value = row; |
| 212 | }, | 212 | }, |
| 213 | #end | 213 | #end |
| 214 | - #if($table.deleteBatch) | 214 | + #if($deleteBatchEnable) |
| 215 | checkboxAll: setDeleteIds, | 215 | checkboxAll: setDeleteIds, |
| 216 | checkboxChange: setDeleteIds, | 216 | checkboxChange: setDeleteIds, |
| 217 | #end | 217 | #end |
| @@ -262,7 +262,7 @@ const [Grid, gridApi] = useVbenVxeGrid({ | @@ -262,7 +262,7 @@ const [Grid, gridApi] = useVbenVxeGrid({ | ||
| 262 | > | 262 | > |
| 263 | {{ $t('ui.actionTitle.export') }} | 263 | {{ $t('ui.actionTitle.export') }} |
| 264 | </Button> | 264 | </Button> |
| 265 | -#if ($table.templateType != 2 && $table.deleteBatch) | 265 | +#if ($table.templateType != 2 && $deleteBatchEnable) |
| 266 | <Button | 266 | <Button |
| 267 | :icon="h(Trash2)" | 267 | :icon="h(Trash2)" |
| 268 | type="primary" | 268 | type="primary" |
yudao-module-infra/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm
| @@ -21,7 +21,7 @@ | @@ -21,7 +21,7 @@ | ||
| 21 | 21 | ||
| 22 | 22 | ||
| 23 | #if ($table.templateType == 11) ## erp | 23 | #if ($table.templateType == 11) ## erp |
| 24 | - import { delete${subSimpleClassName},#if ($table.deleteBatch) delete${subSimpleClassName}ByIds,#end get${subSimpleClassName}Page } from '#/api/${table.moduleName}/${table.businessName}'; | 24 | + import { delete${subSimpleClassName},#if ($deleteBatchEnable) delete${subSimpleClassName}ByIds,#end get${subSimpleClassName}Page } from '#/api/${table.moduleName}/${table.businessName}'; |
| 25 | import { use${subSimpleClassName}GridFormSchema, use${subSimpleClassName}GridColumns } from '../data'; | 25 | import { use${subSimpleClassName}GridFormSchema, use${subSimpleClassName}GridColumns } from '../data'; |
| 26 | import { isEmpty } from '@vben/utils'; | 26 | import { isEmpty } from '@vben/utils'; |
| 27 | #else | 27 | #else |
| @@ -73,7 +73,7 @@ async function onDelete(row: ${simpleClassName}Api.${subSimpleClassName}) { | @@ -73,7 +73,7 @@ async function onDelete(row: ${simpleClassName}Api.${subSimpleClassName}) { | ||
| 73 | } | 73 | } |
| 74 | } | 74 | } |
| 75 | 75 | ||
| 76 | -#if ($table.deleteBatch) | 76 | +#if ($deleteBatchEnable) |
| 77 | const deleteIds = ref<number[]>([]) // 待删除${subTable.classComment} ID | 77 | const deleteIds = ref<number[]>([]) // 待删除${subTable.classComment} ID |
| 78 | const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); | 78 | const showDeleteBatchBtn = computed(() => isEmpty(deleteIds.value)); |
| 79 | function setDeleteIds({ | 79 | function setDeleteIds({ |
| @@ -164,7 +164,7 @@ function onActionClick({ | @@ -164,7 +164,7 @@ function onActionClick({ | ||
| 164 | isHover: true, | 164 | isHover: true, |
| 165 | }, | 165 | }, |
| 166 | } as VxeTableGridOptions<${simpleClassName}Api.${subSimpleClassName}>, | 166 | } as VxeTableGridOptions<${simpleClassName}Api.${subSimpleClassName}>, |
| 167 | - #if (${table.templateType} == 11 && $table.deleteBatch) | 167 | + #if (${table.templateType} == 11 && $deleteBatchEnable) |
| 168 | gridEvents:{ | 168 | gridEvents:{ |
| 169 | checkboxAll: setDeleteIds, | 169 | checkboxAll: setDeleteIds, |
| 170 | checkboxChange: setDeleteIds, | 170 | checkboxChange: setDeleteIds, |
| @@ -207,7 +207,7 @@ const onRefresh = async ()=> { | @@ -207,7 +207,7 @@ const onRefresh = async ()=> { | ||
| 207 | <Button :icon="h(Plus)" type="primary" @click="onCreate" v-access:code="['${table.moduleName}:${simpleClassName_strikeCase}:create']"> | 207 | <Button :icon="h(Plus)" type="primary" @click="onCreate" v-access:code="['${table.moduleName}:${simpleClassName_strikeCase}:create']"> |
| 208 | {{ $t('ui.actionTitle.create', ['${subTable.classComment}']) }} | 208 | {{ $t('ui.actionTitle.create', ['${subTable.classComment}']) }} |
| 209 | </Button> | 209 | </Button> |
| 210 | - #if ($table.templateType == 11 && $table.deleteBatch) | 210 | + #if ($table.templateType == 11 && $deleteBatchEnable) |
| 211 | <Button | 211 | <Button |
| 212 | :icon="h(Trash2)" | 212 | :icon="h(Trash2)" |
| 213 | type="primary" | 213 | type="primary" |
yudao-server/src/main/resources/application.yaml
| @@ -271,6 +271,7 @@ yudao: | @@ -271,6 +271,7 @@ yudao: | ||
| 271 | front-type: 20 # 前端模版的类型,参见 CodegenFrontTypeEnum 枚举类 | 271 | front-type: 20 # 前端模版的类型,参见 CodegenFrontTypeEnum 枚举类 |
| 272 | vo-type: 10 # VO 的类型,参见 CodegenVOTypeEnum 枚举类 | 272 | vo-type: 10 # VO 的类型,参见 CodegenVOTypeEnum 枚举类 |
| 273 | unit-test-enable: false # 是否生成单元测试 | 273 | unit-test-enable: false # 是否生成单元测试 |
| 274 | + delete-batch-enable: false # 是否生成批量删除接口 | ||
| 274 | tenant: # 多租户相关配置项 | 275 | tenant: # 多租户相关配置项 |
| 275 | enable: true | 276 | enable: true |
| 276 | ignore-urls: | 277 | ignore-urls: |