😎代码生成模板格式调整

This commit is contained in:
zuohuaijun 2024-07-24 01:14:26 +08:00
parent aceae3d526
commit 6726b2e739

View File

@ -3,23 +3,23 @@
{
return text.ToString()[..1].ToLower() + text[1..]; // 首字母小写
}
var pkField = Model.TableField.Where(c => c.ColumnKey == "True").FirstOrDefault();
string pkFieldName = null;
if(pkField != null && !string.IsNullOrEmpty(pkField.PropertyName))
{
pkFieldName = LowerFirstLetter(pkField.PropertyName);
}
Dictionary<string, int> definedObjects = new Dictionary<string, int>();
bool haveLikeCdt = false;
foreach (var column in Model.TableField){
if (column.QueryWhether == "Y" && column.QueryType == "like"){
haveLikeCdt = true;
}
}
var pkField = Model.TableField.Where(c => c.ColumnKey == "True").FirstOrDefault();
string pkFieldName = null;
if(pkField != null && !string.IsNullOrEmpty(pkField.PropertyName))
{
pkFieldName = LowerFirstLetter(pkField.PropertyName);
}
Dictionary<string, int> definedObjects = new Dictionary<string, int>();
bool haveLikeCdt = false;
foreach (var column in Model.TableField){
if (column.QueryWhether == "Y" && column.QueryType == "like"){
haveLikeCdt = true;
}
}
}
<template>
<div class="@(@Model.LowerClassName)-container">
<el-card shadow="hover" :body-style="{ padding: '20px 20px 16px 10px', display: 'flex', width: '100%', height: '100%', alignItems: 'start' }">
<div class="@(@Model.LowerClassName)-container">
<el-card shadow="hover" :body-style="{ padding: '20px 20px 16px 10px', display: 'flex', width: '100%', height: '100%', alignItems: 'start' }">
<el-form :model="state.queryParams" ref="queryForm" :show-message="false" :inlineMessage="true" label-width="auto" style="flex: 1 1 0%" @@submit.prevent="handleQuery" >
<el-row :gutter="10">
@if(Model.QueryWhetherList.Count > 0){
@ -38,8 +38,8 @@
} else if(@column.EffectType == "InputNumber") {
<el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb5" v-if="state.showAdvanceQueryUI">
<el-form-item label="@column.ColumnComment">
<el-input-number v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="请输入@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery" />
</el-form-item>
<el-input-number v-model="state.queryParams.@(@column.LowerPropertyName)" placeholder="请输入@(@column.ColumnComment)" clearable @@keyup.enter.native="handleQuery" />
</el-form-item>
</el-col>
} else if(@column.EffectType == "fk") {
<el-col :xs="24" :sm="12" :md="8" :lg="6" :xl="6" class="mb5" v-if="state.showAdvanceQueryUI">
@ -95,7 +95,7 @@
</el-row>
</el-card>
<el-card class="full-table" shadow="hover" style="margin-top: 5px">
<el-card class="full-table" shadow="hover" style="margin-top: 5px">
<vxe-grid ref="xGrid" class="xGrid-style" v-bind="options" v-on="gridEvents">
<template #toolbar_buttons>
<el-button type="primary" icon="ele-Plus" @@click="handleAdd" v-auth="'@(@Model.LowerClassName)/add'"> 新增 </el-button>
@ -104,8 +104,8 @@
<template #empty>
<el-empty :image-size="200" />
</template>
@foreach (var column in Model.TableField) {
if(@column.WhetherTable == "Y") {
@foreach (var column in Model.TableField) {
if(@column.WhetherTable == "Y") {
if(@column.EffectType == "Upload") {
@:<template #row_@(@column.LowerPropertyName)="{ row }">
@:<el-popover
@ -144,28 +144,28 @@
@:</template>
} else if(@column.EffectType == "ConstSelector") {
@:<template #row_@(@column.LowerPropertyName)="{ row }">
@:<span>{{codeToName(row.@(@column.LowerPropertyName), '@(@column.DictTypeCode)')}}</span>
@:<span>{{codeToName(row.@(@column.LowerPropertyName), '@(@column.DictTypeCode)')}}</span>
@:</template>
} else if(@column.EffectType == "Select") {
} else if(@column.EffectType == "Select") {
@:<template #row_@(@column.LowerPropertyName)="{ row }">
@:<el-tag :type="di('@(@column.DictTypeCode)', row.@(@column.LowerPropertyName))?.tagType"> {{di('@(@column.DictTypeCode)', row.@column.LowerPropertyName)?.name}}</el-tag>
@:<el-tag :type="di('@(@column.DictTypeCode)', row.@(@column.LowerPropertyName))?.tagType"> {{di('@(@column.DictTypeCode)', row.@column.LowerPropertyName)?.name}}</el-tag>
@:</template>
} else if(@column.EffectType == "EnumSelector") {
} else if(@column.EffectType == "EnumSelector") {
@:<template #row_@(@column.LowerPropertyName)="{ row }">
@:<el-tag :type="dv('@(@column.DictTypeCode)', row.@(@column.LowerPropertyName))?.tagType"> {{dv('@(@column.DictTypeCode)', row.@column.LowerPropertyName)?.name}}</el-tag>
@:<el-tag :type="dv('@(@column.DictTypeCode)', row.@(@column.LowerPropertyName))?.tagType"> {{dv('@(@column.DictTypeCode)', row.@column.LowerPropertyName)?.name}}</el-tag>
@:</template>
}
}
}
}
}
}
<template #row_record="{ row }">
<ModifyRecord :data="row" />
</template>
<template #row_buttons="{ row }">
@if(@Model.PrintType == "custom") {
@if(@Model.PrintType == "custom") {
<el-tooltip content="打印" placement="top">
<el-button icon="ele-Printer" size="small" text type="primary" @@click="handlePrint(row)" v-auth="'@(@Model.LowerClassName)/print'" />
</el-tooltip>
}
}
<el-tooltip content="编辑" placement="top">
<el-button icon="ele-Edit" size="small" text type="primary" @@click="handleEdit(row)" v-auth="'@(@Model.LowerClassName)/update'" />
</el-tooltip>
@ -176,9 +176,9 @@
</vxe-grid>
</el-card>
<PrintDialog ref="printDialogRef" :title="state.title" @@reloadTable="handleQuery" />
<EditDialog ref="editDialogRef" :title="state.title" @@reloadTable="handleQuery" />
</div>
<PrintDialog ref="printDialogRef" :title="state.title" @@reloadTable="handleQuery" />
<EditDialog ref="editDialogRef" :title="state.title" @@reloadTable="handleQuery" />
</div>
</template>
<script lang="ts" setup name="@(@Model.LowerClassName)">
@ -192,7 +192,7 @@ import { Local } from '/@@/utils/storage';
@if(@Model.TableField.Any(x=>x.EffectType == "ConstSelector")){
@:import { codeToName, getConstType } from "/@@/utils/constHelper";
}
}
@if(@Model.TableField.Any(x=>x.EffectType == "Select") || @Model.TableField.Any(x=>x.EffectType == "EnumSelector")){
@:import { getDictLabelByVal as di, getDictDataList as dl } from '/@@/utils/dict-utils';
}
@ -224,12 +224,12 @@ import ModifyRecord from '/@@/components/table/modifyRecord.vue';
// 模型
@:import { @(@Model.ClassName), @(@Model.ClassName)Input, @(@Model.ClassName)Output } from '/@@/api-services/models';
} else {
} else {
@:import { page@(@Model.ClassName), delete@(@Model.ClassName) } from '/@@/api/@(@Model.PagePath)/@(@Model.LowerClassName)';
foreach (var column in Model.QueryWhetherList){
if(@column.EffectType == "fk"){
@:import { get@(@column.FkEntityName)@(@column.PropertyName)Dropdown } from '/@@/api/@(@Model.PagePath)/@(@Model.LowerClassName)';
}
if(@column.EffectType == "fk"){
@:import { get@(@column.FkEntityName)@(@column.PropertyName)Dropdown } from '/@@/api/@(@Model.PagePath)/@(@Model.LowerClassName)';
}
}
}
@ -364,24 +364,24 @@ const handleEdit = (row: any) => {
// 打开打印页面
const handlePrint = async (row: any) => {
state.title = '打印@(@Model.BusName)';
@if(@Model.PrintType == "custom"){
state.title = '打印@(@Model.BusName)';
@if(@Model.PrintType == "custom"){
if (@Model.IsApiService) {
@:var res = await getAPI(SysPrintApi).apiSysPrintPrintNameGet('@Model.PrintName');
@:var res = await getAPI(SysPrintApi).apiSysPrintPrintNameGet('@Model.PrintName');
} else {
@:var res = await getPrint@(@Model.ClassName)(row);
}
@:var printTemplate = res.data.result as SysPrint;
@:var template = JSON.parse(printTemplate.template);
@:var width = template.panels[0].width;
@:row['barCode'] = row.code;
@:row['qrCode'] = row.code;
@:row["printDate"] = formatDate(new Date(), 'YYYY-mm-dd HH:MM');
@:printDialogRef.value.showDialog(new hiprint.PrintTemplate({template: template}), row, width);
}
@if(@Model.PrintType == "auto"){
@:printDialogRef.value.showDialog(row);
}
@:var printTemplate = res.data.result as SysPrint;
@:var template = JSON.parse(printTemplate.template);
@:var width = template.panels[0].width;
@:row['barCode'] = row.code;
@:row['qrCode'] = row.code;
@:row["printDate"] = formatDate(new Date(), 'YYYY-mm-dd HH:MM');
@:printDialogRef.value.showDialog(new hiprint.PrintTemplate({template: template}), row, width);
}
@if(@Model.PrintType == "auto"){
@:printDialogRef.value.showDialog(row);
}
};
// 删除
@ -392,14 +392,14 @@ const handleDelete = (row: any) => {
type: 'warning',
}).then(async () => {
@if (@Model.IsApiService) {
@:await getAPI(@(@Model.ClassName)Api).api@(@Model.ClassName)DeletePost({ id: row.id });
@:await getAPI(@(@Model.ClassName)Api).api@(@Model.ClassName)DeletePost({ id: row.id });
} else {
@:await delete@(@Model.ClassName)(row);
}
await handleQuery();
ElMessage.success('删除成功');
})
.catch(() => {});
await handleQuery();
ElMessage.success('删除成功');
})
.catch(() => {});
};
// 表格事件
@ -417,12 +417,12 @@ const gridEvents: VxeGridListeners<@(@Model.ClassName)> = {
};
@foreach (var column in Model.QueryWhetherList) {
@if(@column.EffectType == "fk") {
@if(@column.EffectType == "fk") {
@:const @LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList = ref<any>([]);
@:const get@(@column.FkEntityName)@(@column.PropertyName)DropdownList = async () => {
//@:let list = await get@(@column.FkEntityName)@(@column.PropertyName)Dropdown();
//@:let list = await get@(@column.FkEntityName)@(@column.PropertyName)Dropdown();
@:let list = await getAPI(@(@Model.ClassName)Api).api@(@Model.ClassName)@(@column.FkEntityName)@(@column.PropertyName)DropdownGet();
@:@LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList.value = list.data.result ?? [];
@:@LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList.value = list.data.result ?? [];
@:};
@:get@(@column.FkEntityName)@(@column.PropertyName)DropdownList();
}
@ -433,6 +433,6 @@ const gridEvents: VxeGridListeners<@(@Model.ClassName)> = {
:deep(.el-input),
:deep(.el-select),
:deep(.el-input-number) {
width: 100%;
width: 100%;
}
</style>