refactor: 代码生成表单支持隐藏域

This commit is contained in:
Ray.Hao
2025-01-02 01:10:22 +08:00
parent 82b8e101a2
commit bdabe6c997
3 changed files with 29 additions and 13 deletions

View File

@@ -60,7 +60,12 @@ public enum FormTypeEnum implements IBaseEnum<Integer> {
/**
* 日期框
*/
DATE_TIME(9, "日期时间框");
DATE_TIME(9, "日期时间框"),
/**
* 隐藏域
*/
HIDDEN(10, "隐藏域");
// Mybatis-Plus 提供注解表示插入数据库时插入该值

View File

@@ -14,8 +14,8 @@ const ${entityName}API = {
/**
* 获取${businessName}表单数据
*
* @param id ${entityName}ID
* @returns ${entityName}表单数据
* @param id ${businessName}ID
* @returns ${businessName}表单数据
*/
getFormData(id: number) {
return request<any, ${entityName}Form>({
@@ -36,8 +36,8 @@ const ${entityName}API = {
/**
* 更新${businessName}
*
* @param id ${entityName}ID
* @param data ${entityName}表单数据
* @param id ${businessName}ID
* @param data ${businessName}表单数据
*/
update(id: number, data: ${entityName}Form) {
return request({

View File

@@ -125,13 +125,21 @@
<el-table-column type="selection" width="55" align="center" />
#foreach($fieldConfig in $fieldConfigs)
#if($fieldConfig.isShowInList == 1)
<el-table-column
key="$fieldConfig.fieldName"
label="$fieldConfig.fieldComment"
prop="$fieldConfig.fieldName"
min-width="150"
align="center"
/>
#if($fieldConfig.dictType && $fieldConfig.dictType.trim() != "")
<el-table-column label="$fieldConfig.fieldComment" width="150" align="center">
<template #default="scope">
<DictLabel v-model="scope.row.$fieldConfig.fieldName" code="$fieldConfig.dictType" />
</template>
</el-table-column>
#else
<el-table-column
key="$fieldConfig.fieldName"
label="$fieldConfig.fieldComment"
prop="$fieldConfig.fieldName"
min-width="150"
align="center"
/>
#end
#end
#end
<el-table-column fixed="right" label="操作" width="220">
@@ -178,7 +186,7 @@
>
<el-form ref="dataFormRef" :model="formData" :rules="rules" label-width="100px">
#foreach($fieldConfig in $fieldConfigs)
#if($fieldConfig.isShowInForm == 1)
#if($fieldConfig.isShowInForm == 1 && $fieldConfig.formType != "HIDDEN")
<el-form-item label="$fieldConfig.fieldComment" prop="$fieldConfig.fieldName">
#if($fieldConfig.formType == "INPUT")
<el-input
@@ -237,6 +245,9 @@
/>
#end
</el-form-item>
#elseif($fieldConfig.formType == "HIDDEN")
<el-input type="hidden" v-model="formData.$fieldConfig.fieldName" />
#end
#end
</el-form>