Commit 111488e5d6e215d0239b59783639fbcd3e0be20e

Authored by xingyu4j
1 parent 4b7e7d61

refactor: codegen

yudao-ui-admin-vue3/src/components/Form/src/componentMap.ts
@@ -10,6 +10,7 @@ import { @@ -10,6 +10,7 @@ import {
10 ElRate, 10 ElRate,
11 ElSelect, 11 ElSelect,
12 ElSelectV2, 12 ElSelectV2,
  13 + ElTreeSelect,
13 ElSlider, 14 ElSlider,
14 ElSwitch, 15 ElSwitch,
15 ElTimePicker, 16 ElTimePicker,
@@ -41,6 +42,7 @@ const componentMap: Recordable<Component, ComponentName> = { @@ -41,6 +42,7 @@ const componentMap: Recordable<Component, ComponentName> = {
41 Divider: ElDivider, 42 Divider: ElDivider,
42 TimeSelect: ElTimeSelect, 43 TimeSelect: ElTimeSelect,
43 SelectV2: ElSelectV2, 44 SelectV2: ElSelectV2,
  45 + TreeSelect: ElTreeSelect,
44 RadioButton: ElRadioGroup, 46 RadioButton: ElRadioGroup,
45 InputPassword: InputPassword, 47 InputPassword: InputPassword,
46 Editor: Editor 48 Editor: Editor
yudao-ui-admin-vue3/src/types/components.d.ts
@@ -18,6 +18,7 @@ export type ComponentName = @@ -18,6 +18,7 @@ export type ComponentName =
18 | 'Divider' 18 | 'Divider'
19 | 'TimeSelect' 19 | 'TimeSelect'
20 | 'SelectV2' 20 | 'SelectV2'
  21 + | 'TreeSelect'
21 | 'InputPassword' 22 | 'InputPassword'
22 | 'Editor' 23 | 'Editor'
23 24
yudao-ui-admin-vue3/src/views/infra/codegen/components/CloumInfoForm.vue
1 <script setup lang="ts"> 1 <script setup lang="ts">
2 -import { ElTable, ElTableColumn, ElInput, ElSelect, ElOption, ElCheckbox } from 'element-plus'  
3 import { onMounted, PropType, ref } from 'vue' 2 import { onMounted, PropType, ref } from 'vue'
  3 +import { ElInput, ElSelect, ElOption } from 'element-plus'
4 import { CodegenColumnVO } from '@/api/infra/codegen/types' 4 import { CodegenColumnVO } from '@/api/infra/codegen/types'
5 import { listSimpleDictTypeApi } from '@/api/system/dict/dict.type' 5 import { listSimpleDictTypeApi } from '@/api/system/dict/dict.type'
6 import { DictTypeVO } from '@/api/system/dict/types' 6 import { DictTypeVO } from '@/api/system/dict/types'
@@ -16,7 +16,6 @@ const getDictOptions = async () =&gt; { @@ -16,7 +16,6 @@ const getDictOptions = async () =&gt; {
16 const res = await listSimpleDictTypeApi() 16 const res = await listSimpleDictTypeApi()
17 dictOptions.value = res 17 dictOptions.value = res
18 } 18 }
19 -const tableHeight = document.documentElement.scrollHeight - 245 + 'px'  
20 onMounted(async () => { 19 onMounted(async () => {
21 await getDictOptions() 20 await getDictOptions()
22 }) 21 })
@@ -25,25 +24,15 @@ defineExpose({ @@ -25,25 +24,15 @@ defineExpose({
25 }) 24 })
26 </script> 25 </script>
27 <template> 26 <template>
28 - <el-table ref="dragTable" :data="info" row-key="columnId" :max-height="tableHeight">  
29 - <el-table-column  
30 - label="字段列名"  
31 - prop="columnName"  
32 - min-width="10%"  
33 - :show-overflow-tooltip="true"  
34 - />  
35 - <el-table-column label="字段描述" min-width="10%" prop="columnComment"> 27 + <vxe-table ref="dragTable" :data="info" stripe :column-config="{ resizable: true }">
  28 + <vxe-column title="字段列名" field="columnName" width="10%" />
  29 + <vxe-column title="字段描述" field="columnComment">
36 <template #default="{ row }"> 30 <template #default="{ row }">
37 <el-input v-model="row.columnComment" /> 31 <el-input v-model="row.columnComment" />
38 </template> 32 </template>
39 - </el-table-column>  
40 - <el-table-column  
41 - label="物理类型"  
42 - prop="dataType"  
43 - min-width="10%"  
44 - :show-overflow-tooltip="true"  
45 - />  
46 - <el-table-column label="Java类型" min-width="11%" prop="javaType"> 33 + </vxe-column>
  34 + <vxe-column title="物理类型" field="dataType" width="10%" />
  35 + <vxe-column title="Java类型" width="10%" field="javaType">
47 <template #default="{ row }"> 36 <template #default="{ row }">
48 <el-select v-model="row.javaType"> 37 <el-select v-model="row.javaType">
49 <el-option label="Long" value="Long" /> 38 <el-option label="Long" value="Long" />
@@ -55,33 +44,33 @@ defineExpose({ @@ -55,33 +44,33 @@ defineExpose({
55 <el-option label="Boolean" value="Boolean" /> 44 <el-option label="Boolean" value="Boolean" />
56 </el-select> 45 </el-select>
57 </template> 46 </template>
58 - </el-table-column>  
59 - <el-table-column label="java属性" min-width="10%" prop="javaField"> 47 + </vxe-column>
  48 + <vxe-column title="java属性" width="10%" field="javaField">
60 <template #default="{ row }"> 49 <template #default="{ row }">
61 <el-input v-model="row.javaField" /> 50 <el-input v-model="row.javaField" />
62 </template> 51 </template>
63 - </el-table-column>  
64 - <el-table-column label="插入" min-width="4%" prop="createOperation"> 52 + </vxe-column>
  53 + <vxe-column title="插入" width="4%" field="createOperation">
65 <template #default="{ row }"> 54 <template #default="{ row }">
66 - <el-checkbox true-label="true" false-label="false" v-model="row.createOperation" /> 55 + <vxe-checkbox true-label="true" false-label="false" v-model="row.createOperation" />
67 </template> 56 </template>
68 - </el-table-column>  
69 - <el-table-column label="编辑" min-width="4%" prop="updateOperation"> 57 + </vxe-column>
  58 + <vxe-column title="编辑" width="4%" field="updateOperation">
70 <template #default="{ row }"> 59 <template #default="{ row }">
71 - <el-checkbox true-label="true" false-label="false" v-model="row.updateOperation" /> 60 + <vxe-checkbox true-label="true" false-label="false" v-model="row.updateOperation" />
72 </template> 61 </template>
73 - </el-table-column>  
74 - <el-table-column label="列表" min-width="4%" prop="listOperationResult"> 62 + </vxe-column>
  63 + <vxe-column title="列表" width="4%" field="listOperationResult">
75 <template #default="{ row }"> 64 <template #default="{ row }">
76 - <el-checkbox true-label="true" false-label="false" v-model="row.listOperationResult" /> 65 + <vxe-checkbox true-label="true" false-label="false" v-model="row.listOperationResult" />
77 </template> 66 </template>
78 - </el-table-column>  
79 - <el-table-column label="查询" min-width="4%" prop="listOperation"> 67 + </vxe-column>
  68 + <vxe-column title="查询" width="4%" field="listOperation">
80 <template #default="{ row }"> 69 <template #default="{ row }">
81 - <el-checkbox true-label="true" false-label="false" v-model="row.listOperation" /> 70 + <vxe-checkbox true-label="true" false-label="false" v-model="row.listOperation" />
82 </template> 71 </template>
83 - </el-table-column>  
84 - <el-table-column label="查询方式" min-width="10%" prop="listOperationCondition"> 72 + </vxe-column>
  73 + <vxe-column title="查询方式" width="8%" field="listOperationCondition">
85 <template #default="{ row }"> 74 <template #default="{ row }">
86 <el-select v-model="row.listOperationCondition"> 75 <el-select v-model="row.listOperationCondition">
87 <el-option label="=" value="=" /> 76 <el-option label="=" value="=" />
@@ -94,13 +83,13 @@ defineExpose({ @@ -94,13 +83,13 @@ defineExpose({
94 <el-option label="BETWEEN" value="BETWEEN" /> 83 <el-option label="BETWEEN" value="BETWEEN" />
95 </el-select> 84 </el-select>
96 </template> 85 </template>
97 - </el-table-column>  
98 - <el-table-column label="允许空" min-width="5%" prop="nullable"> 86 + </vxe-column>
  87 + <vxe-column title="允许空" width="4%" field="nullable">
99 <template #default="{ row }"> 88 <template #default="{ row }">
100 - <el-checkbox true-label="true" false-label="false" v-model="row.nullable" /> 89 + <vxe-checkbox true-label="true" false-label="false" v-model="row.nullable" />
101 </template> 90 </template>
102 - </el-table-column>  
103 - <el-table-column label="显示类型" min-width="12%" prop="htmlType"> 91 + </vxe-column>
  92 + <vxe-column title="显示类型" width="10%" field="htmlType">
104 <template #default="{ row }"> 93 <template #default="{ row }">
105 <el-select v-model="row.htmlType"> 94 <el-select v-model="row.htmlType">
106 <el-option label="文本框" value="input" /> 95 <el-option label="文本框" value="input" />
@@ -114,8 +103,8 @@ defineExpose({ @@ -114,8 +103,8 @@ defineExpose({
114 <el-option label="富文本控件" value="editor" /> 103 <el-option label="富文本控件" value="editor" />
115 </el-select> 104 </el-select>
116 </template> 105 </template>
117 - </el-table-column>  
118 - <el-table-column label="字典类型" min-width="12%" prop="dictType"> 106 + </vxe-column>
  107 + <vxe-column title="字典类型" width="10%" field="dictType">
119 <template #default="{ row }"> 108 <template #default="{ row }">
120 <el-select v-model="row.dictType" clearable filterable placeholder="请选择"> 109 <el-select v-model="row.dictType" clearable filterable placeholder="请选择">
121 <el-option 110 <el-option
@@ -126,11 +115,11 @@ defineExpose({ @@ -126,11 +115,11 @@ defineExpose({
126 /> 115 />
127 </el-select> 116 </el-select>
128 </template> 117 </template>
129 - </el-table-column>  
130 - <el-table-column label="示例" min-width="10%" prop="example"> 118 + </vxe-column>
  119 + <vxe-column title="示例" field="example">
131 <template #default="{ row }"> 120 <template #default="{ row }">
132 <el-input v-model="row.example" /> 121 <el-input v-model="row.example" />
133 </template> 122 </template>
134 - </el-table-column>  
135 - </el-table> 123 + </vxe-column>
  124 + </vxe-table>
136 </template> 125 </template>