| @{ | 
|   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.WhetherKeyQuery == "Y"){ | 
|           haveLikeCdt = true; | 
|       } | 
|   } | 
| } | 
| <template> | 
|   <div class="@(@Model.LowerClassName)-container"> | 
|     <el-card shadow="hover" :body-style="{ paddingBottom: '0' }">  | 
|       @<el-form :model="queryParams@(@Model.ClassName)" ref="queryForm" labelWidth="90"> | 
|         @<el-row> | 
|               @if(Model.QueryWhetherList.Count > 0){ | 
|           @if(haveLikeCdt){ | 
|           @:<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10"> | 
|             @:<el-form-item label="关键字"> | 
|               @:<el-input v-model="queryParams@(@Model.ClassName).searchKey" clearable="" placeholder="@(@Model.KeyQueryStr)"/> | 
|               @: | 
|             </el-form-item> | 
|           </el-col> | 
|           } | 
|           foreach (var column in Model.QueryWhetherList){ | 
|           @:<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI@(@Model.ClassName)"> | 
|             if(@column.EffectType == "Input" || @column.EffectType == "InputTextArea"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-input v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" clearable="" placeholder="请输入@(@column.ColumnComment)"/> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "InputTextArea"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-input-number v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)"  clearable="" placeholder="请输入@(@column.ColumnComment)"/> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "InputNumber"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-input-number v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)"  clearable="" placeholder="请输入@(@column.ColumnComment)"/> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "fk"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-select clearable="" filterable="" v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" placeholder="请选择@(@column.ColumnComment)"> | 
|                 @:<el-option v-for="(item,index) in  @LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList" :key="index" :value="item.value" :label="item.label" /> | 
|                 @: | 
|               </el-select> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "Select"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-select clearable="" v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" placeholder="请选择@(@column.ColumnComment)"> | 
|                 @:<el-option v-for="(item,index) in dl('@(@column.DictTypeCode)')" :key="index" :value="item.code" :label="`[${item.code}] ${item.name}`" /> | 
|                 @: | 
|               </el-select> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "EnumSelector" || @column.EffectType == "Switch"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               @:<el-select clearable="" v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" placeholder="请选择@(@column.ColumnComment)"> | 
|                 @:<el-option v-for="(item,index) in getEnum@(@column.PropertyName)Data_Index" :key="index" :value="item.value" :label="`${item.describe}`" /> | 
|                 @: | 
|               </el-select> | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "DateTimePicker"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               if(@column.QueryType == "~"){ | 
|               @:<el-date-picker placeholder="请选择@(@column.ColumnComment)" value-format="YYYY/MM/DD  HH:mm:ss" type="datetimerange" :default-time="defaultTimeRange" v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)Range" /> | 
|               }else | 
|               { | 
|               @:<el-date-picker placeholder="请选择@(@column.ColumnComment)" value-format="YYYY/MM/DD HH:mm:ss"  v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" /> | 
|               } | 
|               @: | 
|             </el-form-item> | 
|             }else if(@column.EffectType == "DatePicker"){ | 
|             @:<el-form-item label="@column.ColumnComment"> | 
|               if(@column.QueryType == "~"){ | 
|               @:<el-date-picker placeholder="请选择@(@column.ColumnComment)" value-format="YYYY/MM/DD" type="daterange" v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)Range" /> | 
|               }else | 
|               { | 
|               @:<el-date-picker placeholder="请选择@(@column.ColumnComment)" value-format="YYYY/MM/DD"  v-model="queryParams@(@Model.ClassName).@(@column.LowerPropertyName)" /> | 
|               } | 
|               @: | 
|             </el-form-item> | 
|             } | 
|           @:</el-col> | 
|             }  | 
|       } | 
|           @<el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10"> | 
|             @<el-form-item> | 
|               @<el-button-group style="display: flex; align-items: center;"> | 
|                 @<el-button type="primary"  icon="ele-Search" @@click="handleQuery@(@Model.ClassName)" v-auth="'@(@Model.LowerClassName):page'" :disabled="disabled_btn@(@Model.ClassName)"> 查询 </el-button> | 
|                    @if(Model.QueryWhetherList.Count > 0){ | 
|                       @:<el-button icon="ele-Refresh" @@click="reset@(@Model.ClassName)"> 重置 </el-button> | 
|                         @if(haveLikeCdt){ | 
|                         @:<el-button icon="ele-ZoomIn" @@click="changeAdvanceQueryUI@(@Model.ClassName)" v-if="!showAdvanceQueryUI@(@Model.ClassName)" style="margin-left:5px;"> 高级查询 </el-button> | 
|                         @:<el-button icon="ele-ZoomOut" @@click="changeAdvanceQueryUI@(@Model.ClassName)" v-if="showAdvanceQueryUI@(@Model.ClassName)" style="margin-left:5px;"> 隐藏 </el-button> | 
|                         } | 
|                     } | 
|                 @<el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @@click="openAdd@(@Model.ClassName)" v-auth="'@(@Model.LowerClassName):add'"> 新增 </el-button> | 
|                  @if(@Model.Buttons.Contains("导入")){   | 
|                 @:<el-button type="primary" style="margin-left:5px;" icon="ele-Upload" @@click="openImportExcel@(@Model.ClassName)"  v-auth="'@(@Model.LowerClassName):importExcel'" > 导入 </el-button> | 
|                 } | 
|                  @if(@Model.Buttons.Contains("导出")){   | 
|                 @:<el-button type="primary" style="margin-left:5px;" icon="ele-Download" @@click="handleExportExcel@(@Model.ClassName)"  v-auth="'@(@Model.LowerClassName):exportExcel'" > 导出 </el-button> | 
|                 } | 
|               </el-button-group> | 
|             </el-form-item> | 
|             @ | 
|           @</el-col> | 
|         </el-row> | 
|         @* 操作区另起一行 | 
|         @:<el-row> | 
|           @:<el-col> | 
|             @:<el-button-group style="margin-left:20px;margin-bottom:5px;"> | 
|               @:<el-button type="primary" icon="ele-Plus" @@click="openAdd@(@Model.ClassName)" v-auth="'@(@Model.LowerClassName):add'"> 新增 </el-button> | 
|             </el-button-group> | 
|           @:</el-col> | 
|         </el-row> | 
|         *@ | 
|       </el-form> | 
|     </el-card> | 
|     <el-card class="full-table" shadow="hover" style="margin-top: 5px"> | 
|       <el-table | 
|                 ref="tableRef@(@Model.ClassName)" | 
|                 :data="tableData@(@Model.ClassName)" | 
|                 style="width: 100%" | 
|                 v-loading="loading@(@Model.ClassName)" | 
|                 tooltip-effect="light" | 
|                 @if(@pkFieldName != null) | 
|                 { | 
|                 @:row-key="@(@pkFieldName)" | 
|                 } | 
|                 @@sort-change="sortChange@(@Model.ClassName)" | 
|                 border=""> | 
|         <el-table-column type="index" label="序号" width="55" align="center"/> | 
|         @foreach (var column in Model.TableField){ | 
|         if(@column.WhetherTable == "Y"){ | 
|         if(@column.EffectType == "Upload"||@column.EffectType == "fk"||@column.EffectType == "ApiTreeSelect"||@column.EffectType == "Switch"||@column.EffectType == "ConstSelector"){ | 
|         @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip=""> | 
|           @:<template #default="scope"> | 
|             if(@column.EffectType == "Upload"){ | 
|             @:<el-image | 
|             @:v-if="scope.row.@column.LowerPropertyName" | 
|             @:style="width: 60px; height: 60px" | 
|             @::src="scope.row.@column.LowerPropertyName" | 
|             @::lazy="true" | 
|             @::hide-on-click-modal="true" | 
|             @::preview-src-list="[scope.row.@column.LowerPropertyName]" | 
|             @::initial-index="0" | 
|             @:fit="scale-down" | 
|             @:preview-teleported=""/> | 
|             }else if(@column.EffectType == "fk"){ | 
|             @:<span>{{scope.row.@LowerFirstLetter(@column.PropertyName)_@(@column.FkColumnName)}}</span> | 
|             }else if(@column.EffectType == "ApiTreeSelect"){ | 
|             @:<span>{{scope.row.@LowerFirstLetter(@column.PropertyName)@(column.DisplayColumn)}}</span> | 
|             }else if(@column.EffectType == "Switch"){ | 
|             @:<el-tag v-if="scope.row.@(@column.LowerPropertyName)"> 是 </el-tag> | 
|             @:<el-tag type="danger" v-else> 否 </el-tag> | 
|             }else if(@column.EffectType == "ConstSelector"){ | 
|             @:<span>{{codeToName(scope.row.@(@column.LowerPropertyName), '@(@column.DictTypeCode)')}}</span> | 
|             } | 
|             @: | 
|           </template> | 
|           @: | 
|         </el-table-column> | 
|         } | 
|         else if(@column.EffectType == "Select"){ | 
|           @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip="" > | 
|             @:<template #default="scope"> | 
|               @:<el-tag :type="di('@(@column.DictTypeCode)', scope.row.@(@column.LowerPropertyName))?.tagType"> {{di("@(@column.DictTypeCode)", scope.row.@(@column.LowerPropertyName))?.name}} </el-tag> | 
|             @:</template> | 
|           @:</el-table-column> | 
|         } | 
|         else if(@column.EffectType == "EnumSelector"){ | 
|           @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip="" > | 
|             @:<template #default="scope"> | 
|               @:<el-tag>{{ getEnumDesc(scope.row.@column.LowerPropertyName, getEnum@(@column.PropertyName)Data_Index)}}</el-tag> | 
|             @:</template> | 
|           @:</el-table-column> | 
|         } | 
|         else if(@column.EffectType == "DateTimePicker"){ | 
|          @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" width="130" :formatter="formatDate_T_Time" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip="" /> | 
|         } | 
|         else if(@column.EffectType == "DatePicker"){ | 
|          @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" width="80" :formatter="formatDate_T_Date" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip="" /> | 
|         } | 
|         else { | 
|         @:<el-table-column prop="@column.LowerPropertyName" label="@column.ColumnComment" @(column.WhetherSortable == "Y" ? "sortable='custom'" : "") show-overflow-tooltip="" /> | 
|         } | 
|         } | 
|         } | 
|         @if(@Model.PrintType == "custom"){ | 
|         @:<el-table-column label="操作" width="200" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('@(@Model.LowerClassName):update') || auth('@(@Model.LowerClassName):delete')"> | 
|           @:<template #default="scope"> | 
|             @:<el-button icon="ele-Printer" size="small" text="" type="primary" @@click="openPrint@(@Model.ClassName)(scope.row)" v-auth="'@(@Model.LowerClassName):print'"> 打印 </el-button> | 
|         }else{ | 
|         @:<el-table-column label="操作" width="140" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('@(@Model.LowerClassName):update') || auth('@(@Model.LowerClassName):delete')"> | 
|           @:<template #default="scope"> | 
|         } | 
|             <el-button icon="ele-Edit" size="small" text="" type="primary" @@click="openEdit@(@Model.ClassName)(scope.row)" v-auth="'@(@Model.LowerClassName):update'"> 编辑 </el-button> | 
|             <el-button icon="ele-Delete" size="small" text="" type="primary" @@click="del@(@Model.ClassName)(scope.row)" v-auth="'@(@Model.LowerClassName):delete'"> 删除 </el-button> | 
|           </template> | 
|         </el-table-column> | 
|       </el-table> | 
|       <el-pagination | 
|                 v-model:currentPage="tableParams@(@Model.ClassName).page" | 
|                 v-model:page-size="tableParams@(@Model.ClassName).pageSize" | 
|                 :total="tableParams@(@Model.ClassName).total" | 
|                 :page-sizes="[10, 20, 50, 100, 200, 500]" | 
|                 small="" | 
|                 background="" | 
|                 @@size-change="handleSizeChange@(@Model.ClassName)" | 
|                 @@current-change="handleCurrentChange@(@Model.ClassName)" | 
|                 layout="total, sizes, prev, pager, next, jumper" | 
|     /> | 
|       <printDialog@(@Model.ClassName) | 
|         ref="printDialogRef@(@Model.ClassName)" | 
|         :title="print@(@Model.ClassName)Title" | 
|         @@reloadTable="handleQuery@(@Model.ClassName)" /> | 
|       <editDialog@(@Model.ClassName) | 
|         ref="editDialogRef@(@Model.ClassName)" | 
|         :title="edit@(@Model.ClassName)Title" | 
|         @@reloadTable="handleQuery@(@Model.ClassName)" | 
|       /> | 
|       @if(@Model.Buttons.Contains("导入")){   | 
|       @:<importExcelDialog | 
|         @:ref="importExcelDialogRef@(@Model.ClassName)" | 
|         @::title="importExcelTitle@(@Model.ClassName)" | 
|         @:@@parentUploadFun="handleImportExcel@(@Model.ClassName)" | 
|         @:@@parentDownFun="handleDownExcel@(@Model.ClassName)" | 
|       @:/> | 
|       } | 
|     </el-card> | 
|   </div> | 
| </template> | 
|   | 
| <script lang="ts" setup="" name="@(@Model.LowerClassName)"> | 
|   import { ref,onMounted } from "vue"; | 
|   import { ElMessageBox, ElMessage } from "element-plus"; | 
|   import { auth } from '/@@/utils/authFunction'; | 
|   @if(@Model.TableField.Any(x=>x.EffectType == "ConstSelector")){ | 
|   @:import { codeToName, getConstType } from "/@@/utils/constHelper"; | 
|   }  | 
|   import { getDictDataItem as di, getDictDataList as dl } from '/@@/utils/dict-utils'; | 
|   import { formatDate,formatDate_T_Date,formatDate_T_Time,defaultTimeRange } from '/@@/utils/formatTime'; | 
|   @if(@Model.Buttons.Contains("导入")){   | 
|   @:import importExcelDialog from '/@@/components/importExcel/index.vue' //引入导入组件 | 
|   } | 
|   @if(@Model.Buttons.Contains("导出")){   | 
|   @:import { exportPageExcel } from '/@@/utils/exportPageExcel' //引入导出方法 | 
|   } | 
|   | 
|   @if(@Model.PrintType == "custom"){ | 
|   @:// 推荐设置操作 width 为 200 | 
|   @:import { hiprint } from 'vue-plugin-hiprint'; | 
|   @:import { SysPrintApi } from '/@@/api-services/api'; | 
|   @:import { SysPrint } from '/@@/api-services/models'; | 
|   } | 
|   | 
|   import printDialog@(@Model.ClassName) from '/@@/views/system/print/component/hiprint/preview.vue' | 
|   @if(@Model.Buttons.Contains("编辑")){ | 
|   @:import editDialog@(@Model.ClassName) from '/@@/views/main/@(@Model.ModuleName)/@(@Model.LowerClassName)/component/editDialog.vue' | 
|   } | 
|   import { page@(@Model.ClassName), delete@(@Model.ClassName),importExcel@(@Model.ClassName),downloadExcelTemplate@(@Model.ClassName) } from '/@@/api/main/@(@Model.ModuleName)/@(@Model.LowerClassName)'; | 
|   @foreach (var column in Model.QueryWhetherList){ | 
|   if(@column.EffectType == "fk"){ | 
|   @:import { get@(@column.FkEntityName)@(@column.PropertyName)Dropdown } from '/@@/api/main/@(@Model.ModuleName)/@(@Model.LowerClassName)'; | 
|   } | 
|   } | 
|   @if(@Model.QueryWhetherList.Any(x=>x.EffectType == "EnumSelector"  || x.EffectType == "Switch")){ | 
|     @:import { getAPI } from '/@@/utils/axios-utils'; | 
|     @:import { SysEnumApi } from '/@@/api-services/api'; | 
|   @:import commonFunction from '/@@/utils/commonFunction'; | 
|     } | 
|   | 
|   @foreach (var column in Model.QueryWhetherList){ | 
|   if(@column.EffectType == "EnumSelector" || @column.EffectType == "Switch"){ | 
|   @:const getEnum@(@column.PropertyName)Data_Index = ref<any>([]); | 
|   } | 
|   } | 
|   | 
|   @if(@Model.QueryWhetherList.Any(x=>x.EffectType == "EnumSelector")){ | 
|     @:const { getEnumDesc } = commonFunction(); | 
|     } | 
|    | 
|   /***************************************************[@(@Model.BusName)操作]开始***************************************************/ | 
|   @if(haveLikeCdt){ | 
|   @:const showAdvanceQueryUI@(@Model.ClassName) = ref(false); | 
|   }else { | 
|   @:const showAdvanceQueryUI@(@Model.ClassName) = ref(true); | 
|   } | 
|   const tableRef@(@Model.ClassName) = ref(null); | 
|   const printDialogRef@(@Model.ClassName) = ref(); | 
|   const editDialogRef@(@Model.ClassName) = ref(); | 
|   const loading@(@Model.ClassName) = ref(false); | 
|   const disabled_btn@(@Model.ClassName) = ref(false); | 
|   const tableData@(@Model.ClassName) = ref<any>([]); | 
|   const queryParams@(@Model.ClassName) = ref<any>({}); | 
|   const tableParams@(@Model.ClassName) = ref({ | 
|     page: 1, | 
|     pageSize: 10, | 
|     total: 0, | 
|   }); | 
|   | 
|   const print@(@Model.ClassName)Title = ref(""); | 
|   const edit@(@Model.ClassName)Title = ref(""); | 
|   | 
|   // 改变高级查询的控件显示状态 | 
|   const changeAdvanceQueryUI@(@Model.ClassName) = () => { | 
|     showAdvanceQueryUI@(@Model.ClassName).value = !showAdvanceQueryUI@(@Model.ClassName).value; | 
|   } | 
|   | 
|   // 查询@(@Model.BusName) | 
|   const handleQuery@(@Model.ClassName) = async () => { | 
|     loading@(@Model.ClassName).value = true; | 
|     disabled_btn@(@Model.ClassName).value = true; | 
|     var res = await page@(@Model.ClassName)(Object.assign(queryParams@(@Model.ClassName).value, tableParams@(@Model.ClassName).value)); | 
|     if(res.data.type=="success"){ | 
|       tableData@(@Model.ClassName).value = res.data.result?.items ?? []; | 
|       tableParams@(@Model.ClassName).value.total = res.data.result?.total; | 
|     } | 
|     loading@(@Model.ClassName).value = false; | 
|     disabled_btn@(@Model.ClassName).value = false; | 
|   }; | 
|   | 
|   // 重置@(@Model.BusName)查询 | 
|   const reset@(@Model.ClassName) = async () => { | 
|     queryParams@(@Model.ClassName).value = {} | 
|   }; | 
|   | 
|   // @(@Model.BusName)列排序 | 
|   const sortChange@(@Model.ClassName) = async (column: any) => { | 
|     queryParams@(@Model.ClassName).value.field = column.prop; | 
|     queryParams@(@Model.ClassName).value.order = column.order; | 
|     await handleQuery@(@Model.ClassName)(); | 
|   }; | 
|   | 
|   // 打开新增@(@Model.BusName)页面 | 
|   const openAdd@(@Model.ClassName) = () => { | 
|     edit@(@Model.ClassName)Title.value = '添加@(@Model.BusName)'; | 
|     editDialogRef@(@Model.ClassName).value.openDialog(1,{}); | 
|   }; | 
|   | 
|   // 打开打印@(@Model.BusName)页面 | 
|   const openPrint@(@Model.ClassName) = async (row: any) => { | 
|     print@(@Model.ClassName)Title.value = '打印@(@Model.BusName)'; | 
|     @if(@Model.PrintType == "custom"){ | 
|     @:var res = await getAPI(SysPrintApi).apiSysPrintPrintNameGet('@Model.PrintName'); | 
|       @:var printTemplate = res.data.result as SysPrint; | 
|     @:var template = JSON.parse(printTemplate.template); | 
|     @:row['printDate'] = formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS') | 
|     @:printDialogRef@(@Model.ClassName).value.showDialog(new hiprint.PrintTemplate({template: template}), row, template.panels[0].width); | 
|     } | 
|   } | 
|    | 
|   // 打开编辑@(@Model.BusName)页面 | 
|   const openEdit@(@Model.ClassName) = (row: any) => { | 
|     edit@(@Model.ClassName)Title.value = '编辑@(@Model.BusName)'; | 
|     editDialogRef@(@Model.ClassName).value.openDialog(2,row); | 
|   }; | 
|   | 
|   // 删除@(@Model.BusName) | 
|   const del@(@Model.ClassName) = (row: any) => { | 
|     ElMessageBox.confirm(`确定要删除吗?`, "提示", { | 
|     confirmButtonText: "确定", | 
|     cancelButtonText: "取消", | 
|     type: "warning", | 
|   }) | 
|   .then(async () => { | 
|     loading@(@Model.ClassName).value = true; | 
|     var ret = await delete@(@Model.ClassName)(row); | 
|     if(ret.data.type=="success"){ | 
|         ElMessage.success("删除成功"); | 
|     } | 
|     loading@(@Model.ClassName).value = false; | 
|     handleQuery@(@Model.ClassName)(); | 
|   }) | 
|   .catch(() => {}); | 
|   }; | 
|   | 
|   // 改变@(@Model.BusName)页面容量 | 
|   const handleSizeChange@(@Model.ClassName) = (val: number) => { | 
|     tableParams@(@Model.ClassName).value.pageSize = val; | 
|     handleQuery@(@Model.ClassName)(); | 
|   }; | 
|   | 
|   // 改变@(@Model.BusName)页码序号 | 
|   const handleCurrentChange@(@Model.ClassName) = (val: number) => { | 
|     tableParams@(@Model.ClassName).value.page = val; | 
|     handleQuery@(@Model.ClassName)(); | 
|   }; | 
|   | 
|   @foreach (var column in Model.QueryWhetherList){ | 
|   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(); | 
|     @:@LowerFirstLetter(@column.FkEntityName)@(@column.PropertyName)DropdownList.value = list.data.result ?? []; | 
|   @:}; | 
|   @:get@(@column.FkEntityName)@(@column.PropertyName)DropdownList(); | 
|   @: | 
|   } | 
| } | 
| /***************************************************[@(@Model.BusName)操作]结束***************************************************/ | 
| @if(@Model.Buttons.Contains("导入")){   | 
| @:/***************************************************[@(@Model.BusName)导入]开始***************************************************/ | 
| @:const importExcelTitle@(@Model.ClassName) = ref(""); | 
| @:const importExcelDialogRef@(@Model.ClassName) = ref(); | 
| @://打开导入界面 | 
| @:const openImportExcel@(@Model.ClassName) = () => { | 
|     @:importExcelTitle@(@Model.ClassName).value = '导入@(@Model.BusName)'; | 
|     @:importExcelDialogRef@(@Model.ClassName).value.openDialog({}); | 
| @:}; | 
| @://导入数据 | 
| @:const handleImportExcel@(@Model.ClassName) = async (formData:Blob) => { | 
|    @:var result = await importExcel@(@Model.ClassName)(formData); | 
|    @:importExcelDialogRef@(@Model.ClassName).value.callBackUploadFun(result.data);//回调导入子页面的方法 | 
|    @:if(result.data.type=="success"){ | 
|     @:handleQuery@(@Model.ClassName)(); | 
|    @:} | 
| @:}; | 
| @://下载导入模板 | 
| @:const handleDownExcel@(@Model.ClassName) = async () => { | 
|    @:var result = await downloadExcelTemplate@(@Model.ClassName)(); | 
|    @:importExcelDialogRef@(@Model.ClassName).value.callBackDownFun(result);//回调导入子页面的方法 | 
| @:}; | 
| @:/***************************************************[@(@Model.BusName)导入]结束***************************************************/ | 
| } | 
| @if(@Model.Buttons.Contains("导出")){   | 
| @:/***************************************************[@(@Model.BusName)导出]开始***************************************************/ | 
| @://定义当前页面的方法组 | 
| @:const functionMap@(@Model.ClassName) = { | 
|      @foreach (var column in Model.QueryWhetherList){ | 
|   if(@column.EffectType == "EnumSelector" || @column.EffectType == "Switch"){ | 
|       @:getEnum@(@column.PropertyName)Data_Index, | 
|   }} | 
|       @:formatDate_T_Date, | 
|       @:formatDate_T_Time | 
| @:}; | 
| @://点击导出按钮 | 
| @:const handleExportExcel@(@Model.ClassName) = async (formData:Blob) => { | 
|    | 
|     @:loading@(@Model.ClassName).value = true; | 
|     @:disabled_btn@(@Model.ClassName).value = true; | 
|      | 
|     @:var new_tableParams@(@Model.ClassName)=JSON.parse(JSON.stringify(tableParams@(@Model.ClassName).value)); | 
|     @:new_tableParams@(@Model.ClassName).page = 1; | 
|     @:new_tableParams@(@Model.ClassName).pageSize = 100000; | 
|     @:var res = await page@(@Model.ClassName)(Object.assign(queryParams@(@Model.ClassName).value, new_tableParams@(@Model.ClassName))); | 
|     @:if(res.data.type=="success"){ | 
|       @:exportExcel@(@Model.ClassName)(res.data.result?.items ?? []); | 
|     @:} | 
|     @:loading@(@Model.ClassName).value = false; | 
|     @:disabled_btn@(@Model.ClassName).value = false; | 
| @:}; | 
| @://导出 | 
| @:const exportExcel@(@Model.ClassName)  = async (exportDataList:Array) => { | 
|   @:exportPageExcel(exportDataList, tableRef@(@Model.ClassName),"@(@Model.BusName)",functionMap@(@Model.ClassName)); | 
| @:}; | 
| @:/***************************************************[@(@Model.BusName)导出]结束***************************************************/ | 
| } | 
|   // @(@Model.BusName)页面加载时 | 
|   onMounted(async () => { | 
|   @foreach (var column in Model.QueryWhetherList){ | 
|   if(@column.EffectType == "EnumSelector"){ | 
|     @:getEnum@(@column.PropertyName)Data_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('@(@column.DictTypeCode)')).data.result ?? []; | 
|   }else  if(@column.EffectType == "Switch"){ | 
|     @:getEnum@(@column.PropertyName)Data_Index.value = (await getAPI(SysEnumApi).apiSysEnumEnumDataListGet('TrueFalseEnum')).data.result ?? []; | 
|   }} | 
|   }); | 
|   | 
|   handleQuery@(@Model.ClassName)(); | 
| </script> | 
| <style scoped> | 
| :deep(.el-input), | 
| :deep(.el-select), | 
| :deep(.el-input-number) { | 
|     width: 100%; | 
| } | 
| </style> | 
|   | 
| @{ | 
| string LowerFirstLetter(string text) | 
| { | 
| return text.ToString()[..1].ToLower() + text[1..]; // 首字母小写 | 
| } | 
| } |