全局表格添加列配置功能
This commit is contained in:
@@ -1,119 +1,119 @@
|
||||
<template>
|
||||
<div class="dictiontary-list-detail child-router">
|
||||
<TableHeader :showSearch="false">
|
||||
<template #select>
|
||||
<el-form-item label="">
|
||||
<span class="text-large font-600 mr-3">{{ props.timePopUpBox.time }}</span>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-radio-group v-model="radio2" @change="tableStore.index()">
|
||||
<el-radio-button label="基础数据" value="1" />
|
||||
<el-radio-button label="谐波电压" value="2" />
|
||||
<el-radio-button label="谐波电流" value="3" />
|
||||
<el-radio-button label="间谐波电压" value="4" />
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Back" @click="$emit('close')">返回</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" isGroup />
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide } from 'vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { dictDataDelete } from '@/api/system-boot/dicData'
|
||||
|
||||
defineOptions({
|
||||
name: 'setting/dictionary/list/detail'
|
||||
})
|
||||
const radio2 = ref('1')
|
||||
interface Props {
|
||||
timePopUpBox: anyObj
|
||||
}
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
timePopUpBox: () => {
|
||||
return {}
|
||||
}
|
||||
})
|
||||
const popupEditRef = ref()
|
||||
const tableStore = new TableStore({
|
||||
url: '/harmonic-boot/powerStatistics/getTargetByTime',
|
||||
method: 'POST',
|
||||
showPage: false,
|
||||
column: [
|
||||
{
|
||||
title: '指标',
|
||||
field: 'anotherName',
|
||||
minWidth: '120px',
|
||||
formatter: row => {
|
||||
row.column.title =
|
||||
radio2.value == '1' ? '指标' : (row.column.title = radio2.value == '4' ? '间谐波次数' : '谐波次数')
|
||||
return row.cellValue
|
||||
}
|
||||
},
|
||||
{ title: '单位', field: 'unit' },
|
||||
{
|
||||
title: '最小值',
|
||||
field: 'min',
|
||||
children: [
|
||||
{
|
||||
title: 'A',
|
||||
field: 'minphaseA',
|
||||
formatter: row => formatter(row)
|
||||
},
|
||||
{ title: 'B', field: 'minphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'minphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '最大值',
|
||||
field: 'max',
|
||||
children: [
|
||||
{ title: 'A', field: 'maxphaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'maxphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'maxphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '平均值',
|
||||
field: 'avg',
|
||||
children: [
|
||||
{ title: 'A', field: 'avgphaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'avgphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'avgphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'cp95值',
|
||||
field: 'cp95',
|
||||
children: [
|
||||
{ title: 'A', field: 'cp95PhaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'cp95PhaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'cp95PhaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
}
|
||||
],
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.field = props.timePopUpBox.field
|
||||
tableStore.table.params.lineId = props.timePopUpBox.lineId
|
||||
tableStore.table.params.searchBeginTime = props.timePopUpBox.time
|
||||
tableStore.table.params.searchEndTime = props.timePopUpBox.time
|
||||
tableStore.table.params.statisticalId = radio2.value
|
||||
},
|
||||
loadCallback: () => {}
|
||||
})
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
const formatter = (row: any) => {
|
||||
return row.cellValue || '/'
|
||||
}
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
</script>
|
||||
<template>
|
||||
<div class="dictiontary-list-detail child-router">
|
||||
<TableHeader :showSearch="false" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="">
|
||||
<span class="text-large font-600 mr-3">{{ props.timePopUpBox.time }}</span>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-radio-group v-model="radio2" @change="tableStore.index()">
|
||||
<el-radio-button label="基础数据" value="1" />
|
||||
<el-radio-button label="谐波电压" value="2" />
|
||||
<el-radio-button label="谐波电流" value="3" />
|
||||
<el-radio-button label="间谐波电压" value="4" />
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Back" @click="$emit('close')">返回</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" isGroup />
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide } from 'vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { dictDataDelete } from '@/api/system-boot/dicData'
|
||||
|
||||
defineOptions({
|
||||
name: 'setting/dictionary/list/detail'
|
||||
})
|
||||
const radio2 = ref('1')
|
||||
interface Props {
|
||||
timePopUpBox: anyObj
|
||||
}
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
timePopUpBox: () => {
|
||||
return {}
|
||||
}
|
||||
})
|
||||
const popupEditRef = ref()
|
||||
const tableStore = new TableStore({
|
||||
url: '/harmonic-boot/powerStatistics/getTargetByTime',
|
||||
method: 'POST',
|
||||
showPage: false,
|
||||
column: [
|
||||
{
|
||||
title: '指标',
|
||||
field: 'anotherName',
|
||||
minWidth: '120px',
|
||||
formatter: row => {
|
||||
row.column.title =
|
||||
radio2.value == '1' ? '指标' : (row.column.title = radio2.value == '4' ? '间谐波次数' : '谐波次数')
|
||||
return row.cellValue
|
||||
}
|
||||
},
|
||||
{ title: '单位', field: 'unit' },
|
||||
{
|
||||
title: '最小值',
|
||||
field: 'min',
|
||||
children: [
|
||||
{
|
||||
title: 'A',
|
||||
field: 'minphaseA',
|
||||
formatter: row => formatter(row)
|
||||
},
|
||||
{ title: 'B', field: 'minphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'minphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '最大值',
|
||||
field: 'max',
|
||||
children: [
|
||||
{ title: 'A', field: 'maxphaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'maxphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'maxphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '平均值',
|
||||
field: 'avg',
|
||||
children: [
|
||||
{ title: 'A', field: 'avgphaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'avgphaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'avgphaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'cp95值',
|
||||
field: 'cp95',
|
||||
children: [
|
||||
{ title: 'A', field: 'cp95PhaseA', formatter: row => formatter(row) },
|
||||
{ title: 'B', field: 'cp95PhaseB', formatter: row => formatter(row) },
|
||||
{ title: 'C', field: 'cp95PhaseC', formatter: row => formatter(row) }
|
||||
]
|
||||
}
|
||||
],
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.field = props.timePopUpBox.field
|
||||
tableStore.table.params.lineId = props.timePopUpBox.lineId
|
||||
tableStore.table.params.searchBeginTime = props.timePopUpBox.time
|
||||
tableStore.table.params.searchEndTime = props.timePopUpBox.time
|
||||
tableStore.table.params.statisticalId = radio2.value
|
||||
},
|
||||
loadCallback: () => {}
|
||||
})
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
const formatter = (row: any) => {
|
||||
return row.cellValue || '/'
|
||||
}
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
</script>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader ref="TableHeaderRef">
|
||||
<TableHeader ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="新能源场站名称">
|
||||
<el-input v-model="tableStore.table.params.name" clearable placeholder="输入关键字筛选" />
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="flg">
|
||||
<TableHeader datePicker showExport ref="TableHeaderRef">
|
||||
<TableHeader datePicker showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form :inline="true" label-width="90px" class="">
|
||||
<el-form-item label="用户名:">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="addedShow">
|
||||
<TableHeader datePicker showExport ref="TableHeaderRef">
|
||||
<TableHeader datePicker showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="评估类型">
|
||||
<el-select
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div>
|
||||
<TableHeader :showTimeAll="false" showExport ref="TableHeaderRef">
|
||||
<TableHeader :showTimeAll="false" showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="用户类型">
|
||||
<el-select
|
||||
|
||||
@@ -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/>
|
||||
|
||||
@@ -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/>
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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) => {
|
||||
|
||||
@@ -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="请选择地市">
|
||||
|
||||
@@ -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;">
|
||||
所选变电站:
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker>
|
||||
<TableHeader date-picker showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<!-- <el-form-item label="用户名">
|
||||
<el-select v-model="value" class="m-2" placeholder="Select" size="large">
|
||||
@@ -33,14 +33,22 @@ const tableStore = new TableStore({
|
||||
url: '/system-boot/audit/getAuditLog',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '操作时间', field: 'time', align: 'center', width: 200 },
|
||||
{ title: '操作人员', field: 'userName', align: 'center', width: 120 },
|
||||
{ title: '操作类型', field: 'operate', align: 'center', width: 220 },
|
||||
{ title: '事件描述', field: 'describe', align: 'center', showOverflow: true,minWidth: 200 },
|
||||
{ title: '事件类型', field: 'type', align: 'center', width: 160 },
|
||||
{ title: '操作结果', field: 'type', align: 'center', width: 100 },
|
||||
{ title: '操作IP', field: 'ip', align: 'center', width: 120 },
|
||||
{ title: '事件等级', field: 'level', align: 'center', width: 100 }
|
||||
{
|
||||
title: '序号',
|
||||
field: 'index',
|
||||
minWidth: 80,
|
||||
formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ title: '操作时间', field: 'time', align: 'center', minWidth: 200 },
|
||||
{ title: '操作人员', field: 'userName', align: 'center', minWidth: 120 },
|
||||
{ title: '操作类型', field: 'operate', align: 'center', minWidth: 220 },
|
||||
{ title: '事件描述', field: 'describe', align: 'center', minWidth: 200 },
|
||||
{ title: '事件类型', field: 'type', align: 'center', minWidth: 160 },
|
||||
{ title: '操作结果', field: 'type', align: 'center', minWidth: 100 },
|
||||
{ title: '操作IP', field: 'ip', align: 'center', minWidth: 120 },
|
||||
{ title: '事件等级', field: 'level', align: 'center', minWidth: 100 }
|
||||
]
|
||||
})
|
||||
tableStore.table.params.loginName = ''
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="view">
|
||||
<TableHeader datePicker area showExport>
|
||||
<TableHeader datePicker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="default-main online">
|
||||
|
||||
<div class="online_header">
|
||||
<TableHeader date-picker ref="tableHeaderRef">
|
||||
<TableHeader date-picker ref="tableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型">
|
||||
<el-select v-model="formData.statisticalType" placeholder="请选择统计类型" value-key="id"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area showExport>
|
||||
<TableHeader date-picker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型" v-if="false">
|
||||
<el-select
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area showExport>
|
||||
<TableHeader date-picker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型:" v-if="false">
|
||||
<el-select
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
|
||||
<TableHeader date-picker area showExport>
|
||||
<TableHeader date-picker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="统计类型:">
|
||||
<el-select v-model="tableStore.table.params.statisticalType" placeholder="请选择统计类型" value-key="id">
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
用采数据列表
|
||||
<back-component />
|
||||
</div>
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入关键字" maxlength="32" show-word-limit/>
|
||||
@@ -63,6 +63,10 @@ const tableStore = new TableStore({
|
||||
method: 'POST',
|
||||
publicHeight: 52,
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ title: '表名', field: 'name' },
|
||||
{ title: '起始时间', field: 'startTime' },
|
||||
{ title: '截止时间', field: 'endTime' },
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<el-dialog v-model="dialogVisible" draggable title="完整性不足详情" width="1000">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入关键字" />
|
||||
@@ -27,6 +27,10 @@ const tableStore = new TableStore({
|
||||
method: 'POST',
|
||||
publicHeight: 547,
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ title: '数据名', field: 'name' },
|
||||
{ title: '用户名', field: 'userName' },
|
||||
{ title: '测量点局号', field: 'lineNo' },
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<!-- 模版 -->
|
||||
<TableHeader datePicker showExport :showReset="false" ref="TableHeaderRef">
|
||||
<TableHeader datePicker showExport :showReset="false" ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="筛选数据">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入关键字" />
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
|
||||
<TableHeader datePicker area showExport>
|
||||
<TableHeader datePicker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="统计类型:">
|
||||
<el-select v-model="tableStore.table.params.statisticalType" placeholder="请选择统计类型" value-key="id">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader datePicker area ref="TableHeaderRef" showExport>
|
||||
<TableHeader datePicker area ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型">
|
||||
<el-select
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader datePicker area showExport>
|
||||
<TableHeader datePicker area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型">
|
||||
<el-select
|
||||
|
||||
@@ -339,21 +339,19 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -371,34 +369,30 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#57bc6e' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#57bc6e' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'pictorialBar',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: '#fff'
|
||||
}
|
||||
color: '#fff'
|
||||
},
|
||||
symbolRepeat: 50,
|
||||
// symbolMargin: 300,
|
||||
@@ -419,11 +413,9 @@ const echart = () => {
|
||||
barWidth: 18,
|
||||
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'transparent',
|
||||
barBorderColor: 'rgb(148,217,249)',
|
||||
barBorderWidth: 1
|
||||
}
|
||||
color: 'transparent',
|
||||
borderColor: 'rgb(148,217,249)',
|
||||
borderWidth: 1
|
||||
},
|
||||
z: 2
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input v-model="tableStore.table.params.filterName" @keyup="searchEvent" placeholder="输入关键字筛选" />
|
||||
|
||||
@@ -346,21 +346,19 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -372,34 +370,30 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#57bc6e' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#57bc6e' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'pictorialBar',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: '#fff'
|
||||
}
|
||||
color: '#fff'
|
||||
},
|
||||
symbolRepeat: 50,
|
||||
// symbolMargin: 300,
|
||||
@@ -420,11 +414,9 @@ const echart = () => {
|
||||
barWidth: 18,
|
||||
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'transparent',
|
||||
barBorderColor: 'rgb(148,217,249)',
|
||||
barBorderWidth: 1
|
||||
}
|
||||
color: 'transparent',
|
||||
borderColor: 'rgb(148,217,249)',
|
||||
borderWidth: 1
|
||||
},
|
||||
z: 2
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader datePicker ref="TableHeaderRef">
|
||||
<TableHeader datePicker ref="TableHeaderRef" >
|
||||
<template v-slot:select>
|
||||
<el-form-item label="超标指标">
|
||||
<el-select
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--业务用户管理界面-->
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader datePicker area showExport>
|
||||
<TableHeader datePicker area showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader area ref="TableHeaderRef" showExport>
|
||||
<TableHeader area ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="运行状态">
|
||||
<el-select filterable multiple collapse-tags v-model="tableStore.table.params.runFlag" clearable
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader area ref="TableHeaderRef" showExport>
|
||||
<TableHeader area ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="统计类型:">
|
||||
<el-select v-model="tableStore.table.params.statisticalType" placeholder="请选择统计类型" value-key="id">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="addedShow">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input v-model="tableStore.table.params.name" clearable placeholder="筛选数据" />
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mt10">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport>
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="导线型号">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入导线型号" show-word-limit
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mt10">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport>
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="谐波源名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入谐波源名称" show-word-limit
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mt10">
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport>
|
||||
<TableHeader :showReset="false" ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="变压器型号">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable placeholder="请输入变压器型号" show-word-limit
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef" area showExport>
|
||||
<TableHeader ref="TableHeaderRef" area showExport showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="所在地市">
|
||||
<el-select v-model="tableStore.table.params.deptId" clearable placeholder="请选择所在地市">
|
||||
|
||||
@@ -288,21 +288,19 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 1,
|
||||
color: '#57bc6e' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -314,34 +312,30 @@ const echart = () => {
|
||||
z: 0,
|
||||
zlevel: 0,
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#FF9100' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
color: {
|
||||
type: 'linear',
|
||||
x: 0,
|
||||
y: 0,
|
||||
x2: 1,
|
||||
y2: 0,
|
||||
colorStops: [
|
||||
{
|
||||
offset: 0,
|
||||
color: '#FF9100' // 0% 处的颜色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: '#FF9100' // 100% 处的颜色
|
||||
}
|
||||
],
|
||||
global: false // 缺省为 false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'pictorialBar',
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: '#fff'
|
||||
}
|
||||
color: '#fff'
|
||||
},
|
||||
symbolRepeat: 50,
|
||||
// symbolMargin: 300,
|
||||
@@ -362,11 +356,9 @@ const echart = () => {
|
||||
barWidth: 18,
|
||||
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: 'transparent',
|
||||
barBorderColor: 'rgb(148,217,249)',
|
||||
barBorderWidth: 1
|
||||
}
|
||||
color: 'transparent',
|
||||
borderColor: 'rgb(148,217,249)',
|
||||
borderWidth: 1
|
||||
},
|
||||
z: 2
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="问题来源">
|
||||
<el-select v-model="tableStore.table.params.problemSources" clearable placeholder="请选择问题来源">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="问题来源">
|
||||
<el-form-item label="问题来源" >
|
||||
<el-select v-model="tableStore.table.params.problemSources" clearable placeholder="请选择问题来源">
|
||||
<el-option
|
||||
v-for="item in problemData"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- 用户投诉 -->
|
||||
<!-- 2 有新增 发起 预警单 -->
|
||||
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="是否解决">
|
||||
<el-select v-model="tableStore.table.params.dealState" clearable placeholder="请选择是否解决">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<!-- <div>1 监测点信息 发起预告警单 </div> -->
|
||||
|
||||
<TableHeader datePicker nextFlag theCurrentTime ref="TableHeaderRef" showExport>
|
||||
<TableHeader datePicker nextFlag theCurrentTime ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="区域">
|
||||
<Area ref="areaRef" v-model="tableStore.table.params.deptId" @changeValue="changeArea" />
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<!-- <div> 普测结果 发起预告警单</div> -->
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="计划名称">
|
||||
<el-input
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!---试运行列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,186 +1,186 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<template #select>
|
||||
<el-form-item label="是否上传">
|
||||
<el-select v-model="tableStore.table.params.isFileUpload" placeholder="请选择是否上传">
|
||||
<el-option label="未上传" value="0" />
|
||||
<el-option label="已上传" value="1" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Upload" type="primary">上传</el-button>
|
||||
<el-button icon="el-icon-Download" type="primary">导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" />
|
||||
<!-- 上传弹窗 -->
|
||||
<el-dialog draggable title="上传" v-model="addUpload" width="500px">
|
||||
<el-upload
|
||||
multiple
|
||||
action=""
|
||||
:auto-upload="false"
|
||||
:limit="999"
|
||||
:file-list="fileList"
|
||||
:on-remove="handleRemove"
|
||||
:on-change="chooseBatch"
|
||||
ref="upload"
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-Upload">选择文件</el-button>
|
||||
</el-upload>
|
||||
<template #footer>
|
||||
<el-button type="primary" @click="BatchUpload">保存</el-button>
|
||||
<el-button @click="handleClose">取消</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
<!-- 文件查看 -->
|
||||
<el-dialog draggable title="文件查看" v-model="dataShow" width="600px">
|
||||
<vxe-table height="400" auto-resize :data="uploadList" v-bind="defaultAttribute">
|
||||
<vxe-column field="minFileName" title="文件名称"></vxe-column>
|
||||
|
||||
<vxe-column title="操作" width="100">
|
||||
<template #default="{ row }">
|
||||
<el-button type="primary" size="small" link @click="downLownFn(row)">下载</el-button>
|
||||
<!-- <el-popconfirm title="是否确认删除策略!" @confirm="details(row)">
|
||||
<template #reference>
|
||||
<el-button type="danger" link>删除</el-button>
|
||||
</template>
|
||||
</el-popconfirm> -->
|
||||
</template>
|
||||
</vxe-column>
|
||||
</vxe-table>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide, nextTick } from 'vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { MultipartFile, surveyResultDownload } from '@/api/process-boot/generalTest'
|
||||
|
||||
const dictData = useDictData()
|
||||
|
||||
const addUpload = ref(false)
|
||||
const dataShow = ref(false)
|
||||
const TableHeaderRef = ref()
|
||||
const fileList: any = ref([])
|
||||
const uploadList: any = ref([])
|
||||
|
||||
const planId = ref('')
|
||||
const tableStore = new TableStore({
|
||||
url: '/process-boot/rGeneralSurveyPlan/queryPlanResult',
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
// { width: '60', type: 'checkbox' },
|
||||
{ field: 'orgName', title: '责任单位' },
|
||||
{ field: 'planNo', title: '普测计划编号' },
|
||||
{ field: 'planName', title: '普测计划名称' },
|
||||
{ field: 'planStartTime', title: '开始时间' },
|
||||
{ field: 'planEndTime', title: '结束时间' },
|
||||
{ field: 'subCount', title: '普测变电站数量' },
|
||||
{
|
||||
field: 'isFileUpload',
|
||||
title: '是否上传',
|
||||
render: 'tag',
|
||||
custom: {
|
||||
0: 'warning',
|
||||
1: 'success'
|
||||
},
|
||||
replaceValue: {
|
||||
0: '否',
|
||||
1: '是'
|
||||
}
|
||||
},
|
||||
{ field: 'fileCount', title: '上传文件数量' },
|
||||
{ field: 'uploadTime', title: '上传时间' },
|
||||
{
|
||||
title: '操作文件',
|
||||
width: '180',
|
||||
render: 'buttons',
|
||||
fixed: 'right',
|
||||
buttons: [
|
||||
{
|
||||
title: '上传',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-Plus',
|
||||
render: 'basicButton',
|
||||
click: row => {
|
||||
planId.value = row.planNo
|
||||
addUpload.value = true
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '查看',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-EditPen',
|
||||
disabled: row => {
|
||||
return row.isFileUpload !== 1
|
||||
},
|
||||
render: 'basicButton',
|
||||
click: row => {
|
||||
surveyResultDownload({ planNo: row.planNo }).then(res => {
|
||||
uploadList.value = res.data
|
||||
dataShow.value = true
|
||||
})
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.planStartTime = tableStore.table.params.searchBeginTime
|
||||
tableStore.table.params.planEndTime = tableStore.table.params.searchEndTime
|
||||
tableStore.table.params.orgNo = tableStore.table.params.deptIndex
|
||||
tableStore.table.params.currentPage = tableStore.table.params.pageNum
|
||||
}
|
||||
})
|
||||
|
||||
tableStore.table.params.isFileUpload = ''
|
||||
|
||||
const handleRemove = (e: any) => {
|
||||
fileList.value = fileList.value.filter((item: any) => item.uid !== e.uid)
|
||||
}
|
||||
const chooseBatch = (e: any) => {
|
||||
fileList.value.push(e)
|
||||
}
|
||||
|
||||
// 上传
|
||||
const BatchUpload = () => {
|
||||
let form = new FormData()
|
||||
form.append('planId', planId.value)
|
||||
fileList.value.forEach((item: any) => {
|
||||
form.append('file', item.raw)
|
||||
})
|
||||
MultipartFile(form).then((res: any) => {
|
||||
ElMessage.success('上传成功!')
|
||||
handleClose()
|
||||
tableStore.index()
|
||||
})
|
||||
}
|
||||
const handleClose = () => {
|
||||
fileList.value = []
|
||||
addUpload.value = false
|
||||
}
|
||||
// 下载
|
||||
const downLownFn = async (row: any) => {
|
||||
let response = await fetch(row.minFileUrl)
|
||||
let blob = await response.blob()
|
||||
let a = document.createElement('a')
|
||||
a.href = window.URL.createObjectURL(blob)
|
||||
a.download = row.minFileName
|
||||
a.click()
|
||||
a.remove()
|
||||
}
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="是否上传">
|
||||
<el-select v-model="tableStore.table.params.isFileUpload" placeholder="请选择是否上传">
|
||||
<el-option label="未上传" value="0" />
|
||||
<el-option label="已上传" value="1" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Upload" type="primary">上传</el-button>
|
||||
<el-button icon="el-icon-Download" type="primary">导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" />
|
||||
<!-- 上传弹窗 -->
|
||||
<el-dialog draggable title="上传" v-model="addUpload" width="500px">
|
||||
<el-upload
|
||||
multiple
|
||||
action=""
|
||||
:auto-upload="false"
|
||||
:limit="999"
|
||||
:file-list="fileList"
|
||||
:on-remove="handleRemove"
|
||||
:on-change="chooseBatch"
|
||||
ref="upload"
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-Upload">选择文件</el-button>
|
||||
</el-upload>
|
||||
<template #footer>
|
||||
<el-button type="primary" @click="BatchUpload">保存</el-button>
|
||||
<el-button @click="handleClose">取消</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
<!-- 文件查看 -->
|
||||
<el-dialog draggable title="文件查看" v-model="dataShow" width="600px">
|
||||
<vxe-table height="400" auto-resize :data="uploadList" v-bind="defaultAttribute">
|
||||
<vxe-column field="minFileName" title="文件名称"></vxe-column>
|
||||
|
||||
<vxe-column title="操作" width="100">
|
||||
<template #default="{ row }">
|
||||
<el-button type="primary" size="small" link @click="downLownFn(row)">下载</el-button>
|
||||
<!-- <el-popconfirm title="是否确认删除策略!" @confirm="details(row)">
|
||||
<template #reference>
|
||||
<el-button type="danger" link>删除</el-button>
|
||||
</template>
|
||||
</el-popconfirm> -->
|
||||
</template>
|
||||
</vxe-column>
|
||||
</vxe-table>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide, nextTick } from 'vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { MultipartFile, surveyResultDownload } from '@/api/process-boot/generalTest'
|
||||
|
||||
const dictData = useDictData()
|
||||
|
||||
const addUpload = ref(false)
|
||||
const dataShow = ref(false)
|
||||
const TableHeaderRef = ref()
|
||||
const fileList: any = ref([])
|
||||
const uploadList: any = ref([])
|
||||
|
||||
const planId = ref('')
|
||||
const tableStore = new TableStore({
|
||||
url: '/process-boot/rGeneralSurveyPlan/queryPlanResult',
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
// { width: '60', type: 'checkbox' },
|
||||
{ field: 'orgName', title: '责任单位' },
|
||||
{ field: 'planNo', title: '普测计划编号' },
|
||||
{ field: 'planName', title: '普测计划名称' },
|
||||
{ field: 'planStartTime', title: '开始时间' },
|
||||
{ field: 'planEndTime', title: '结束时间' },
|
||||
{ field: 'subCount', title: '普测变电站数量' },
|
||||
{
|
||||
field: 'isFileUpload',
|
||||
title: '是否上传',
|
||||
render: 'tag',
|
||||
custom: {
|
||||
0: 'warning',
|
||||
1: 'success'
|
||||
},
|
||||
replaceValue: {
|
||||
0: '否',
|
||||
1: '是'
|
||||
}
|
||||
},
|
||||
{ field: 'fileCount', title: '上传文件数量' },
|
||||
{ field: 'uploadTime', title: '上传时间' },
|
||||
{
|
||||
title: '操作文件',
|
||||
width: '180',
|
||||
render: 'buttons',
|
||||
fixed: 'right',
|
||||
buttons: [
|
||||
{
|
||||
title: '上传',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-Plus',
|
||||
render: 'basicButton',
|
||||
click: row => {
|
||||
planId.value = row.planNo
|
||||
addUpload.value = true
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '查看',
|
||||
type: 'primary',
|
||||
icon: 'el-icon-EditPen',
|
||||
disabled: row => {
|
||||
return row.isFileUpload !== 1
|
||||
},
|
||||
render: 'basicButton',
|
||||
click: row => {
|
||||
surveyResultDownload({ planNo: row.planNo }).then(res => {
|
||||
uploadList.value = res.data
|
||||
dataShow.value = true
|
||||
})
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.planStartTime = tableStore.table.params.searchBeginTime
|
||||
tableStore.table.params.planEndTime = tableStore.table.params.searchEndTime
|
||||
tableStore.table.params.orgNo = tableStore.table.params.deptIndex
|
||||
tableStore.table.params.currentPage = tableStore.table.params.pageNum
|
||||
}
|
||||
})
|
||||
|
||||
tableStore.table.params.isFileUpload = ''
|
||||
|
||||
const handleRemove = (e: any) => {
|
||||
fileList.value = fileList.value.filter((item: any) => item.uid !== e.uid)
|
||||
}
|
||||
const chooseBatch = (e: any) => {
|
||||
fileList.value.push(e)
|
||||
}
|
||||
|
||||
// 上传
|
||||
const BatchUpload = () => {
|
||||
let form = new FormData()
|
||||
form.append('planId', planId.value)
|
||||
fileList.value.forEach((item: any) => {
|
||||
form.append('file', item.raw)
|
||||
})
|
||||
MultipartFile(form).then((res: any) => {
|
||||
ElMessage.success('上传成功!')
|
||||
handleClose()
|
||||
tableStore.index()
|
||||
})
|
||||
}
|
||||
const handleClose = () => {
|
||||
fileList.value = []
|
||||
addUpload.value = false
|
||||
}
|
||||
// 下载
|
||||
const downLownFn = async (row: any) => {
|
||||
let response = await fetch(row.minFileUrl)
|
||||
let blob = await response.blob()
|
||||
let a = document.createElement('a')
|
||||
a.href = window.URL.createObjectURL(blob)
|
||||
a.download = row.minFileName
|
||||
a.click()
|
||||
a.remove()
|
||||
}
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
</script>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader area datePicker ref="TableHeaderRef" />
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn/>
|
||||
<Table ref="tableRef" />
|
||||
<!-- 审核 -->
|
||||
<planAdd ref="planAddRef" @onsubmit="tableStore.index()" />
|
||||
@@ -26,6 +26,10 @@ const tableStore = new TableStore({
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'orgName', title: '所属单位' },
|
||||
{ field: 'planNo', title: '普测计划编号' },
|
||||
{ field: 'planName', title: '普测计划名称' },
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="监督类型">
|
||||
<el-select v-model="tableStore.table.params.supvType" clearable placeholder="请选择监督类型">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="监督类型">
|
||||
<el-select v-model="tableStore.table.params.supvType" clearable placeholder="请选择监督类型">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area ref="TableHeaderRef">
|
||||
<TableHeader area ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="干扰源类型">
|
||||
<el-select v-model="tableStore.table.params.loadType" clearable placeholder="请选择干扰源类型">
|
||||
@@ -49,6 +49,10 @@ const tableStore = new TableStore({
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'orgName', title: '所属单位' },
|
||||
{
|
||||
field: 'loadType',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader area ref="TableHeaderRef">
|
||||
<TableHeader area ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="干扰源类型">
|
||||
<el-select v-model="tableStore.table.params.loadType" clearable placeholder="请选择干扰源类型">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader datePicker nextFlag theCurrentTime showTimeAll showExport ref='TableHeaderRef'>
|
||||
<TableHeader datePicker nextFlag theCurrentTime showTimeAll showExport ref='TableHeaderRef' showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label='项目名称'>
|
||||
<el-input v-model='tableStore.table.params.projectName' placeholder='请输入项目名称' maxlength="32" show-word-limit clearable></el-input>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="项目名称">
|
||||
<el-input v-model="tableStore.table.params.projectName" placeholder="请输入项目名称" maxlength="32" show-word-limit clearable></el-input>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
custom-class="fixed-dialog"
|
||||
@closed="close"
|
||||
> -->
|
||||
<TableHeader :showSearch="false" ref="TableHeaderRef">
|
||||
<TableHeader :showSearch="false" ref="TableHeaderRef" showCustomColumn>
|
||||
<!-- <template #select>
|
||||
<el-form-item label="用户名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" clearable></el-input>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!---技术监督计划-->
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<TableHeader area datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--待办事项列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker nextFlag theCurrentTime showTimeAll showExport>
|
||||
<TableHeader date-picker nextFlag theCurrentTime showTimeAll showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--待办事项列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker nextFlag theCurrentTime showTimeAll showExport>
|
||||
<TableHeader date-picker nextFlag theCurrentTime showTimeAll showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader datePicker ref="TableHeaderRef">
|
||||
<TableHeader datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
@@ -45,6 +45,14 @@ const tableStore = new TableStore({
|
||||
publicHeight: 345,
|
||||
method: 'POST',
|
||||
column: [
|
||||
{
|
||||
title: '序号',
|
||||
field: 'index',
|
||||
width: 80,
|
||||
formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'name', title: '事务名称' },
|
||||
{ field: 'type', title: '事务类型' },
|
||||
{ field: 'createUser', title: '创建人员' },
|
||||
@@ -56,7 +64,8 @@ const tableStore = new TableStore({
|
||||
{ field: 'alertType', title: '预警类型' },
|
||||
|
||||
{
|
||||
title: '操作',fixed: 'right',
|
||||
title: '操作',
|
||||
fixed: 'right',
|
||||
width: '180',
|
||||
render: 'buttons',
|
||||
buttons: [
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader datePicker ref="TableHeaderRef">
|
||||
<TableHeader datePicker ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
@@ -102,6 +102,10 @@ const tableStore = new TableStore({
|
||||
publicHeight: 65,
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'name', title: '名称' },
|
||||
{
|
||||
field: 'grade',
|
||||
|
||||
@@ -130,6 +130,10 @@ const tableStore = new TableStore({
|
||||
publicHeight: 85,
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'id', title: '终端编号' },
|
||||
{
|
||||
field: 'manufacture',
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area ref="TableHeaderRef" showExport>
|
||||
<TableHeader area ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="运行状态">
|
||||
<el-select v-model="tableStore.table.params.runF" clearable placeholder="请选择运行状态">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef" showExport>
|
||||
<TableHeader ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="项目名称">
|
||||
<el-input style="width: 200px" placeholder="请输入项目名称" v-model="tableStore.table.params.projectName"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area ref="TableHeaderRef" showExport>
|
||||
<TableHeader area ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="运行状态">
|
||||
<el-select v-model="tableStore.table.params.runF" clearable placeholder="请选择运行状态">
|
||||
@@ -131,6 +131,7 @@ const tableStore = new TableStore({
|
||||
minWidth: 150
|
||||
},
|
||||
{ field: 'lineName', title: '监测点名称', minWidth: 130 },
|
||||
{ field: 'ip', title: 'IP', minWidth: 110 },
|
||||
{ field: 'scale', title: '监测点电压等级', minWidth: 120 },
|
||||
|
||||
{ field: 'loadType', title: '干扰源类型', minWidth: 120 },
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<TableHeader area ref="TableHeaderRef">
|
||||
<TableHeader area ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="终端名称">
|
||||
<el-input
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef" showExport>
|
||||
<TableHeader ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="项目名称">
|
||||
<el-input style="width: 200px" placeholder="请输入项目名称" v-model="tableStore.table.params.projectName"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader datePicker area nextFlag theCurrentTime ref="TableHeaderRef" showExport>
|
||||
<TableHeader datePicker area nextFlag theCurrentTime ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="数据筛选">
|
||||
<el-input
|
||||
@@ -36,6 +36,10 @@ const tableStore = new TableStore({
|
||||
paramsPOST: true,
|
||||
filename: '变电站台账',
|
||||
column: [
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'deptName', title: '所在地市', minWidth: 100 },
|
||||
{ field: 'substationName', title: '变电站名称', minWidth: 100 },
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef" showExport>
|
||||
<TableHeader ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="数据类型">
|
||||
<el-select v-model="tableStore.table.params.dataType" clearable placeholder="请选择运行状态">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef" showExport>
|
||||
<TableHeader ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据">
|
||||
<el-input
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
<!---终端入网检测-->
|
||||
<template>
|
||||
<TableHeader area ref='TableHeaderRef' showExport>
|
||||
<TableHeader area ref='TableHeaderRef' showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label='搜索'>
|
||||
<el-input
|
||||
v-model='tableStore.table.params.searchValue'
|
||||
placeholder='输入变电站.终端名称'
|
||||
clearable
|
||||
maxlength="32"
|
||||
maxlength="32"
|
||||
show-word-limit
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!---终端入网检测-->
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll showExport ref="TableHeaderRef">
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="搜索">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="输入变电站、终端、监测点名称"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!---终端入网检测-->
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="搜索">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="输入变电站、终端、监测点名称"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll showExport ref="TableHeaderRef">
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="搜索">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="输入变电站、终端名称"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<div class="default-main">
|
||||
<el-tabs v-model="activeName" type="border-card">
|
||||
<el-tab-pane label="试运行评估" name="1">
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef">
|
||||
<TableHeader area datePicker nextFlag theCurrentTime showTimeAll ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="流程状态">
|
||||
<el-select v-model="tableStore.table.params.status" clearable placeholder="请选择流程状态">
|
||||
@@ -82,6 +82,10 @@ const tableStore = new TableStore({
|
||||
publicHeight: 65,
|
||||
column: [
|
||||
{ title: '', type: 'checkbox', width: 40 },
|
||||
{ title: '序号', field: 'index', width: 80, formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ field: 'lineName', title: '监测点名称', minWidth: 160 },
|
||||
{ field: 'connectedBus', title: '接入母线', minWidth: 160 },
|
||||
// { field: 'monitoringTerminalCode', title: '终端编号', minWidth: 140 },
|
||||
|
||||
@@ -1,76 +1,76 @@
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='筛选数据'>
|
||||
<el-input v-model='tableStore.table.params.name' clearable placeholder='筛选数据' />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
<el-button type='primary' @click='exportEvent' class='ml10' icon='el-icon-Download'>导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<!--表格-->
|
||||
<Table ref='tableRef'></Table>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang='ts'>
|
||||
import { ElMessage } from 'element-plus'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { onMounted, provide, ref } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
|
||||
defineOptions({
|
||||
name: 'admin/flowTask/mytask'
|
||||
})
|
||||
|
||||
const tableStore = new TableStore({
|
||||
url: '/process-boot/flowable/task/todoList',
|
||||
method: 'GET',
|
||||
column: [
|
||||
{ title: '序号', width: 80,formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
} },
|
||||
{ title: '流程名称', field: 'procDefName', width: 200 },
|
||||
{ title: '流程类别', field: 'category', width: 200 },
|
||||
{ title: '流程版本', field: 'procDefVersion' },
|
||||
{ title: '提交时间', field: 'createTime' },
|
||||
{
|
||||
title: '流程状态', field: 'finishTime',
|
||||
render: 'tag',
|
||||
custom: {
|
||||
0: 'warning',
|
||||
1: 'success'
|
||||
},
|
||||
replaceValue: {
|
||||
0: '进行中',
|
||||
1: '已完成'
|
||||
},
|
||||
formatter(row: any) {
|
||||
return row.finishTime == null ? '0' : '1'
|
||||
}
|
||||
},
|
||||
{ title: '耗时', field: 'duration' },
|
||||
{ title: '当前节点', field: 'taskName' },
|
||||
{ title: '审核人', field: 'superiorsSubstation' }
|
||||
],
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.beginTime = tableStore.table.params.startTime
|
||||
tableStore.table.params.deptId = tableStore.table.params.deptIndex
|
||||
}
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
// 加载数据
|
||||
tableStore.index()
|
||||
})
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
</style>
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='筛选数据'>
|
||||
<el-input v-model='tableStore.table.params.name' clearable placeholder='筛选数据' />
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
<el-button type='primary' @click='exportEvent' class='ml10' icon='el-icon-Download'>导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<!--表格-->
|
||||
<Table ref='tableRef' :checkbox-config="checkboxConfig"></Table>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang='ts'>
|
||||
import { ElMessage } from 'element-plus'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { onMounted, provide, ref } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
|
||||
defineOptions({
|
||||
name: 'admin/flowTask/mytask'
|
||||
})
|
||||
|
||||
const tableStore = new TableStore({
|
||||
url: '/process-boot/flowable/task/todoList',
|
||||
method: 'GET',
|
||||
column: [
|
||||
{ title: '序号', width: 80,formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
} },
|
||||
{ title: '流程名称', field: 'procDefName', width: 200 },
|
||||
{ title: '流程类别', field: 'category', width: 200 },
|
||||
{ title: '流程版本', field: 'procDefVersion' },
|
||||
{ title: '提交时间', field: 'createTime' },
|
||||
{
|
||||
title: '流程状态', field: 'finishTime',
|
||||
render: 'tag',
|
||||
custom: {
|
||||
0: 'warning',
|
||||
1: 'success'
|
||||
},
|
||||
replaceValue: {
|
||||
0: '进行中',
|
||||
1: '已完成'
|
||||
},
|
||||
formatter(row: any) {
|
||||
return row.finishTime == null ? '0' : '1'
|
||||
}
|
||||
},
|
||||
{ title: '耗时', field: 'duration' },
|
||||
{ title: '当前节点', field: 'taskName' },
|
||||
{ title: '审核人', field: 'superiorsSubstation' }
|
||||
],
|
||||
beforeSearchFun: () => {
|
||||
tableStore.table.params.beginTime = tableStore.table.params.startTime
|
||||
tableStore.table.params.deptId = tableStore.table.params.deptIndex
|
||||
}
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
// 加载数据
|
||||
tableStore.index()
|
||||
})
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
</style>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--业务用户管理界面-->
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='流程名称'>
|
||||
<el-input v-model='tableStore.table.params.name' clearable placeholder='流程名称' />
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="view">
|
||||
<TableHeader datePicker showExport>
|
||||
<TableHeader datePicker showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="统计类型:">
|
||||
<el-radio-group v-model="tableStore.table.params.isType">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="view">
|
||||
<TableHeader datePicker :showReset="false" showExport ref="TableHeaderRef">
|
||||
<TableHeader datePicker :showReset="false" showExport ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<!-- <el-form-item label="筛选数据">-->
|
||||
<!-- <el-input v-model="tableStore.table.params.searchValue" clearable placeholder="输入关键字筛选" />-->
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div>
|
||||
<div v-show="view">
|
||||
<!-- 表头 -->
|
||||
<TableHeader ref="TableHeaderRef" date-picker showExport>
|
||||
<TableHeader ref="TableHeaderRef" date-picker showExport showCustomColumn>
|
||||
<template v-slot:operation>
|
||||
<el-button :icon="Download" type="primary" @click="download">下载波形</el-button>
|
||||
</template>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div v-show="view">
|
||||
<TableHeader datePicker ref="TableHeaderRef" showExport>
|
||||
<TableHeader datePicker ref="TableHeaderRef" showExport showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="筛选数据:">
|
||||
<el-input
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area showExport>
|
||||
<TableHeader date-picker area showExport showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="终端状态">
|
||||
<el-select
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area>
|
||||
<TableHeader date-picker area showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="干扰源类型">
|
||||
<el-select
|
||||
@@ -50,7 +50,7 @@
|
||||
maxlength="32"
|
||||
show-word-limit
|
||||
clearable
|
||||
style="width: 280px;"
|
||||
style="minWidth: 280px;"
|
||||
/>
|
||||
</el-form-item>
|
||||
</template>
|
||||
@@ -78,65 +78,66 @@ const tableStore = new TableStore({
|
||||
url: '/device-boot/runManage/getLineLedger',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ field: 'areaName', title: '省公司', width: 120 },
|
||||
{ field: 'gdName', title: '市公司', width: 120 },
|
||||
{ field: 'scale', title: '监测点电压等级', width: 150 },
|
||||
{ field: 'lineName', title: '监测点名称', width: 120 },
|
||||
{ field: 'bdName', title: '所属变电站', width: 120 },
|
||||
{ field: 'loadType', title: '干扰源类型', width: 120 },
|
||||
{ field: 'objName', title: '监测对象名称', width: 180 },
|
||||
{ field: 'shortCapacity', title: '最小短路容量(MVA)', width: 190 },
|
||||
{ field: 'devCapacity', title: '供电终端容量(MVA )', width: 190 },
|
||||
{ field: 'dealCapacity', title: '用户协议容量(MVA)', width: 190 },
|
||||
{ field: 'comFlag', title: '通讯状态 ', width: 120 },
|
||||
{ field: 'id', title: '监测点序号', width: 120 },
|
||||
{ field: 'devName', title: '监测终端编号 ', width: 140 },
|
||||
{ field: 'ptType', title: '监测终端接线方式', width: 160 },
|
||||
{ field: 'voltageDev', title: '电压偏差上限(%)', width: 160 },
|
||||
{ field: 'uvoltageDev', title: '电压偏差下限(%)', width: 160 },
|
||||
|
||||
{ field: 'areaName', title: '省公司', minWidth: 120 },
|
||||
{ field: 'gdName', title: '市公司', minWidth: 120 },
|
||||
{ field: 'scale', title: '监测点电压等级', minWidth: 150 },
|
||||
{ field: 'lineName', title: '监测点名称', minWidth: 120 },
|
||||
{ field: 'bdName', title: '所属变电站', minWidth: 120 },
|
||||
{ field: 'loadType', title: '干扰源类型', minWidth: 120 },
|
||||
{ field: 'objName', title: '监测对象名称', minWidth: 180 },
|
||||
{ field: 'shortCapacity', title: '最小短路容量(MVA)', minWidth: 190 },
|
||||
{ field: 'devCapacity', title: '供电终端容量(MVA )', minWidth: 190 },
|
||||
{ field: 'dealCapacity', title: '用户协议容量(MVA)', minWidth: 190 },
|
||||
{ field: 'comFlag', title: '通讯状态 ', minWidth: 120 },
|
||||
{ field: 'id', title: '监测点序号', minWidth: 120 },
|
||||
{ field: 'devName', title: '监测终端编号 ', minWidth: 140 },
|
||||
{ field: 'ptType', title: '监测终端接线方式', minWidth: 160 },
|
||||
{ field: 'voltageDev', title: '电压偏差上限(%)', minWidth: 160 },
|
||||
{ field: 'uvoltageDev', title: '电压偏差下限(%)', minWidth: 160 },
|
||||
{
|
||||
field: 'limitValue',
|
||||
title: '限值',
|
||||
children: [
|
||||
{ field: 'freqDev', title: '频率(Hz)', width: 120 },
|
||||
{ field: 'ubalance', title: '三相电压不平衡度(%)', width: 190 },
|
||||
{ field: 'ineg', title: '负序电流(A)', width: 120 },
|
||||
{ field: 'flicker', title: '长时间闪变', width: 120 },
|
||||
{ field: 'uaberrance', title: '电压总谐波畸变率(%)', width: 190 },
|
||||
{ field: 'oddHarm', title: '奇数次谐波电压(%)', width: 180 },
|
||||
{ field: 'evenHarm', title: '偶数次谐波电压(%)', width: 180 }
|
||||
{ field: 'freqDev', title: '频率(Hz)', minWidth: 120 },
|
||||
{ field: 'ubalance', title: '三相电压不平衡度(%)', minWidth: 190 },
|
||||
{ field: 'ineg', title: '负序电流(A)', minWidth: 120 },
|
||||
{ field: 'flicker', title: '长时间闪变', minWidth: 120 },
|
||||
{ field: 'uaberrance', title: '电压总谐波畸变率(%)', minWidth: 190 },
|
||||
{ field: 'oddHarm', title: '奇数次谐波电压(%)', minWidth: 180 },
|
||||
{ field: 'evenHarm', title: '偶数次谐波电压(%)', minWidth: 180 }
|
||||
]
|
||||
},
|
||||
{
|
||||
field: 'evaluate',
|
||||
title: '电流限值',
|
||||
children: [
|
||||
{ field: 'iharm2', title: '2次谐波(A)', width: 120 },
|
||||
{ field: 'iharm3', title: '3次谐波(A)', width: 120 },
|
||||
{ field: 'iharm4', title: '4次谐波(A)', width: 120 },
|
||||
{ field: 'iharm5', title: '5次谐波(A)', width: 120 },
|
||||
{ field: 'iharm6', title: '6次谐波(A)', width: 120 },
|
||||
{ field: 'iharm7', title: '7次谐波(A)', width: 120 },
|
||||
{ field: 'iharm8', title: '8次谐波(A)', width: 120 },
|
||||
{ field: 'iharm9', title: '9次谐波(A)', width: 120 },
|
||||
{ field: 'iharm10', title: '10次谐波(A)', width: 140 },
|
||||
{ field: 'iharm11', title: '11次谐波(A)', width: 140 },
|
||||
{ field: 'iharm12', title: '12次谐波(A)', width: 140 },
|
||||
{ field: 'iharm13', title: '13次谐波(A)', width: 140 },
|
||||
{ field: 'iharm14', title: '14次谐波(A)', width: 140 },
|
||||
{ field: 'iharm15', title: '15次谐波(A)', width: 140 },
|
||||
{ field: 'iharm16', title: '16次谐波(A)', width: 140 },
|
||||
{ field: 'iharm17', title: '17次谐波(A)', width: 140 },
|
||||
{ field: 'iharm18', title: '18次谐波(A)', width: 140 },
|
||||
{ field: 'iharm19', title: '19次谐波(A)', width: 140 },
|
||||
{ field: 'iharm10', title: '20次谐波(A)', width: 140 },
|
||||
{ field: 'iharm21', title: '21次谐波(A)', width: 140 },
|
||||
{ field: 'iharm22', title: '22次谐波(A)', width: 140 },
|
||||
{ field: 'iharm23', title: '23次谐波(A)', width: 140 },
|
||||
{ field: 'iharm24', title: '24次谐波(A)', width: 140 },
|
||||
{ field: 'iharm25', title: '25次谐波(A)', width: 140 },
|
||||
{ field: 'inUharm', title: '0.5-1.5次间谐波(A)', width: 180 },
|
||||
{ field: 'inUharm16', title: '2.5-15.5次间谐波(A)', width: 190 }
|
||||
{ field: 'iharm2', title: '2次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm3', title: '3次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm4', title: '4次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm5', title: '5次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm6', title: '6次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm7', title: '7次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm8', title: '8次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm9', title: '9次谐波(A)', minWidth: 120 },
|
||||
{ field: 'iharm10', title: '10次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm11', title: '11次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm12', title: '12次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm13', title: '13次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm14', title: '14次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm15', title: '15次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm16', title: '16次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm17', title: '17次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm18', title: '18次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm19', title: '19次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm10', title: '20次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm21', title: '21次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm22', title: '22次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm23', title: '23次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm24', title: '24次谐波(A)', minWidth: 140 },
|
||||
{ field: 'iharm25', title: '25次谐波(A)', minWidth: 140 },
|
||||
{ field: 'inUharm', title: '0.5-1.5次间谐波(A)', minWidth: 180 },
|
||||
{ field: 'inUharm16', title: '2.5-15.5次间谐波(A)', minWidth: 190 }
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader date-picker area>
|
||||
<TableHeader date-picker area showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="统计类型">
|
||||
<el-radio-group v-model="tableStore.table.params.comFlag">
|
||||
|
||||
@@ -1,75 +1,75 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker :showReset="false">
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Download" type="primary" @click="exportEvent">导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table :isGroup="props.info.isGroup" ref="tableRef" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import { ref, onMounted, provide, nextTick } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import createAxios from '@/utils/request'
|
||||
import { requestPayload } from '@/utils/request'
|
||||
interface Props {
|
||||
info: any
|
||||
}
|
||||
const props = withDefaults(defineProps<Props>(), {})
|
||||
const dictData = useDictData()
|
||||
const tableRef = ref()
|
||||
const tableStore = new TableStore({
|
||||
url: props.info.url,
|
||||
publicHeight: 62,
|
||||
method: 'POST',
|
||||
column: props.info.column,
|
||||
|
||||
loadCallback: () => {}
|
||||
})
|
||||
tableStore.table.params.statisticalType = dictData.getBasicData('Statistical_Type', [
|
||||
'Report_Type',
|
||||
'Manufacturer',
|
||||
'Voltage_Level',
|
||||
'Load_Type'
|
||||
])[0]
|
||||
tableStore.table.params.deptIndex = dictData.state.area[0].id
|
||||
tableStore.table.params.monitorFlag = 2
|
||||
tableStore.table.params.powerFlag = 2
|
||||
tableStore.table.params.serverName = 'event-boot'
|
||||
tableStore.table.params.type = 0
|
||||
provide('tableStore', tableStore)
|
||||
nextTick(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
// 导出
|
||||
const exportEvent = () => {
|
||||
let form = JSON.parse(JSON.stringify(tableStore.table.params))
|
||||
form.pageNum = 1
|
||||
form.pageSize = tableStore.table.total
|
||||
createAxios(
|
||||
Object.assign(
|
||||
{
|
||||
url: props.info.url,
|
||||
method: 'post'
|
||||
},
|
||||
requestPayload('POST', form)
|
||||
)
|
||||
).then(res => {
|
||||
tableRef.value.getRef().exportData({
|
||||
filename: props.info.name, // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
data: res.data.records, // 数据源 // 过滤那个字段导出
|
||||
columnFilterMethod: function (column: any) {
|
||||
return !(column.$columnIndex === 0)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker :showReset="false" showCustomColumn>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Download" type="primary" @click="exportEvent">导出</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table :isGroup="props.info.isGroup" ref="tableRef" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import { ref, onMounted, provide, nextTick } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import createAxios from '@/utils/request'
|
||||
import { requestPayload } from '@/utils/request'
|
||||
interface Props {
|
||||
info: any
|
||||
}
|
||||
const props = withDefaults(defineProps<Props>(), {})
|
||||
const dictData = useDictData()
|
||||
const tableRef = ref()
|
||||
const tableStore = new TableStore({
|
||||
url: props.info.url,
|
||||
publicHeight: 62,
|
||||
method: 'POST',
|
||||
column: props.info.column,
|
||||
|
||||
loadCallback: () => {}
|
||||
})
|
||||
tableStore.table.params.statisticalType = dictData.getBasicData('Statistical_Type', [
|
||||
'Report_Type',
|
||||
'Manufacturer',
|
||||
'Voltage_Level',
|
||||
'Load_Type'
|
||||
])[0]
|
||||
tableStore.table.params.deptIndex = dictData.state.area[0].id
|
||||
tableStore.table.params.monitorFlag = 2
|
||||
tableStore.table.params.powerFlag = 2
|
||||
tableStore.table.params.serverName = 'event-boot'
|
||||
tableStore.table.params.type = 0
|
||||
provide('tableStore', tableStore)
|
||||
nextTick(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
// 导出
|
||||
const exportEvent = () => {
|
||||
let form = JSON.parse(JSON.stringify(tableStore.table.params))
|
||||
form.pageNum = 1
|
||||
form.pageSize = tableStore.table.total
|
||||
createAxios(
|
||||
Object.assign(
|
||||
{
|
||||
url: props.info.url,
|
||||
method: 'post'
|
||||
},
|
||||
requestPayload('POST', form)
|
||||
)
|
||||
).then(res => {
|
||||
tableRef.value.getRef().exportData({
|
||||
filename: props.info.name, // 文件名字
|
||||
sheetName: 'Sheet1',
|
||||
type: 'xlsx', //导出文件类型 xlsx 和 csv
|
||||
useStyle: true,
|
||||
data: res.data.records, // 数据源 // 过滤那个字段导出
|
||||
columnFilterMethod: function (column: any) {
|
||||
return !(column.$columnIndex === 0)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<!-- 表头 -->
|
||||
<TableHeader date-picker ref='tableHeader'>
|
||||
<TableHeader date-picker ref='tableHeader' showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='用户'>
|
||||
<el-select v-model='tableStore.table.params.userId' filterable @change='changeUser'>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--业务用户管理界面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label='筛选数据'>
|
||||
<el-input
|
||||
@@ -67,12 +67,12 @@ const tableStore = new TableStore({
|
||||
{ title: '用户名', field: 'userName' },
|
||||
{ title: '所属行业', field: 'industry' },
|
||||
{ title: '所属地区', field: 'addr' },
|
||||
{ title: '产线数', width: '130', field: 'productCount' },
|
||||
{ title: '进线数', width: '130', field: 'lineCount' },
|
||||
{ title: '产线数', minWidth: '130', field: 'productCount' },
|
||||
{ title: '进线数', minWidth: '130', field: 'lineCount' },
|
||||
{
|
||||
title: '暂降数据',
|
||||
align: 'center',
|
||||
width: '180',
|
||||
minWidth: '180',
|
||||
render: 'buttons',
|
||||
buttons: [
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--终端管理界面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader :showReset="false">
|
||||
<TableHeader :showReset="false" showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='生产线'>
|
||||
<el-select v-model='tableStore.table.params.productLineId'>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--生产线管理界面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader :showReset="false">
|
||||
<TableHeader :showReset="false" showCustomColumn>
|
||||
<template v-slot:operation>
|
||||
<!-- <el-button type='primary' @click='refresh' class='ml10' :icon='Refresh'>刷新</el-button>-->
|
||||
<el-button type='primary' @click='add' class='ml10' :icon='Plus'>新增</el-button>
|
||||
@@ -47,15 +47,15 @@ const tableStore = new TableStore({
|
||||
{ title: '用户名', minWidth: '130', field: 'userName' },
|
||||
{ title: '进线名称', minWidth: '130', field: 'incomingLineName' },
|
||||
{ title: '产线名称', minWidth: '130', field: 'name' },
|
||||
{ title: '产能损失(万元)', width: '120', field: 'capacityLoss' },
|
||||
{ title: '终端损失(万元)', width: '120', field: 'machineLoss' },
|
||||
{ title: '原料损失(万元)', width: '120', field: 'materialLoss' },
|
||||
{ title: '产线功率(kW)', width: '120', field: 'machinePower' },
|
||||
{ title: '产能损失(万元)', minWidth: '120', field: 'capacityLoss' },
|
||||
{ title: '终端损失(万元)', minWidth: '120', field: 'machineLoss' },
|
||||
{ title: '原料损失(万元)', minWidth: '120', field: 'materialLoss' },
|
||||
{ title: '产线功率(kW)', minWidth: '120', field: 'machinePower' },
|
||||
{
|
||||
title: '计算模式',
|
||||
titlePrefix: { message: '模式一:单次中断不计算终端、原料损失 \n 模式二:单次中断计算终端、原料损失', icon: 'vxe-icon-question-circle-fill' },
|
||||
render: 'tag',
|
||||
width: '120',
|
||||
minWidth: '120',
|
||||
field: 'calcMode',
|
||||
replaceValue: {
|
||||
'0': '模式一',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--进线管理界面-->
|
||||
<template>
|
||||
<div class='default-main unitButton'>
|
||||
<TableHeader style='padding: 0 0 !important;'>
|
||||
<TableHeader style='padding: 0 0 !important;' showCustomColumn>
|
||||
<template v-slot:operation>
|
||||
<el-button type='primary' @click='add' class='ml10' :icon='Plus'>新增</el-button>
|
||||
</template>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--暂降治理历史数据管理界面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='用户'>
|
||||
<el-select v-model='tableStore.table.params.userId' filterable clearable>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="dictiontary-list-detail child-router">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="">
|
||||
<el-page-header @back="$emit('close')">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main" style="position: relative">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="过滤筛选">
|
||||
<el-input
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="用户状态">
|
||||
<el-select v-model="tableStore.table.params.searchState" placeholder="选择用户状态">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--流程分类页面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader >
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='流程分类'>
|
||||
<el-input
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--流程模型管理界面-->
|
||||
<template>
|
||||
<div class='default-main'>
|
||||
<TableHeader>
|
||||
<div class="default-main">
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<!-- <el-form-item label='用户'>-->
|
||||
<!-- <el-select v-model='tableStore.table.params.userId' filterable clearable>-->
|
||||
@@ -15,20 +15,20 @@
|
||||
<!-- </el-form-item>-->
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
<el-button type='primary' @click='add' class='ml10' :icon='Plus'>新增模型</el-button>
|
||||
<el-button type="primary" @click="add" class="ml10" :icon="Plus">新增模型</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<!--表格-->
|
||||
<Table ref='tableRef' isGroup></Table>
|
||||
<model-popup ref='modelPopup' />
|
||||
<Table ref="tableRef" isGroup></Table>
|
||||
<model-popup ref="modelPopup" />
|
||||
<!-- 弹窗:表单详情 -->
|
||||
<el-dialog title='表单详情' v-model='formDetailVisible' width='800'>
|
||||
<form-create :rule='formDetailPreview.rule' :option='formDetailPreview.option' />
|
||||
<el-dialog title="表单详情" v-model="formDetailVisible" width="800">
|
||||
<form-create :rule="formDetailPreview.rule" :option="formDetailPreview.option" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang='ts'>
|
||||
<script setup lang="ts">
|
||||
import { Plus } from '@element-plus/icons-vue'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
@@ -53,14 +53,20 @@ const tableStore = new TableStore({
|
||||
url: '/bpm-boot/bpm/model/list',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ title: '序号', width: 80,formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
} },
|
||||
{
|
||||
title: '序号',
|
||||
width: 80,
|
||||
formatter: (row: any) => {
|
||||
return (tableStore.table.params.pageNum - 1) * tableStore.table.params.pageSize + row.rowIndex + 1
|
||||
}
|
||||
},
|
||||
{ title: '模型标识', field: 'key', width: 160 },
|
||||
{ title: '模型名称', field: 'name', width: 160 },
|
||||
{ title: '流程分类', field: 'categoryName', width: 150 },
|
||||
{
|
||||
title: '表单信息', field: 'formName', width: 170,
|
||||
title: '表单信息',
|
||||
field: 'formName',
|
||||
width: 170,
|
||||
formatter: (obj: any) => {
|
||||
const formType = obj.row.formType
|
||||
if (formType == 20) {
|
||||
@@ -117,11 +123,12 @@ const tableStore = new TableStore({
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '操作',fixed: 'right',
|
||||
title: '操作',
|
||||
fixed: 'right',
|
||||
align: 'center',
|
||||
minWidth: '200',
|
||||
render: 'buttons',
|
||||
|
||||
|
||||
buttons: [
|
||||
{
|
||||
name: 'productSetting',
|
||||
@@ -201,7 +208,6 @@ tableStore.table.params.userId = ''
|
||||
|
||||
provide('tableStore', tableStore)
|
||||
|
||||
|
||||
//获取流程标识的名称
|
||||
const getFormNameByViewPath = (viewPath: string) => {
|
||||
const nameItem = flowInfo.value.filter(item => item.viewPath == viewPath)
|
||||
@@ -236,13 +242,12 @@ const handleDeployConfirm = (rowId: string) => {
|
||||
cancelButtonText: '取消',
|
||||
draggable: true,
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
handleDeploy(rowId)
|
||||
})
|
||||
.catch(() => {
|
||||
.then(() => {
|
||||
handleDeploy(rowId)
|
||||
})
|
||||
} catch {
|
||||
}
|
||||
.catch(() => {})
|
||||
} catch {}
|
||||
}
|
||||
|
||||
const handleDeploy = async (rowId: string) => {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--流程分类页面-->
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<TableHeader>
|
||||
<TableHeader showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="标识名称">
|
||||
<el-input v-model="tableStore.table.params.name" clearable placeholder="请输入名称" maxlength="32" show-word-limit/>
|
||||
@@ -50,7 +50,7 @@ const tableStore = new TableStore({
|
||||
{ title: '标识key', field: 'signKey', minWidth: 130 },
|
||||
{ title: '表单查看地址', field: 'viewPath', minWidth: 200 },
|
||||
{ title: '创建时间', field: 'createTime', minWidth: 170 },
|
||||
{ title: '排序', field: 'sort', width: 170 },
|
||||
{ title: '排序', field: 'sort', width: 80 },
|
||||
{
|
||||
title: '操作',fixed: 'right',
|
||||
align: 'center',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<TableHeader area datePicker nextFlag theCurrentTime ref="TableHeaderRef">
|
||||
<TableHeader area datePicker nextFlag theCurrentTime ref="TableHeaderRef" showCustomColumn>
|
||||
<!-- <template #operation>-->
|
||||
<!-- <el-button icon="el-icon-Plus" type="primary" @click="add">新增</el-button>-->
|
||||
<!-- <el-button icon="el-icon-Delete" type="primary">删除</el-button>-->
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--待办事项列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker theCurrentTime showTimeAll showExport :showReset="false">
|
||||
<TableHeader date-picker theCurrentTime showTimeAll showExport :showReset="false" showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label='任务名称'>
|
||||
<el-input v-model='tableStore.table.params.searchValue' placeholder='请输入任务名称' clearable maxlength="32" show-word-limit/>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--待办事项列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader date-picker theCurrentTime showTimeAll showExport :showReset="false">
|
||||
<TableHeader date-picker theCurrentTime showTimeAll showExport :showReset="false" showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="任务名称">
|
||||
<el-input v-model="tableStore.table.params.searchValue" placeholder="请输入任务名称" clearable
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<!--待办事项列表-->
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader showExport :showReset="false">
|
||||
<TableHeader showExport :showReset="false" showCustomColumn>
|
||||
<template v-slot:select>
|
||||
<el-form-item label="任务名称">
|
||||
<el-input
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="default-main">
|
||||
<div>
|
||||
<TableHeader ref="TableHeaderRef">
|
||||
<TableHeader ref="TableHeaderRef" showCustomColumn>
|
||||
<template #select>
|
||||
<el-form-item label="icd名称">
|
||||
<el-input
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user