Commit a65b8f63b7515553c03f32cb9072375397f6f037

Authored by YunaiV
1 parent 9a5d7c86

Vue3 CRUD Schema 模版,data 部分提交

yudao-module-infra/yudao-module-infra-biz/src/main/resources/codegen/vue3_schema/views/data.ts.vm
1 1 import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
  2 +import { dateFormatter } from '@/utils/formatTime'
2 3 const { t } = useI18n() // 国际化
3 4  
4 5 // 表单校验
... ... @@ -21,9 +22,7 @@ const crudSchemas = reactive<CrudSchema[]>([
21 22 {
22 23 title: '${column.columnComment}',
23 24 field: '${column.javaField}',
24   - #if (!$column.listOperationResult)
25   - isTable: false,
26   - #end
  25 +## ========= 字典部分 =========
27 26 #if ("" != $dictType)## 有数据字典
28 27 dictType: DICT_TYPE.$dictType.toUpperCase(),
29 28 #if ($javaType == "Integer" || $javaType == "Long" || $javaType == "Byte" || $javaType == "Short")
... ... @@ -34,6 +33,28 @@ const crudSchemas = reactive<CrudSchema[]>([
34 33 dictClass: 'boolean',
35 34 #end
36 35 #end
  36 +## ========= Table 表格部分 =========
  37 + #if (!$column.listOperationResult)
  38 + isTable: false,
  39 + #if ($column.htmlType == "datetime")
  40 + formatter: dateFormatter,
  41 + #end
  42 + #end
  43 +## ========= Search 表格部分 =========
  44 + #if ($column.listOperation)
  45 + isSearch: true,
  46 + #if ($column.htmlType == "datetime")
  47 + search: {
  48 + component: 'DatePicker',
  49 + componentProps: {
  50 + valueFormat: 'YYYY-MM-DD HH:mm:ss',
  51 + type: 'daterange',
  52 + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
  53 + }
  54 + }
  55 + #end
  56 + #end
  57 +## ========= Form 表单部分 =========
37 58 #if ((!$column.createOperation && !$column.updateOperation) || $column.primaryKey)
38 59 isForm: false,
39 60 #else
... ... @@ -65,51 +86,39 @@ const crudSchemas = reactive<CrudSchema[]>([
65 86 form: {
66 87 component: 'Radio'
67 88 },
  89 + #elseif($column.htmlType == "datetime")## 时间框
  90 + form: {
  91 + component: 'DatePicker',
  92 + componentProps: {
  93 + type: 'datetime',
  94 + valueFormat: 'x'
  95 + }
  96 + },
  97 + #elseif($column.htmlType == "textarea")## 文本框
  98 + form: {
  99 + component: 'Input',
  100 + componentProps: {
  101 + type: 'textarea',
  102 + rows: 4
  103 + },
  104 + colProps: {
  105 + span: 24
  106 + }
  107 + },
  108 + #elseif(${javaType.toLowerCase()} == "long" || ${javaType.toLowerCase()} == "integer")## 文本框
  109 + form: {
  110 + component: 'InputNumber',
  111 + value: 0
  112 + },
68 113 #end
69 114 #end
70   - #elseif(!("" != $column.dictType))
71   - #if (${column.javaType.toLowerCase()} == "date" || ${column.javaType.toLowerCase()} == "localdatetime")
72   - form: {
73   - component: 'DatePicker',
74   - componentProps: {
75   - type: 'datetime',
76   - valueFormat: 'x'
77   - }
78   - },
79   - #elseif($column.htmlType == "textarea")## 文本框
80   - form: {
81   - component: 'Input',
82   - componentProps: {
83   - type: 'textarea',
84   - rows: 4
85   - },
86   - colProps: {
87   - span: 24
88   - }
89   - },
90   - #elseif(${column.javaType.toLowerCase()} == "long" || ${column.javaType.toLowerCase()} == "integer")## 数字类型
91   - form: {
92   - component: 'InputNumber',
93   - value: 0
94   - },
95   - #end
96   - #end
97   - #if ($column.listOperation)
98   - #if($column.htmlType == "input")
99   - isSearch: true,
100   - #elseif("" != $dictType)
101   - isSearch: true,
102   - #elseif($column.htmlType == "datetime")
103   - formatter: 'formatDate',
104   - search: {
105   - show: true,
106   - itemRender: {
107   - name: 'XDataTimePicker'
108   - }
109   - },
110   - #end
111   - #end
112 115 },
113 116 #end
  117 +#end
  118 + {
  119 + label: '操作',
  120 + field: 'action',
  121 + isForm: false
  122 + }
114 123 ])
115 124 export const { allSchemas } = useCrudSchemas(crudSchemas)
... ...