修改 云南测试问题
This commit is contained in:
@@ -73,8 +73,11 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-slot:operation>
|
||||
<el-button :icon='Download' type='primary' @click='download'>下载波形</el-button>
|
||||
</template>
|
||||
</TableHeader>
|
||||
<Table ref="tableRef" />
|
||||
<Table ref="tableRef" :checkboxConfig='checkboxConfig'/>
|
||||
</div>
|
||||
<div :style="{ height: pageHeight.height }" style="padding: 10px; overflow: hidden" v-if="!view">
|
||||
<waveForm ref="waveFormRef" senior :boxoList="boxoList" :wp="wp" @backbxlb="backbxlb" />
|
||||
@@ -84,12 +87,16 @@
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, provide } from 'vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import { Download } from '@element-plus/icons-vue'
|
||||
import Table from '@/components/table/index.vue'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { mainHeight } from '@/utils/layout'
|
||||
import waveForm from '@/components/echarts/waveForm.vue'
|
||||
import { getMonitorEventAnalyseWave } from '@/api/event-boot/transient'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||
import { VxeTablePropTypes } from 'vxe-table'
|
||||
import { downloadWaveFile } from '@/api/event-boot/transient'
|
||||
const dictData = useDictData()
|
||||
defineOptions({
|
||||
name: 'harmonic-boot/area/TransientEventList'
|
||||
@@ -107,6 +114,7 @@ const tableStore = new TableStore({
|
||||
url: '/event-boot/transient/getTransientValue',
|
||||
method: 'POST',
|
||||
column: [
|
||||
{ width: '60', type: 'checkbox' },
|
||||
{
|
||||
field: 'index',
|
||||
title: '序号',
|
||||
@@ -238,9 +246,37 @@ provide('tableStore', tableStore)
|
||||
onMounted(() => {
|
||||
tableStore.index()
|
||||
})
|
||||
|
||||
const checkboxConfig = reactive<VxeTablePropTypes.CheckboxConfig<any>>({
|
||||
checkMethod: ({ row }) => {
|
||||
return row.fileFlag === 1
|
||||
}
|
||||
})
|
||||
const backbxlb = () => {
|
||||
view.value = true
|
||||
view2.value = false
|
||||
}
|
||||
// 下载波形
|
||||
const download = () => {
|
||||
if (!tableStore.table.selection.length) {
|
||||
ElMessage.warning('请选择数据')
|
||||
return
|
||||
}
|
||||
downloadWaveFile({
|
||||
lineId: tableStore.table.selection.map((item: any) => item.eventId)
|
||||
}).then((res: any) => {
|
||||
if (res.type == 'application/json') {
|
||||
ElMessage.warning('暂无可下载的波形文件!')
|
||||
return
|
||||
}
|
||||
ElMessage.success('下载中。。。!')
|
||||
let blob = new Blob([res], { type: 'application/zip' }) // console.log(blob) // var href = window.URL.createObjectURL(blob); //创建下载的链接
|
||||
const url = window.URL.createObjectURL(blob)
|
||||
const link = document.createElement('a') // 创建a标签
|
||||
link.href = url
|
||||
link.download = '波形分析下载' // 设置下载的文件名
|
||||
document.body.appendChild(link)
|
||||
link.click() //执行下载
|
||||
document.body.removeChild(link) //释放标签
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -110,13 +110,13 @@
|
||||
<div class="online_main">
|
||||
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
|
||||
<el-tab-pane :name="0" :lazy="true" label="数据完整性列表">
|
||||
<Table
|
||||
ref="tableRef"
|
||||
:tree-config="{ transform: true, parentField: 'uPid', rowField: 'uId' }"
|
||||
:checkbox-config="{ labelField: 'name', checkMethod: ({ row }) => true }"
|
||||
:scroll-y="{ enabled: true }"
|
||||
v-if="activeName == 0"
|
||||
/>
|
||||
<Table
|
||||
ref="tableRef"
|
||||
:tree-config="{ transform: true, parentField: 'uPid', rowField: 'uId' }"
|
||||
:checkbox-config="{ labelField: 'name', checkMethod: ({ row }) => true }"
|
||||
:scroll-y="{ enabled: true }"
|
||||
v-if="activeName == 0"
|
||||
/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane :name="1" :lazy="true" label="数据完整性图表">
|
||||
<charts v-if="activeName == 1" ref="chartsRef" />
|
||||
@@ -127,12 +127,15 @@
|
||||
补招时间:
|
||||
<el-date-picker
|
||||
v-model="timeData"
|
||||
type="daterange"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
type="datetimerange"
|
||||
format="YYYY-MM-DD HH:mm:00"
|
||||
value-format="YYYY-MM-DD HH:mm:00"
|
||||
range-separator="至"
|
||||
date-format="YYYY-MM-DD"
|
||||
time-format="HH:mm:00"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
style="width: 400px"
|
||||
:disabledDate="disabledDate"
|
||||
/>
|
||||
<template #footer>
|
||||
@@ -148,7 +151,7 @@
|
||||
import { ref, onMounted, watch } from 'vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import DatePicker from '@/components/form/datePicker/index.vue'
|
||||
import { getAreaDept, recall } from '@/api/harmonic-boot/area'
|
||||
import { getAreaDept, FullRecall } from '@/api/harmonic-boot/area'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import TableStore from '@/utils/tableStore'
|
||||
import Table from '@/components/table/index.vue'
|
||||
@@ -182,7 +185,6 @@ const getTreeData = async () => {
|
||||
idArr.value.push(element.id)
|
||||
})
|
||||
treeData.value = JSON.parse(JSON.stringify(res.data))
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
@@ -324,21 +326,19 @@ const tableStore = new TableStore({
|
||||
loadCallback: () => {
|
||||
tableStore.table.data = tree2List(tableStore.table.data, Math.random() * 1000)
|
||||
tableStore.table.column[0].title = formData.value.statisticalType.name
|
||||
|
||||
|
||||
chartsRef.value && chartsRef.value.getTableStoreParams(tableStore.table.params)
|
||||
setTimeout(() => {
|
||||
activeName.value == 0 && tableRef.value && tableRef.value.getRef().setAllTreeExpand(true)
|
||||
|
||||
}, 0)
|
||||
},
|
||||
resetCallback:() =>{
|
||||
// 重置表单数据到默认值
|
||||
resetCallback: () => {
|
||||
// 重置表单数据到默认值
|
||||
formData.value.statisticalType = classificationData[0]
|
||||
formData.value.deptIndex = treeData.value[0]?.id
|
||||
formData.value.scale = voltageleveloption
|
||||
formData.value.manufacturer = terminaloption
|
||||
formData.value.loadType = interfereoption
|
||||
|
||||
formData.value.loadType = interfereoption
|
||||
}
|
||||
})
|
||||
|
||||
@@ -409,7 +409,7 @@ const makeUpSubmit = () => {
|
||||
})
|
||||
}
|
||||
|
||||
recall({
|
||||
FullRecall({
|
||||
monitorId: tableRef.value
|
||||
.getRef()
|
||||
.getCheckboxRecords()
|
||||
@@ -418,9 +418,8 @@ const makeUpSubmit = () => {
|
||||
reCallEndTime: timeData.value[1],
|
||||
reCallStartTime: timeData.value[0]
|
||||
}).then(res => {
|
||||
|
||||
ElMessage({
|
||||
message: "补招命令下发成功",
|
||||
message: '补招命令下发成功',
|
||||
type: 'success'
|
||||
})
|
||||
dialogVisible.value = false
|
||||
@@ -430,7 +429,7 @@ watch(
|
||||
() => treeData.value,
|
||||
(val, oldVal) => {
|
||||
if (val && val.length != 0) {
|
||||
formData.value.deptIndex = val[0].id
|
||||
formData.value.deptIndex = val[0].id
|
||||
tableStore.index()
|
||||
}
|
||||
},
|
||||
@@ -441,7 +440,6 @@ watch(
|
||||
)
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
||||
// .online {
|
||||
// width: 100%;
|
||||
// height: 100%;
|
||||
@@ -472,7 +470,7 @@ watch(
|
||||
// 确保空数据状态下没有灰色遮罩层
|
||||
:deep(.vxe-table--empty-block) {
|
||||
background: transparent;
|
||||
|
||||
|
||||
.vxe-table--empty-content {
|
||||
color: #909399;
|
||||
}
|
||||
@@ -510,7 +508,7 @@ watch(
|
||||
:deep(.vxe-table--body-wrapper:empty) {
|
||||
.vxe-cell--checkbox {
|
||||
background: transparent;
|
||||
|
||||
|
||||
.vxe-checkbox--icon {
|
||||
color: var(--el-color-primary-light-3);
|
||||
}
|
||||
@@ -520,7 +518,7 @@ watch(
|
||||
// 专门修复checkbox和treeNode组合的样式问题
|
||||
:deep(.vxe-cell--checkbox) {
|
||||
background: transparent !important;
|
||||
|
||||
|
||||
.vxe-checkbox--icon {
|
||||
color: var(--el-color-primary-light-3) !important;
|
||||
}
|
||||
@@ -529,7 +527,7 @@ watch(
|
||||
// 修复树表checkbox的特殊样式
|
||||
:deep(.vxe-tree-cell .vxe-cell--checkbox) {
|
||||
background: transparent !important;
|
||||
|
||||
|
||||
.vxe-checkbox--icon {
|
||||
color: var(--el-color-primary-light-3) !important;
|
||||
}
|
||||
@@ -538,7 +536,7 @@ watch(
|
||||
// 确保checkbox在树表中的正确显示
|
||||
:deep(.vxe-body--row .vxe-cell--checkbox) {
|
||||
background: transparent !important;
|
||||
|
||||
|
||||
.vxe-checkbox--icon {
|
||||
color: var(--el-color-primary-light-3) !important;
|
||||
}
|
||||
|
||||
@@ -67,11 +67,11 @@
|
||||
<!-- <el-form :inline="true">
|
||||
|
||||
</el-form> -->
|
||||
<div id="canvas" class="mt10" :style="height1" style="overflow-y: auto" v-loading="loading">
|
||||
<div id="canvas" class="mt10" :style="height1" style="overflow-y: auto;overflow-x: hidden" v-loading="loading">
|
||||
<my-echart
|
||||
:options="item.option"
|
||||
v-for="item in list"
|
||||
style="min-height: 210px"
|
||||
style="min-height: 190px"
|
||||
:style="height"
|
||||
@triggerPoint="triggerPoint"
|
||||
@group="group"
|
||||
@@ -1926,6 +1926,8 @@ const triggerPoint = (data: any) => {
|
||||
}
|
||||
// 计算高度
|
||||
const selectChange = (flag: boolean) => {
|
||||
// const height1: any = ref(mainHeight(160))
|
||||
height1.value = mainHeight(flag ? 220 : 160)
|
||||
height.value = mainHeight(flag ? 220 : 160, list.value.length > 3 ? 3 : list.value.length)
|
||||
}
|
||||
const backbxlb = () => {
|
||||
|
||||
Reference in New Issue
Block a user