diff --git a/src/api/tool/gen/types.ts b/src/api/tool/gen/types.ts index 234dbdd..fcfb224 100644 --- a/src/api/tool/gen/types.ts +++ b/src/api/tool/gen/types.ts @@ -6,6 +6,7 @@ export interface TableVO extends BaseEntity { tableComment: string; className: string; tplCategory: string; + frontendType: string; packageName: string; moduleName: string; businessName: string; @@ -80,6 +81,7 @@ export interface DbTableVO { tableComment: string; className?: any; tplCategory?: any; + frontendType?: string; packageName?: any; moduleName?: any; businessName?: any; @@ -181,6 +183,7 @@ export interface DbTableForm extends BaseEntity { tableComment: string; className: string; tplCategory: string; + frontendType: string; packageName: string; moduleName: string; businessName: string; diff --git a/src/views/tool/gen/editTable.vue b/src/views/tool/gen/editTable.vue index 7d645bf..6a17f14 100644 --- a/src/views/tool/gen/editTable.vue +++ b/src/views/tool/gen/editTable.vue @@ -220,11 +220,13 @@ onMounted(async () => { uniqueFields: detail.info.uniqueFields ?? [], enableSort: detail.info.enableSort ?? false, sortField: detail.info.sortField ?? '', + frontendType: detail.info.frontendType ?? 'vue', treeRootValue: detail.info.treeRootValue ?? '0', treeAncestorsField: detail.info.treeAncestorsField ?? '', treeOrderField: detail.info.treeOrderField ?? '', ...detail.info }; + info.value.frontendType ||= 'vue'; const response = await getDictOptionselect(); dictOptions.value = response.data; }); diff --git a/src/views/tool/gen/genInfoForm.vue b/src/views/tool/gen/genInfoForm.vue index db80fd5..cc2f3fb 100644 --- a/src/views/tool/gen/genInfoForm.vue +++ b/src/views/tool/gen/genInfoForm.vue @@ -82,6 +82,22 @@ + + + + + + {{ item.label }} + + + + +

增强选项

@@ -311,6 +327,10 @@ interface MenuOptionsType { const menuOptions = ref>([]); const formRef = ref(); +const frontendTypeOptions = [ + { label: 'Vue', value: 'vue' }, + { label: 'React', value: 'react' } +]; const props = defineProps({ info: propTypes.any.isRequired, @@ -328,6 +348,10 @@ const sortableColumns = computed(() => // 表单校验 const rules = ref({ tplCategory: [{ required: true, message: '请选择生成模板', trigger: 'blur' }], + frontendType: [ + { required: true, message: '请选择前端模板', trigger: 'change' }, + { pattern: /^[A-Za-z0-9_-]+$/, message: '仅支持字母、数字、下划线和中划线', trigger: 'change' } + ], packageName: [{ required: true, message: '请输入生成包路径', trigger: 'blur' }], moduleName: [{ required: true, message: '请输入生成模块名', trigger: 'blur' }], businessName: [{ required: true, message: '请输入生成业务名', trigger: 'blur' }],