优化代码生成

更换代码生成上级菜单选择组件
代码生成新增前端路径配置
This commit is contained in:
不做码农
2022-05-26 20:48:49 +08:00
8 changed files with 107 additions and 229 deletions

View File

@@ -34,8 +34,9 @@
"conn": "server=LAPTOP-STKF2M8H\\SQLEXPRESS;user=zr;pwd=abc;database=ZrAdmin;Trusted_Connection=SSPI",
"dbType": 1, //MySql = 0, SqlServer = 1
"autoPre": true, //<2F>Զ<EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>ǰ׺
"author": "zr",
"tablePrefix": "sys_" //"<22><>ǰ׺<C7B0><D7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ׺<C7B0><D7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>ŷָ<C5B7><D6B8><EFBFBD>",
"author": "admin",
"tablePrefix": "sys_", //"<22><>ǰ׺<C7B0><D7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ׺<C7B0><D7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>ŷָ<C5B7><D6B8><EFBFBD>",
"vuePath": "" //ǰ<>˴<EFBFBD><CBB4><EFBFBD><EFBFBD>洢·<E6B4A2><C2B7>eg<65><67>D:\Work\ZRAdmin-Vue3
},
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
"MailOptions": {

View File

@@ -7,7 +7,7 @@
* @LastEditTime: (${replaceDto.AddTime})
-->
<template>
<div class="app-container">
<div>
<!-- :model属性用于表单验证使用 比如下面的el-form-item 的 prop属性用于对表单值进行验证操作 -->
<el-form :model="queryParams" label-position="right" inline ref="queryRef" v-show="showSearch" @submit.prevent>
$foreach(column in genTable.Columns)
@@ -17,12 +17,12 @@ $set(numLabel = "")
$if(column.IsQuery == true)
$set(columnName = column.CsharpFieldFl)
$if(column.ColumnComment != "")
$set(labelName = column.ColumnComment)
$set(labelName = column.ColumnComment)
$else
$set(labelName = column.CsharpFieldFl)
$set(labelName = column.CsharpFieldFl)
$end
$if(column.CsharpType == "int" || column.CsharpType == "long")
$set(numLabel = ".number")
$set(numLabel = ".number")
$end
$if(column.HtmlType == "datetime")
<el-form-item label="$labelName">
@@ -35,8 +35,7 @@ $if(column.HtmlType == "datetime")
end-placeholder="结束日期"
placeholder="请选择$labelName"
value-format="YYYY-MM-DD HH:mm:ss"
:shortcuts="dateOptions"
>
:shortcuts="dateOptions">
</el-date-picker>
</el-form-item>
$elseif(column.HtmlType == "select" || column.HtmlType == "radio")
@@ -45,6 +44,12 @@ $elseif(column.HtmlType == "select" || column.HtmlType == "radio")
<el-option v-for="item in $if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"></el-option>
</el-select>
</el-form-item>
$elseif(column.HtmlType == "radio")
<el-form-item label="${labelName}" prop="${columnName}">
<el-radio-group v-model="queryParams.${columnName}">
<el-radio v-for="item in $if(column.DictType != "") ${column.DictType} $else ${column.CsharpFieldFl}Options$end" :key="item.dictValue" :label="item.dictValue">{{item.dictLabel}}</el-radio>
</el-radio-group>
</el-form-item>
$else
<el-form-item label="${labelName}" prop="${columnName}">
<el-input v-model${numLabel}="queryParams.${columnName}" placeholder="请输入${labelName}" />
@@ -112,7 +117,11 @@ $if(column.HtmlType == "customInput" && column.IsPk == false)
<el-table-column prop="${columnName}" label="${labelName}" width="90" sortable align="center">
<template #default="scope">
<span v-show="editIndex != scope.$${index}index" @click="editCurrRow(scope.$${index}index)">{{scope.row.${columnName}}}</span>
<el-input :id="scope.$${index}index" v-show="(editIndex == scope.$${index}index)" v-model="scope.row.${columnName}" @blur="handleChangeSort(scope.row)"></el-input>
<el-input
:ref="setColumnsRef"
v-show="(editIndex == scope.$${index}index)"
v-model="scope.row.${columnName}"
@blur="handleChangeSort(scope.row)"></el-input>
</template>
</el-table-column>
$elseif(column.HtmlType == "imageUpload")
@@ -138,15 +147,16 @@ $else
$end
$end
$end
<el-table-column label="操作" align="center" width="140">
<el-table-column label="操作" align="center" width="160">
<template #default="scope">
$if(replaceDto.ShowBtnView)
<el-button type="primary" icon="view" @click="handlePreview(scope.row)"></el-button>
$end
$if(replaceDto.ShowBtnEdit)
<el-button v-hasPermi="['${replaceDto.PermissionPrefix}:edit']" type="success" icon="edit" title="编辑"
@click="handleUpdate(scope.row)"></el-button>
<el-button v-hasPermi="['${replaceDto.PermissionPrefix}:edit']" type="success" icon="edit" title="编辑" @click="handleUpdate(scope.row)"></el-button>
$end
$if(replaceDto.ShowBtnDelete)
<el-button v-hasPermi="['${replaceDto.PermissionPrefix}:delete']" type="danger" icon="delete" title="删除"
@click="handleDelete(scope.row)"></el-button>
<el-button v-hasPermi="['${replaceDto.PermissionPrefix}:delete']" type="danger" icon="delete" title="删除" @click="handleDelete(scope.row)"></el-button>
$end
</template>
</el-table-column>
@@ -181,7 +191,7 @@ $end
</el-form-item>
</el-col>
$else
$if(column.HtmlType == "inputNumber")
$if(column.HtmlType == "inputNumber" || column.HtmlType == "customInput")
<el-col :lg="${options.ColNum}">
<el-form-item label="${labelName}" prop="${columnName}">
<el-input-number v-model.number="form.${columnName}" controls-position="right" placeholder="请输入${labelName}" ${column.DisabledStr}/>
@@ -252,7 +262,7 @@ $end
$end
</el-row>
</el-form>
<template #footer>
<template #footer v-if="opertype != 3">
<el-button text @click="cancel">{{ ${t}t('btn.cancel') }}</el-button>
<el-button type="primary" @click="submitForm">{{ ${t}t('btn.submit') }}</el-button>
</template>
@@ -325,12 +335,19 @@ const dateRange${item.CsharpField} = ref([])
$elseif(item.HtmlType == "customInput")
// ******************自定义编辑 start **********************
const editIndex = ref(-1)
// 动态ref设置值
const columnRefs = ref([])
const setColumnsRef = (el) => {
if (el) {
columnRefs.value.push(el)
}
}
// 显示编辑排序
function editCurrRow(rowId) {
editIndex.value = rowId
function editCurrRow(index) {
editIndex.value = index
setTimeout(() => {
document.getElementById(rowId).focus()
columnRefs.value[index].focus()
}, 100)
}
// 保存排序
@@ -393,6 +410,16 @@ function cancel(){
// 重置表单
function reset() {
form.value = {
$foreach(item in genTable.Columns)
$if((item.IsEdit || item.IsInsert))
$item.CsharpFieldFl: undefined,
$end
$if((item.HtmlType == "checkbox"))
${item.CsharpFieldFl}Checked: [],
$end
$end
};
proxy.resetForm("formRef")
}
@@ -501,7 +528,18 @@ function handleExport() {
})
}
$end
$if(replaceDto.ShowBtnView)
/**
* 预览
* @param {*} row
*/
function handlePreview(row) {
open.value = true
title.value = '预览'
opertype.value = 3
form.value = row
}
$end
// 多选框选中数据
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.${replaceDto.FistLowerPk});