@@ -8,12 +8,11 @@ ExecutionPlan 是用于自动化模块创建的执行计划结构体,包含了
8
8
``` go
9
9
type ExecutionPlan struct {
10
10
PackageName string ` json:"packageName"` // 包名,如:"user", "order", "product"
11
- ModuleName string ` json:"moduleName"` // 模块名,通常与结构体名相同
12
11
PackageType string ` json:"packageType"` // "plugin" 或 "package"
13
12
NeedCreatedPackage bool ` json:"needCreatedPackage"` // 是否需要创建包
14
13
NeedCreatedModules bool ` json:"needCreatedModules"` // 是否需要创建模块
15
14
PackageInfo *request.SysAutoCodePackageCreate ` json:"packageInfo,omitempty"` // 包信息(当NeedCreatedPackage=true时必需)
16
- ModulesInfo *request.AutoCode ` json:"modulesInfo,omitempty"` // 模块信息 (当NeedCreatedModules=true时必需)
15
+ ModulesInfo [] *request.AutoCode ` json:"modulesInfo,omitempty"` // 模块信息数组 (当NeedCreatedModules=true时必需,支持批量创建 )
17
16
Paths map [string ]string ` json:"paths,omitempty"` // 路径信息
18
17
}
19
18
```
@@ -94,12 +93,11 @@ type AutoCodeField struct {
94
93
95
94
## 使用示例
96
95
97
- ### 示例1:创建新包和模块
96
+ ### 示例1:创建新包和批量创建多个模块
98
97
99
98
``` json
100
99
{
101
100
"packageName" : " user" ,
102
- "moduleName" : " User" ,
103
101
"packageType" : " package" ,
104
102
"needCreatedPackage" : true ,
105
103
"needCreatedModules" : true ,
@@ -109,129 +107,256 @@ type AutoCodeField struct {
109
107
"template" : " package" ,
110
108
"packageName" : " user"
111
109
},
112
- "modulesInfo" : {
113
- "package" : " user" ,
114
- "tableName" : " sys_users" ,
115
- "businessDB" : " " ,
116
- "structName" : " User" ,
117
- "packageName" : " user" ,
118
- "description" : " 用户" ,
119
- "abbreviation" : " user" ,
120
- "humpPackageName" : " user" ,
121
- "gvaModel" : true ,
122
- "autoMigrate" : true ,
123
- "autoCreateResource" : true ,
124
- "autoCreateApiToSql" : true ,
125
- "autoCreateMenuToSql" : true ,
126
- "autoCreateBtnAuth" : true ,
127
- "onlyTemplate" : false ,
128
- "isTree" : false ,
129
- "treeJson" : " " ,
130
- "isAdd" : true ,
131
- "generateWeb" : true ,
132
- "generateServer" : true ,
133
- "fields" : [
134
- {
135
- "fieldName" : " Username" ,
136
- "fieldDesc" : " 用户名" ,
137
- "fieldType" : " string" ,
138
- "fieldJson" : " username" ,
139
- "dataTypeLong" : " 50" ,
140
- "comment" : " 用户名" ,
141
- "columnName" : " username" ,
142
- "fieldSearchType" : " LIKE" ,
143
- "fieldSearchHide" : false ,
144
- "dictType" : " " ,
145
- "form" : true ,
146
- "table" : true ,
147
- "desc" : true ,
148
- "excel" : true ,
149
- "require" : true ,
150
- "defaultValue" : " " ,
151
- "errorText" : " 请输入用户名" ,
152
- "clearable" : true ,
153
- "sort" : false ,
154
- "primaryKey" : false ,
155
- "dataSource" : null ,
156
- "checkDataSource" : false ,
157
- "fieldIndexType" : " "
158
- },
159
- {
160
- "fieldName" : " Email" ,
161
- "fieldDesc" : " 邮箱" ,
162
- "fieldType" : " string" ,
163
- "fieldJson" : " email" ,
164
- "dataTypeLong" : " 100" ,
165
- "comment" : " 邮箱地址" ,
166
- "columnName" : " email" ,
167
- "fieldSearchType" : " EQ" ,
168
- "fieldSearchHide" : false ,
169
- "dictType" : " " ,
170
- "form" : true ,
171
- "table" : true ,
172
- "desc" : true ,
173
- "excel" : true ,
174
- "require" : true ,
175
- "defaultValue" : " " ,
176
- "errorText" : " 请输入邮箱" ,
177
- "clearable" : true ,
178
- "sort" : false ,
179
- "primaryKey" : false ,
180
- "dataSource" : null ,
181
- "checkDataSource" : false ,
182
- "fieldIndexType" : " index"
183
- }
184
- ]
185
- }
110
+ "modulesInfo" : [
111
+ {
112
+ "package" : " user" ,
113
+ "tableName" : " sys_users" ,
114
+ "businessDB" : " " ,
115
+ "structName" : " User" ,
116
+ "packageName" : " user" ,
117
+ "description" : " 用户" ,
118
+ "abbreviation" : " user" ,
119
+ "humpPackageName" : " user" ,
120
+ "gvaModel" : true ,
121
+ "autoMigrate" : true ,
122
+ "autoCreateResource" : true ,
123
+ "autoCreateApiToSql" : true ,
124
+ "autoCreateMenuToSql" : true ,
125
+ "autoCreateBtnAuth" : true ,
126
+ "onlyTemplate" : false ,
127
+ "isTree" : false ,
128
+ "treeJson" : " " ,
129
+ "isAdd" : true ,
130
+ "generateWeb" : true ,
131
+ "generateServer" : true ,
132
+ "fields" : [
133
+ {
134
+ "fieldName" : " Username" ,
135
+ "fieldDesc" : " 用户名" ,
136
+ "fieldType" : " string" ,
137
+ "fieldJson" : " username" ,
138
+ "dataTypeLong" : " 50" ,
139
+ "comment" : " 用户名" ,
140
+ "columnName" : " username" ,
141
+ "fieldSearchType" : " LIKE" ,
142
+ "fieldSearchHide" : false ,
143
+ "dictType" : " " ,
144
+ "form" : true ,
145
+ "table" : true ,
146
+ "desc" : true ,
147
+ "excel" : true ,
148
+ "require" : true ,
149
+ "defaultValue" : " " ,
150
+ "errorText" : " 请输入用户名" ,
151
+ "clearable" : true ,
152
+ "sort" : false ,
153
+ "primaryKey" : false ,
154
+ "dataSource" : null ,
155
+ "checkDataSource" : false ,
156
+ "fieldIndexType" : " "
157
+ },
158
+ {
159
+ "fieldName" : " Email" ,
160
+ "fieldDesc" : " 邮箱" ,
161
+ "fieldType" : " string" ,
162
+ "fieldJson" : " email" ,
163
+ "dataTypeLong" : " 100" ,
164
+ "comment" : " 邮箱地址" ,
165
+ "columnName" : " email" ,
166
+ "fieldSearchType" : " EQ" ,
167
+ "fieldSearchHide" : false ,
168
+ "dictType" : " " ,
169
+ "form" : true ,
170
+ "table" : true ,
171
+ "desc" : true ,
172
+ "excel" : true ,
173
+ "require" : true ,
174
+ "defaultValue" : " " ,
175
+ "errorText" : " 请输入邮箱" ,
176
+ "clearable" : true ,
177
+ "sort" : false ,
178
+ "primaryKey" : false ,
179
+ "dataSource" : null ,
180
+ "checkDataSource" : false ,
181
+ "fieldIndexType" : " index"
182
+ }
183
+ ]
184
+ },
185
+ {
186
+ "package" : " user" ,
187
+ "tableName" : " user_profiles" ,
188
+ "businessDB" : " " ,
189
+ "structName" : " UserProfile" ,
190
+ "packageName" : " user" ,
191
+ "description" : " 用户档案" ,
192
+ "abbreviation" : " userProfile" ,
193
+ "humpPackageName" : " user" ,
194
+ "gvaModel" : true ,
195
+ "autoMigrate" : true ,
196
+ "autoCreateResource" : true ,
197
+ "autoCreateApiToSql" : true ,
198
+ "autoCreateMenuToSql" : true ,
199
+ "autoCreateBtnAuth" : true ,
200
+ "onlyTemplate" : false ,
201
+ "isTree" : false ,
202
+ "treeJson" : " " ,
203
+ "isAdd" : true ,
204
+ "generateWeb" : true ,
205
+ "generateServer" : true ,
206
+ "fields" : [
207
+ {
208
+ "fieldName" : " UserID" ,
209
+ "fieldDesc" : " 用户ID" ,
210
+ "fieldType" : " int" ,
211
+ "fieldJson" : " userId" ,
212
+ "dataTypeLong" : " " ,
213
+ "comment" : " 关联用户ID" ,
214
+ "columnName" : " user_id" ,
215
+ "fieldSearchType" : " EQ" ,
216
+ "fieldSearchHide" : false ,
217
+ "dictType" : " " ,
218
+ "form" : true ,
219
+ "table" : true ,
220
+ "desc" : true ,
221
+ "excel" : true ,
222
+ "require" : true ,
223
+ "defaultValue" : " " ,
224
+ "errorText" : " 请选择用户" ,
225
+ "clearable" : true ,
226
+ "sort" : false ,
227
+ "primaryKey" : false ,
228
+ "dataSource" : null ,
229
+ "checkDataSource" : false ,
230
+ "fieldIndexType" : " index"
231
+ },
232
+ {
233
+ "fieldName" : " Avatar" ,
234
+ "fieldDesc" : " 头像" ,
235
+ "fieldType" : " string" ,
236
+ "fieldJson" : " avatar" ,
237
+ "dataTypeLong" : " 255" ,
238
+ "comment" : " 用户头像URL" ,
239
+ "columnName" : " avatar" ,
240
+ "fieldSearchType" : " " ,
241
+ "fieldSearchHide" : true ,
242
+ "dictType" : " " ,
243
+ "form" : true ,
244
+ "table" : true ,
245
+ "desc" : true ,
246
+ "excel" : false ,
247
+ "require" : false ,
248
+ "defaultValue" : " " ,
249
+ "errorText" : " " ,
250
+ "clearable" : true ,
251
+ "sort" : false ,
252
+ "primaryKey" : false ,
253
+ "dataSource" : null ,
254
+ "checkDataSource" : false ,
255
+ "fieldIndexType" : " "
256
+ }
257
+ ]
258
+ }
259
+ ]
186
260
}
187
261
```
188
262
189
- ### 示例2:仅在现有包中创建模块
263
+ ### 示例2:仅在现有包中批量创建多个模块
190
264
191
265
``` json
192
266
{
193
267
"packageName" : " system" ,
194
- "moduleName" : " Role" ,
195
268
"packageType" : " package" ,
196
269
"needCreatedPackage" : false ,
197
270
"needCreatedModules" : true ,
198
271
"packageInfo" : null ,
199
- "modulesInfo" : {
200
- "package" : " system" ,
201
- "tableName" : " sys_roles" ,
202
- "businessDB" : " " ,
203
- "structName" : " Role" ,
204
- "packageName" : " system" ,
205
- "description" : " 角色" ,
206
- "abbreviation" : " role" ,
207
- "humpPackageName" : " system" ,
208
- "gvaModel" : true ,
209
- "autoMigrate" : true ,
210
- "autoCreateResource" : true ,
211
- "autoCreateApiToSql" : true ,
212
- "autoCreateMenuToSql" : true ,
213
- "autoCreateBtnAuth" : true ,
214
- "onlyTemplate" : false ,
215
- "isTree" : false ,
216
- "generateWeb" : true ,
217
- "generateServer" : true ,
218
- "fields" : [
219
- {
220
- "fieldName" : " RoleName" ,
221
- "fieldDesc" : " 角色名称" ,
222
- "fieldType" : " string" ,
223
- "fieldJson" : " roleName" ,
224
- "dataTypeLong" : " 50" ,
225
- "comment" : " 角色名称" ,
226
- "columnName" : " role_name" ,
227
- "fieldSearchType" : " LIKE" ,
228
- "form" : true ,
229
- "table" : true ,
230
- "desc" : true ,
231
- "require" : true
232
- }
233
- ]
234
- }
272
+ "modulesInfo" : [
273
+ {
274
+ "package" : " system" ,
275
+ "tableName" : " sys_roles" ,
276
+ "businessDB" : " " ,
277
+ "structName" : " Role" ,
278
+ "packageName" : " system" ,
279
+ "description" : " 角色" ,
280
+ "abbreviation" : " role" ,
281
+ "humpPackageName" : " system" ,
282
+ "gvaModel" : true ,
283
+ "autoMigrate" : true ,
284
+ "autoCreateResource" : true ,
285
+ "autoCreateApiToSql" : true ,
286
+ "autoCreateMenuToSql" : true ,
287
+ "autoCreateBtnAuth" : true ,
288
+ "onlyTemplate" : false ,
289
+ "isTree" : false ,
290
+ "generateWeb" : true ,
291
+ "generateServer" : true ,
292
+ "fields" : [
293
+ {
294
+ "fieldName" : " RoleName" ,
295
+ "fieldDesc" : " 角色名称" ,
296
+ "fieldType" : " string" ,
297
+ "fieldJson" : " roleName" ,
298
+ "dataTypeLong" : " 50" ,
299
+ "comment" : " 角色名称" ,
300
+ "columnName" : " role_name" ,
301
+ "fieldSearchType" : " LIKE" ,
302
+ "form" : true ,
303
+ "table" : true ,
304
+ "desc" : true ,
305
+ "require" : true
306
+ }
307
+ ]
308
+ },
309
+ {
310
+ "package" : " system" ,
311
+ "tableName" : " sys_permissions" ,
312
+ "businessDB" : " " ,
313
+ "structName" : " Permission" ,
314
+ "packageName" : " system" ,
315
+ "description" : " 权限" ,
316
+ "abbreviation" : " permission" ,
317
+ "humpPackageName" : " system" ,
318
+ "gvaModel" : true ,
319
+ "autoMigrate" : true ,
320
+ "autoCreateResource" : true ,
321
+ "autoCreateApiToSql" : true ,
322
+ "autoCreateMenuToSql" : true ,
323
+ "autoCreateBtnAuth" : true ,
324
+ "onlyTemplate" : false ,
325
+ "isTree" : false ,
326
+ "generateWeb" : true ,
327
+ "generateServer" : true ,
328
+ "fields" : [
329
+ {
330
+ "fieldName" : " PermissionName" ,
331
+ "fieldDesc" : " 权限名称" ,
332
+ "fieldType" : " string" ,
333
+ "fieldJson" : " permissionName" ,
334
+ "dataTypeLong" : " 100" ,
335
+ "comment" : " 权限名称" ,
336
+ "columnName" : " permission_name" ,
337
+ "fieldSearchType" : " LIKE" ,
338
+ "form" : true ,
339
+ "table" : true ,
340
+ "desc" : true ,
341
+ "require" : true
342
+ },
343
+ {
344
+ "fieldName" : " PermissionCode" ,
345
+ "fieldDesc" : " 权限代码" ,
346
+ "fieldType" : " string" ,
347
+ "fieldJson" : " permissionCode" ,
348
+ "dataTypeLong" : " 50" ,
349
+ "comment" : " 权限代码" ,
350
+ "columnName" : " permission_code" ,
351
+ "fieldSearchType" : " =" ,
352
+ "form" : true ,
353
+ "table" : true ,
354
+ "desc" : true ,
355
+ "require" : true
356
+ }
357
+ ]
358
+ }
359
+ ]
235
360
}
236
361
```
237
362
0 commit comments