优化代码生成功能

This commit is contained in:
不做码农 2021-12-07 16:51:14 +08:00
parent 74635e79b9
commit f453b95f61
7 changed files with 78 additions and 65 deletions

View File

@ -37,7 +37,7 @@ namespace ZR.Admin.WebApi.Controllers
/// 心跳
/// </summary>
/// <returns></returns>
[HttpGet, Route("health/index")]
[HttpGet]
public IActionResult Health()
{
return SUCCESS(true);

View File

@ -52,7 +52,7 @@ namespace ${options.ApiControllerNamespace}.Controllers
//搜索条件查询语法参考Sqlsugar
${QueryCondition}
$if(genTable.SortField != "")
$if(genTable.SortField != "" && genTable.SortField != null)
var response = _${replaceDto.ModelTypeName}Service.GetPages(predicate.ToExpression(), parm, x => x.${genTable.SortField}, "${genTable.SortType}");
$else
var response = _${replaceDto.ModelTypeName}Service.GetPages(predicate.ToExpression(), parm);
@ -160,7 +160,7 @@ ${end}
string sFileName = ExportExcel(list, "${replaceDto.ModelTypeName}", "${genTable.FunctionName}");
return SUCCESS(new { path = "/export/" + sFileName, fileName = sFileName });
}
$if(genTable.SortField != "")
$if(genTable.SortField != "" && genTable.SortField != null)
////// <summary>
////// 代码自动生成(不用可删除) 保存排序
////// </summary>

View File

@ -20,7 +20,7 @@ ${vueQueryFormHtml}
<el-col :span="1.5">
<el-button type="danger" :disabled="multiple" v-hasPermi="['${replaceDto.PermissionPrefix}:delete']" plain icon="el-icon-delete" size="mini" @click="handleDelete">删除</el-button>
</el-col>
<el-col :span="1.5" style="display:none">
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['${replaceDto.PermissionPrefix}:export']">导出</el-button>
</el-col>
$if(genTable.SortField != "" && 1 == 2)
@ -33,7 +33,7 @@ $end
<!-- 数据区域 -->
<el-table :data="dataList" ref="table" border @selection-change="handleSelectionChange">
<el-table-column type="selection" width="50" />
<el-table-column type="selection" width="50" align="center"/>
${VueViewListContent}
<el-table-column label="操作" align="center" width="200">
<template slot-scope="scope">
@ -46,16 +46,16 @@ ${VueViewListContent}
</el-table>
<pagination class="mt10" background :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
<!-- 添加或修改菜单对话框 -->
<!-- 添加或修改${genTable.functionName}对话框 -->
<el-dialog :title="title" :lock-scroll="false" :visible.sync="open" >
<el-form ref="form" :model="form" :rules="rules" :label-width="formLabelWidth">
<el-row>
${VueViewFormContent}
${VueViewFormContent}
</el-row>
</el-form>
<div slot="footer" class="dialog-footer" v-if="btnSubmitVisible">
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
@ -68,7 +68,8 @@ import {
del${genTable.BusinessName},
update${genTable.BusinessName},
get${genTable.BusinessName},
$if(genTable.SortField != "")
export${genTable.BusinessName},
$if(genTable.SortField != "" && genTable.SortField != null)
changeSort
$end
} from '@/api/${genTable.ModuleName}/${lowerBusinessName}.js';
@ -103,13 +104,13 @@ $foreach(item in genTable.Columns)
$if((item.HtmlType == "radio" || item.HtmlType == "select"))
// ${item.ColumnComment}选项列表
${item.ColumnName}Options: [],
$elseif(item.HtmlType == "datetime")
$elseif(item.HtmlType == "datetime" && item.IsQuery == true)
//${item.ColumnComment}时间范围
dateRange${item.CsharpField}: [],
$end
$end
$if(genTable.SortField != "")
$if(genTable.SortField != "" && genTable.SortField != null)
// 是否显示编辑排序
showEditSort: false,
$end
@ -125,7 +126,7 @@ ${VueViewEditFormRuleContent}
},
};
},
mounted() {
created() {
// 列表数据查询
this.getList();
@ -134,17 +135,20 @@ $if((item.HtmlType == "radio" || item.HtmlType == "select") && item.DictType !=
this.getDicts("${item.DictType}").then((response) => {
this.${item.ColumnName}Options = response.data;
})
$elseif(item.HtmlType == "datetime")
this.queryParams["begin${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 0);
this.queryParams["end${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 1);
$end
$end
},
methods: {
// 查询数据
getList() {
$foreach(item in genTable.Columns)
$if(item.HtmlType == "datetime" && item.IsQuery == true)
this.queryParams["begin${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 0);
this.queryParams["end${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 1);
$end
$end
console.log(JSON.stringify(this.queryParams));
list${genTable.BusinessName}(this.queryParams).then(res => {
list${genTable.BusinessName}(this.queryParams).then(res => {
if (res.code == 200) {
this.dataList = res.data.result;
this.total = res.data.totalNum;
@ -171,9 +175,9 @@ $end
resetQuery() {
this.timeRange = [];
$foreach(item in genTable.Columns)
if(item.HtmlType == "datetime")
$if(item.HtmlType == "datetime" && item.IsQuery == true)
//${item.ColumnComment}时间范围
dateRange${item.CsharpField}= [];
this.dateRange${item.CsharpField}= [];
$end
$end
this.resetForm("queryForm");
@ -220,7 +224,7 @@ $end
}
});
},
$if(genTable.SortField != "")
$if(genTable.SortField != "" && genTable.SortField != null)
// 显示编辑排序
handleShowSort() {
this.showEditSort = !this.showEditSort;
@ -239,9 +243,8 @@ $end
$if(replaceDto.UploadFile == 1)
//图片上传成功方法
handleUploadSuccess(res, columnName) {
console.log(columnName, res)
this.form[columnName] = res.data;
console.log(JSON.stringify(this.form))
console.log(JSON.stringify(this.form), JSON.stringify(res))
},
$end
$foreach(item in genTable.Columns)
@ -282,7 +285,21 @@ $end
}
});
},
handleExport() {},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.${confirm}confirm("是否确认导出所有${genTable.functionName}数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(function () {
return export${genTable.BusinessName}(queryParams);
})
.then((response) => {
this.download(response.data.path);
});
},
},
};
</script>

View File

@ -67,7 +67,7 @@ export function export${replaceDto.ModelTypeName}(query) {
})
}
$if(genTable.SortField != "")
$if(genTable.SortField != "" && genTable.SortField != null)
//排序
export function changeSort(data) {
return request({

View File

@ -72,21 +72,22 @@ namespace ZR.CodeGenerator
string columnName = dbFieldInfo.ColumnName;
string labelName = CodeGeneratorTool.GetLabelName(dbFieldInfo.ColumnComment, columnName);
string labelDisabled = dbFieldInfo.IsPk ? ":disabled=\"true\"" : "";
string placeHolder = dbFieldInfo.IsIncrement ? "" : $"请输入{labelName}";
StringBuilder sb = new StringBuilder();
string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
if (GenConstants.inputDtoNoField.Any(f => f.ToLower().Contains(dbFieldInfo.CsharpField.ToLower())))
{
return sb.ToString();
}
if (!dbFieldInfo.IsInsert && !dbFieldInfo.IsEdit)
if (!dbFieldInfo.IsInsert && !dbFieldInfo.IsEdit && !dbFieldInfo.IsPk)
{
return sb.ToString();
}
if (dbFieldInfo.HtmlType == GenConstants.HTML_INPUT_NUMBER)
{
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{CodeGeneratorTool.FirstLowerCase(columnName)}\">");
sb.AppendLine($" <el-input-number v-model.number=\"form.{CodeGeneratorTool.FirstLowerCase(columnName)}\" placeholder=\"{placeHolder}\" {labelDisabled}/>");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-input-number v-model.number=\"form.{columnName}\" placeholder=\"请输入{labelName}\" {labelDisabled}/>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
}
@ -94,7 +95,7 @@ namespace ZR.CodeGenerator
{
//时间
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-date-picker v-model=\"form.{columnName}\" format=\"yyyy-MM-dd HH:mm:ss\" value-format=\"yyyy-MM-dd HH:mm:ss\" type=\"datetime\" placeholder=\"选择日期时间\"> </el-date-picker>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
@ -103,21 +104,15 @@ namespace ZR.CodeGenerator
{
//图片
sb.AppendLine(" <el-col :span=\"24\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
//sb.AppendLine($" <el-upload class=\"avatar-uploader\" name=\"file\" :action=\"uploadUrl\" :show-file-list=\"false\" :on-success=\"handleUpload{dbFieldInfo.CsharpField}Success\" :before-upload=\"beforeFileUpload\">");
//sb.AppendLine($" <el-image v-if=\"form.{columnName}\" :src=\"form.{columnName}\" class=\"icon\"/>");
//sb.AppendLine(" <i v-else class=\"el-icon-plus uploader-icon\"></i>");
//sb.AppendLine(" </el-upload>");
//sb.AppendLine($" <el-input v-model=\"form.{columnName}\" placeholder=\"请上传文件或手动输入文件地址\"></el-input>");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($@" <UploadImage :icon=""form.{columnName}"" column='{columnName}' :key=""form.{columnName}"" @handleUploadSuccess=""handleUploadSuccess"" />");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
}
else if (dbFieldInfo.HtmlType == GenConstants.HTML_RADIO && !string.IsNullOrEmpty(dbFieldInfo.DictType))
{
string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-radio-group v-model=\"form.{columnName}\">");
sb.AppendLine($" <el-radio v-for=\"item in {columnName}Options\" :key=\"item.dictValue\" :label=\"{value}\">{{{{item.dictLabel}}}}</el-radio>");
sb.AppendLine(" </el-radio-group>");
@ -127,10 +122,9 @@ namespace ZR.CodeGenerator
else if (dbFieldInfo.HtmlType == GenConstants.HTML_RADIO)
{
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" >");
sb.AppendLine($" <el-radio-group v-model=\"form.{columnName}\">");
sb.AppendLine(" <el-radio :key=\"1\" :label=\"1\">是</el-radio>");
sb.AppendLine(" <el-radio :key=\"0\" :label=\"0\">否</el-radio>");
sb.AppendLine(" <el-radio :label=\"1\">请选择字典生成</el-radio>");
sb.AppendLine(" </el-radio-group>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
@ -146,29 +140,27 @@ namespace ZR.CodeGenerator
else if (dbFieldInfo.HtmlType == GenConstants.HTML_EDITOR)
{
sb.AppendLine(" <el-col :span=\"24\">");
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <editor v-model=\"form.{columnName}\" :min-height=\"200\" />");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
}
else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT && !string.IsNullOrEmpty(dbFieldInfo.DictType))
{
string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-select v-model=\"form.{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-select v-model=\"form.{columnName}\" placeholder=\"请选择{labelName}\"> ");
sb.AppendLine($" <el-option v-for=\"item in {columnName}Options\" :key=\"item.dictValue\" :label=\"item.dictLabel\" :value=\"{value}\"></el-option>");
sb.AppendLine(" </el-select>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
}
else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT)
else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT && string.IsNullOrEmpty(dbFieldInfo.DictType))
{
string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\" prop=\"{columnName}\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-select v-model=\"form.{columnName}\">");
sb.AppendLine($" <el-option v-for=\"item in {columnName}Options\" :key=\"item.dictValue\" :label=\"item.dictLabel\" :value=\"{value}\"></el-option>");
sb.AppendLine($" <el-option label=\"\"></el-option>");
sb.AppendLine(" </el-select>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
@ -177,8 +169,8 @@ namespace ZR.CodeGenerator
{
string inputNumTxt = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? ".number" : "";
sb.AppendLine(" <el-col :span=\"12\">");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\" prop=\"{CodeGeneratorTool.FirstLowerCase(columnName)}\">");
sb.AppendLine($" <el-input v-model{inputNumTxt}=\"form.{CodeGeneratorTool.FirstLowerCase(columnName)}\" placeholder=\"{placeHolder}\" {labelDisabled}/>");
sb.AppendLine($" <el-form-item label=\"{labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-input v-model{inputNumTxt}=\"form.{columnName}\" placeholder=\"请输入{labelName}\" {labelDisabled}/>");
sb.AppendLine(" </el-form-item>");
sb.AppendLine(" </el-col>");
}
@ -200,14 +192,14 @@ namespace ZR.CodeGenerator
{
sb.AppendLine($" <el-form-item label=\"{labelName}\">");
sb.AppendLine($" <el-date-picker v-model=\"dateRange{dbFieldInfo.CsharpField}\" size=\"small\" value-format=\"yyyy-MM-dd\" type=\"daterange\" range-separator=\"-\" start-placeholder=\"开始日期\"");
sb.AppendLine(" end-placeholder=\"结束日期\"></el-date-picker>");
sb.AppendLine($" end-placeholder=\"\" placeholder=\"请选择{dbFieldInfo.ColumnComment}\" ></el-date-picker>");
sb.AppendLine(" </el-form-item>");
}
else if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT && !string.IsNullOrEmpty(dbFieldInfo.DictType))
else if ((dbFieldInfo.HtmlType == GenConstants.HTML_SELECT || dbFieldInfo.HtmlType == GenConstants.HTML_RADIO) && !string.IsNullOrEmpty(dbFieldInfo.DictType))
{
//string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\" prop=\"{dbFieldInfo.ColumnName}\">");
sb.AppendLine($" <el-select v-model=\"queryParams.{dbFieldInfo.ColumnName}\">");
sb.AppendLine($" <el-select v-model=\"queryParams.{dbFieldInfo.ColumnName}\"> placeholder=\"请选择{dbFieldInfo.ColumnComment}\" size=\"small\"");
sb.AppendLine($" <el-option v-for=\"item in {dbFieldInfo.ColumnName}Options\" :key=\"item.dictValue\" :label=\"item.dictLabel\" :value=\"item.dictValue\"></el-option>");
sb.AppendLine(" </el-select>");
sb.AppendLine(" </el-form-item>");
@ -216,7 +208,7 @@ namespace ZR.CodeGenerator
{
//string value = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? "parseInt(item.dictValue)" : "item.dictValue";
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\" prop=\"{dbFieldInfo.ColumnName}\">");
sb.AppendLine($" <el-select v-model=\"queryParams.{dbFieldInfo.ColumnName}\">");
sb.AppendLine($" <el-select v-model=\"queryParams.{dbFieldInfo.ColumnName}\" placeholder=\"请选择{dbFieldInfo.ColumnComment}\" size=\"small\">");
sb.AppendLine($" <el-option v-for=\"item in {dbFieldInfo.ColumnName}Options\" :key=\"item.dictValue\" :label=\"item.dictLabel\" :value=\"item.dictValue\"></el-option>");
sb.AppendLine(" </el-select>");
sb.AppendLine(" </el-form-item>");
@ -225,7 +217,7 @@ namespace ZR.CodeGenerator
{
string inputNumTxt = CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType) ? ".number" : "";
sb.AppendLine($" <el-form-item label=\"{ labelName}\" :label-width=\"labelWidth\">");
sb.AppendLine($" <el-input v-model{inputNumTxt}=\"queryParams.{CodeGeneratorTool.FirstLowerCase(dbFieldInfo.CsharpField)}\" />");
sb.AppendLine($" <el-input v-model{inputNumTxt}=\"queryParams.{dbFieldInfo.ColumnName}\" placeholder=\"请输入{dbFieldInfo.ColumnComment}\" size=\"small\"/>");
sb.AppendLine(" </el-form-item>");
}
@ -247,7 +239,7 @@ namespace ZR.CodeGenerator
StringBuilder sb = new StringBuilder();
var sortField = genTable?.SortField ?? "";
//有排序字段
if (!string.IsNullOrEmpty(sortField.ToString()) && sortField.ToString() == dbFieldInfo.CsharpField)
if (!string.IsNullOrEmpty(sortField.ToString()) && sortField.ToString() == dbFieldInfo.CsharpField && !dbFieldInfo.IsPk && CodeGeneratorTool.IsNumber(dbFieldInfo.CsharpType))
{
sb.AppendLine($@" <el-table-column prop=""{columnName}"" label=""{label}"" width=""90"" sortable align=""center"">");
sb.AppendLine(@" <template slot-scope=""scope"">");

View File

@ -66,7 +66,7 @@ namespace ZR.CodeGenerator
replaceDto.UploadFile = 1;
}
CodeGenerateTemplate.GetQueryDtoProperty(dbFieldInfo, replaceDto);
replaceDto.VueViewFormHtml += CodeGenerateTemplate.TplVueFormContent(dbFieldInfo);
replaceDto.VueViewListHtml += CodeGenerateTemplate.TplTableColumn(dbFieldInfo, dto.GenTable);
replaceDto.VueViewEditFormRuleContent += CodeGenerateTemplate.TplFormRules(dbFieldInfo);
@ -177,7 +177,7 @@ namespace ZR.CodeGenerator
{
var fullPath = Path.Combine(generateDto.GenCodePath, _option.ApiControllerNamespace, "Controllers", generateDto.GenTable.ModuleName, $"{replaceDto.ModelTypeName}Controller.cs");
var tpl = FileHelper.ReadJtTemplate("TplControllers.txt");
tpl.Set("QueryCondition", replaceDto.QueryCondition);
var result = tpl.Render();
generateDto.GenCodes.Add(new GenCode(5, "Controller", fullPath, result));
@ -278,11 +278,11 @@ namespace ZR.CodeGenerator
/// <returns>业务名</returns>
public static string GetBusinessName(string tableName)
{
int lastIndex = tableName.LastIndexOf("_");//_前缀长度
int lastIndex = tableName.IndexOf("_");//_前缀长度
int nameLength = tableName.Length;
int subLength = (nameLength - lastIndex) - 1;
string businessName = tableName[(lastIndex + 1)..];// tableName.Substring(lastIndex + 1, subLength);
return businessName.ToLower();
string businessName = tableName[(lastIndex + 1)..];
return businessName.Replace("_", "").ToLower();
}
/// <summary>
@ -397,7 +397,11 @@ namespace ZR.CodeGenerator
{
genTableColumn.IsList = true;
}
//时间类型初始化between范围查询
if (genTableColumn.CsharpType == GenConstants.TYPE_DATE)
{
genTableColumn.QueryType = "BETWEEN";
}
genTableColumns.Add(genTableColumn);
}
return genTableColumns;
@ -421,6 +425,7 @@ namespace ZR.CodeGenerator
options.OutMode = OutMode.Auto;
//options.DisableeLogogram = true;//禁用简写
options.Data.Set("refs", "$");//特殊标签替换
options.Data.Set("confirm", "$");//特殊标签替换
options.Data.Set("replaceDto", replaceDto);
options.Data.Set("options", dto.GenOptions);
options.Data.Set("genTable", dto.GenTable);

View File

@ -53,8 +53,7 @@
</el-table-column>
<el-table-column label="查询" min-width="5%">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isQuery"
:disabled="scope.row.htmlType == 'imageUpload' || scope.row.htmlType == 'fileUpload'">
<el-checkbox v-model="scope.row.isQuery" :disabled="scope.row.htmlType == 'imageUpload' || scope.row.htmlType == 'fileUpload'">
</el-checkbox>
</template>
</el-table-column>
@ -90,7 +89,7 @@
</el-table-column>
<el-table-column label="字典类型" min-width="12%">
<template slot-scope="scope">
<el-select v-model="scope.row.dictType" clearable filterable placeholder="请选择">
<el-select v-model="scope.row.dictType" clearable filterable placeholder="请选择" :disabled="scope.row.htmlType == 'datetime'">
<el-option v-for="dict in dictOptions" :key="dict.dictType" :label="dict.dictName" :value="dict.dictType">
<span style="float: left">{{ dict.dictName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ dict.dictType }}</span>
@ -101,7 +100,7 @@
</el-table>
</el-tab-pane>
<el-tab-pane label="生成信息" name="genInfo">
<gen-info-form ref="genInfo" :info="info" :tables="tables" :menus="menus" :columns="cloumns"/>
<gen-info-form ref="genInfo" :info="info" :tables="tables" :menus="menus" :columns="cloumns" />
</el-tab-pane>
</el-tabs>
<el-form label-width="100px">