全局表格添加列配置功能

This commit is contained in:
guanj
2026-07-09 13:54:18 +08:00
parent 1a69be62a0
commit 855c569535
116 changed files with 1078 additions and 9806 deletions

View File

@@ -1,7 +1,7 @@
<template>
<!-- 新增 -->
<el-dialog draggable title="详情" v-model="dialogVisible" width="1200px">
<TableHeader datePicker showExport :showReset="false">
<TableHeader datePicker showExport :showReset="false" >
<template v-slot:select>
<el-form-item label="筛选数据">
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入筛选数据" clearable maxlength="32" show-word-limit/>

View File

@@ -1,6 +1,6 @@
<template>
<div class="default-main">
<TableHeader datePicker showExport>
<TableHeader datePicker showExport showCustomColumn>
<template v-slot:select>
<el-form-item label="筛选数据">
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入筛选数据" clearable maxlength="32" show-word-limit/>

View File

@@ -1,6 +1,6 @@
<template>
<div class="default-main">
<TableHeader :showReset="false" showExport>
<TableHeader :showReset="false" showExport showCustomColumn>
<template #select>
<el-form-item label="筛选数据">
<el-input

View File

@@ -30,7 +30,7 @@
value-format="YYYY-MM-DD"
/>
</el-form-item>
<el-form-item class="uploadFile" for="-" label="设备检测报告:" prop="checkUrl">
<el-form-item class="uploadFile" for="-" label="设备检测报告:">
<el-upload
v-model:file-list="uploadForm.checkUrl"
ref="uploadRef"
@@ -64,7 +64,7 @@
</template>
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { ref, reactive, nextTick } from 'vue'
import type { UploadFile } from 'element-plus'
import { ElMessage } from 'element-plus'
import { uploadFile } from '@/api/system-boot/file'
@@ -110,7 +110,6 @@ const uploadRules = reactive({
const submitUploadReport = async () => {
await uploadFormRef.value?.validate(async (valid: boolean) => {
if (!valid) return
if (!uploadForm.checkUrl.length) return ElMessage.warning('请先上传检测报告文件')
submitLoading.value = true
try {
const params = {
@@ -134,17 +133,29 @@ const submitUploadReport = async () => {
})
}
const getFileName = (filePath: string) => {
if (!filePath) return ''
const parts = filePath.split('/')
return parts[parts.length - 1] || filePath.replace(/^.*?\/(.*?)\//, '')
}
const openUpload = (row: any) => {
console.log("🚀 ~ openUpload ~ row:", row)
uploadForm.thisCheckTime = ''
uploadForm.nextCheckTime = ''
uploadForm.checkUrl = []
uploadForm.devId = row.devId
uploadForm.objId = row.objId
checkUrlFile.value = ''
uploadFormRef.value?.clearValidate()
uploadForm.thisCheckTime = row.thisCheckTime || ''
uploadForm.nextCheckTime = row.nextCheckTime || ''
if (row.checkUrl) {
checkUrlFile.value = row.checkUrl
uploadForm.checkUrl = [{ name: getFileName(row.checkUrl), url: row.checkUrl }]
} else {
checkUrlFile.value = ''
uploadForm.checkUrl = []
}
dialogMode.value = 'upload'
dialogShow.value = true
nextTick(() => {
uploadFormRef.value?.clearValidate()
})
}
const openDetail = (id: string) => {

View File

@@ -1,6 +1,6 @@
<template>
<div class="default-main">
<TableHeader ref="TableHeaderRef">
<TableHeader ref="TableHeaderRef" showCustomColumn>
<template #select>
<el-form-item label="地市">
<el-select v-model="tableStore.table.params.city" clearable placeholder="请选择地市">

View File

@@ -41,7 +41,7 @@
</el-col>
<el-col :span="19">
<div class="mt10">
<TableHeader showExport :showSearch="false" ref="TableHeaderRef">
<TableHeader showExport :showSearch="false" ref="TableHeaderRef" showCustomColumn>
<template v-slot:select>
<span style="font-size: 14px; line-height: 40px; color: red;">
所选变电站:

View File

@@ -1,6 +1,6 @@
<template>
<div class="default-main">
<TableHeader ref="TableHeaderRef" showExport>
<TableHeader ref="TableHeaderRef" showExport showCustomColumn>
<template #select>
<el-form-item label="项目名称">
<el-input