修改江西测试问题
This commit is contained in:
1
src/assets/map/曲靖.json
Normal file
1
src/assets/map/曲靖.json
Normal file
File diff suppressed because one or more lines are too long
@@ -15,7 +15,7 @@ import { color, gradeColor3 } from './color'
|
|||||||
import { useConfig } from '@/stores/config'
|
import { useConfig } from '@/stores/config'
|
||||||
const config = useConfig()
|
const config = useConfig()
|
||||||
// import { nextTick } from 'process'
|
// import { nextTick } from 'process'
|
||||||
const emit = defineEmits(['triggerPoint'])
|
const emit = defineEmits(['triggerPoint', 'group'])
|
||||||
color[0] = config.layout.elementUiPrimary[0]
|
color[0] = config.layout.elementUiPrimary[0]
|
||||||
const chartRef = ref<HTMLDivElement>()
|
const chartRef = ref<HTMLDivElement>()
|
||||||
|
|
||||||
@@ -147,7 +147,8 @@ const initChart = () => {
|
|||||||
handlerBar(options)
|
handlerBar(options)
|
||||||
// 处理柱状图
|
// 处理柱状图
|
||||||
chart.setOption(options, true)
|
chart.setOption(options, true)
|
||||||
chart.group = 'group'
|
// chart.group = 'group'
|
||||||
|
emit('group',chart)
|
||||||
// 添加点击事件
|
// 添加点击事件
|
||||||
chart.on('click', function (params) {
|
chart.on('click', function (params) {
|
||||||
if (params.seriesName == '暂态触发点') {
|
if (params.seriesName == '暂态触发点') {
|
||||||
|
|||||||
77
src/styles/vxeTable.css
Normal file
77
src/styles/vxeTable.css
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
.vxe-header--row {
|
||||||
|
background: var(--vxe-table-header-background-color);
|
||||||
|
color: var(--vxe-table-header-font-color);
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.is--checked.vxe-checkbox,
|
||||||
|
.is--checked.vxe-checkbox .vxe-checkbox--icon,
|
||||||
|
.is--checked.vxe-custom--checkbox-option,
|
||||||
|
.is--checked.vxe-custom--checkbox-option .vxe-checkbox--icon,
|
||||||
|
.is--checked.vxe-export--panel-column-option,
|
||||||
|
.is--checked.vxe-export--panel-column-option .vxe-checkbox--icon,
|
||||||
|
.is--checked.vxe-table--filter-option,
|
||||||
|
.is--checked.vxe-table--filter-option .vxe-checkbox--icon,
|
||||||
|
.is--indeterminate.vxe-checkbox,
|
||||||
|
.is--indeterminate.vxe-checkbox .vxe-checkbox--icon,
|
||||||
|
.is--indeterminate.vxe-custom--checkbox-option,
|
||||||
|
.is--indeterminate.vxe-custom--checkbox-option .vxe-checkbox--icon,
|
||||||
|
.is--indeterminate.vxe-export--panel-column-option,
|
||||||
|
.is--indeterminate.vxe-export--panel-column-option .vxe-checkbox--icon,
|
||||||
|
.is--indeterminate.vxe-table--filter-option,
|
||||||
|
.is--indeterminate.vxe-table--filter-option .vxe-checkbox--icon,
|
||||||
|
.vxe-table--render-default .is--checked.vxe-cell--checkbox,
|
||||||
|
.vxe-table--render-default .is--checked.vxe-cell--checkbox .vxe-checkbox--icon,
|
||||||
|
.vxe-table--render-default .is--indeterminate.vxe-cell--checkbox,
|
||||||
|
.vxe-table--render-default .is--indeterminate.vxe-cell--checkbox .vxe-checkbox--icon,
|
||||||
|
.vxe-table--render-default .is--checked.vxe-cell--radio .vxe-radio--icon {
|
||||||
|
color: var(--el-color-primary-light-3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.vxe-checkbox:not(.is--disabled):hover .vxe-checkbox--icon,
|
||||||
|
.vxe-custom--checkbox-option:not(.is--disabled):hover .vxe-checkbox--icon,
|
||||||
|
.vxe-export--panel-column-option:not(.is--disabled):hover .vxe-checkbox--icon,
|
||||||
|
.vxe-table--filter-option:not(.is--disabled):hover .vxe-checkbox--icon,
|
||||||
|
.vxe-table--render-default .vxe-cell--checkbox:not(.is--disabled):hover .vxe-checkbox--icon,
|
||||||
|
.vxe-radio:not(.is--disabled):hover .vxe-radio--icon,
|
||||||
|
.vxe-custom--radio-option:not(.is--disabled):hover .vxe-radio--icon,
|
||||||
|
.vxe-export--panel-column-option:not(.is--disabled):hover .vxe-radio--icon,
|
||||||
|
.vxe-table--filter-option:not(.is--disabled):hover .vxe-radio--icon,
|
||||||
|
.vxe-table--render-default .vxe-cell--radio:not(.is--disabled):hover .vxe-radio--icon {
|
||||||
|
color: var(--el-color-primary-light-5);
|
||||||
|
}
|
||||||
|
|
||||||
|
.vxe-table--tooltip-wrapper {
|
||||||
|
z-index: 10000 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.is--disabled {
|
||||||
|
background-color: var(--vxe-input-disabled-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.vxe-modal--wrapper {
|
||||||
|
z-index: 5000 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.vxe-table--body .vxe-body--row:nth-child(even) {
|
||||||
|
background-color: #f9f9f9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.vxe-table--body .vxe-body--row:nth-child(odd) {
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.default-theme.splitpanes--vertical > .splitpanes__splitter,
|
||||||
|
.default-theme .splitpanes--vertical > .splitpanes__splitter {
|
||||||
|
width: 10px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.default-theme.splitpanes--vertical > .splitpanes__splitter:after,
|
||||||
|
.default-theme .splitpanes--vertical > .splitpanes__splitter:after {
|
||||||
|
background-color: #000 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.default-theme.splitpanes--vertical > .splitpanes__splitter:before,
|
||||||
|
.default-theme .splitpanes--vertical > .splitpanes__splitter:before {
|
||||||
|
background-color: #000 !important;
|
||||||
|
}
|
||||||
1
src/styles/vxeTable.min.css
vendored
Normal file
1
src/styles/vxeTable.min.css
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.vxe-header--row{background:var(--vxe-table-header-background-color);color:var(--vxe-table-header-font-color);font-size:14px}.is--checked.vxe-checkbox,.is--checked.vxe-checkbox .vxe-checkbox--icon,.is--checked.vxe-custom--checkbox-option,.is--checked.vxe-custom--checkbox-option .vxe-checkbox--icon,.is--checked.vxe-export--panel-column-option,.is--checked.vxe-export--panel-column-option .vxe-checkbox--icon,.is--checked.vxe-table--filter-option,.is--checked.vxe-table--filter-option .vxe-checkbox--icon,.is--indeterminate.vxe-checkbox,.is--indeterminate.vxe-checkbox .vxe-checkbox--icon,.is--indeterminate.vxe-custom--checkbox-option,.is--indeterminate.vxe-custom--checkbox-option .vxe-checkbox--icon,.is--indeterminate.vxe-export--panel-column-option,.is--indeterminate.vxe-export--panel-column-option .vxe-checkbox--icon,.is--indeterminate.vxe-table--filter-option,.is--indeterminate.vxe-table--filter-option .vxe-checkbox--icon,.vxe-table--render-default .is--checked.vxe-cell--checkbox,.vxe-table--render-default .is--checked.vxe-cell--checkbox .vxe-checkbox--icon,.vxe-table--render-default .is--indeterminate.vxe-cell--checkbox,.vxe-table--render-default .is--indeterminate.vxe-cell--checkbox .vxe-checkbox--icon,.vxe-table--render-default .is--checked.vxe-cell--radio .vxe-radio--icon{color:var(--el-color-primary-light-3)}.vxe-checkbox:not(.is--disabled):hover .vxe-checkbox--icon,.vxe-custom--checkbox-option:not(.is--disabled):hover .vxe-checkbox--icon,.vxe-export--panel-column-option:not(.is--disabled):hover .vxe-checkbox--icon,.vxe-table--filter-option:not(.is--disabled):hover .vxe-checkbox--icon,.vxe-table--render-default .vxe-cell--checkbox:not(.is--disabled):hover .vxe-checkbox--icon,.vxe-radio:not(.is--disabled):hover .vxe-radio--icon,.vxe-custom--radio-option:not(.is--disabled):hover .vxe-radio--icon,.vxe-export--panel-column-option:not(.is--disabled):hover .vxe-radio--icon,.vxe-table--filter-option:not(.is--disabled):hover .vxe-radio--icon,.vxe-table--render-default .vxe-cell--radio:not(.is--disabled):hover .vxe-radio--icon{color:var(--el-color-primary-light-5)}.vxe-table--tooltip-wrapper{z-index:10000 !important}.is--disabled{background-color:var(--vxe-input-disabled-color)}.vxe-modal--wrapper{z-index:5000 !important}.vxe-table--body .vxe-body--row:nth-child(even){background-color:#f9f9f9}.vxe-table--body .vxe-body--row:nth-child(odd){background-color:#ffffff}.default-theme.splitpanes--vertical>.splitpanes__splitter,.default-theme .splitpanes--vertical>.splitpanes__splitter{width:10px !important}.default-theme.splitpanes--vertical>.splitpanes__splitter:after,.default-theme .splitpanes--vertical>.splitpanes__splitter:after{background-color:#000 !important}.default-theme.splitpanes--vertical>.splitpanes__splitter:before,.default-theme .splitpanes--vertical>.splitpanes__splitter:before{background-color:#000 !important}
|
||||||
@@ -85,3 +85,13 @@
|
|||||||
.vxe-table--body .vxe-body--row:nth-child(odd) {
|
.vxe-table--body .vxe-body--row:nth-child(odd) {
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
}
|
}
|
||||||
|
.default-theme.splitpanes--vertical > .splitpanes__splitter,
|
||||||
|
.default-theme .splitpanes--vertical > .splitpanes__splitter {
|
||||||
|
width: 10px !important;
|
||||||
|
&:after {
|
||||||
|
background-color: #000 !important;
|
||||||
|
}
|
||||||
|
&:before {
|
||||||
|
background-color: #000 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -54,6 +54,8 @@ export const yMethod = (arr: any) => {
|
|||||||
let min = 0
|
let min = 0
|
||||||
maxValue = Math.max(...numList)
|
maxValue = Math.max(...numList)
|
||||||
minValue = Math.min(...numList)
|
minValue = Math.min(...numList)
|
||||||
|
console.log("🚀 ~ yMethod ~ maxValue:", maxValue,minValue)
|
||||||
|
|
||||||
const o=maxValue-minValue
|
const o=maxValue-minValue
|
||||||
min = calculateValue( o,minValue, num, true)
|
min = calculateValue( o,minValue, num, true)
|
||||||
max = calculateValue(o,maxValue, num, false)
|
max = calculateValue(o,maxValue, num, false)
|
||||||
|
|||||||
@@ -2,14 +2,38 @@
|
|||||||
<div>
|
<div>
|
||||||
<splitpanes :style="{ height: height }" class="default-theme" id="navigation-splitpanes">
|
<splitpanes :style="{ height: height }" class="default-theme" id="navigation-splitpanes">
|
||||||
<pane :size="size">
|
<pane :size="size">
|
||||||
<bearingTree ref="TreeRef" :default-expand-all="false"
|
<bearingTree
|
||||||
|
ref="TreeRef"
|
||||||
|
:default-expand-all="false"
|
||||||
:default-expanded-keys="monitoringPoint.state.lineId ? [monitoringPoint.state.lineId] : []"
|
:default-expanded-keys="monitoringPoint.state.lineId ? [monitoringPoint.state.lineId] : []"
|
||||||
:current-node-key="monitoringPoint.state.lineId" @node-click="handleNodeClick"
|
:current-node-key="monitoringPoint.state.lineId"
|
||||||
@init="handleNodeClick"></bearingTree>
|
@node-click="handleNodeClick"
|
||||||
|
@init="handleNodeClick"
|
||||||
|
></bearingTree>
|
||||||
</pane>
|
</pane>
|
||||||
<pane style="background: #fff">
|
<pane style="background: #fff">
|
||||||
<el-form :inline="true" v-show="props.rowList.id == undefined">
|
<TableHeader :showSearch="false">
|
||||||
<el-form-item label="日期">
|
<template #select>
|
||||||
|
<el-form-item label="时间">
|
||||||
|
<DatePicker ref="datePickerRef"></DatePicker>
|
||||||
|
</el-form-item>
|
||||||
|
</template>
|
||||||
|
<template #operation>
|
||||||
|
<el-button type="primary" icon="el-icon-Search" @click="onSubmit">查询</el-button>
|
||||||
|
<el-button type="primary" icon="el-icon-Download" @click="exportTemplate">导出模板</el-button>
|
||||||
|
<el-upload
|
||||||
|
action=""
|
||||||
|
accept=".xlsx"
|
||||||
|
:show-file-list="false"
|
||||||
|
:auto-upload="false"
|
||||||
|
:on-change="choose"
|
||||||
|
>
|
||||||
|
<el-button type="primary" class="ml10" icon="el-icon-Upload">离线导入</el-button>
|
||||||
|
</el-upload>
|
||||||
|
</template>
|
||||||
|
</TableHeader>
|
||||||
|
<!-- <el-form :inline="true" v-show="props.rowList.id == undefined">
|
||||||
|
<el-form-item label="时间">
|
||||||
<DatePicker ref="datePickerRef"></DatePicker>
|
<DatePicker ref="datePickerRef"></DatePicker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
@@ -19,18 +43,23 @@
|
|||||||
:on-change="choose">
|
:on-change="choose">
|
||||||
<el-button type="primary" class="ml10" icon="el-icon-Upload">离线导入</el-button>
|
<el-button type="primary" class="ml10" icon="el-icon-Upload">离线导入</el-button>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
<!-- <el-button type="primary" class="ml10" icon="el-icon-Ticket" @click="modelTrain">
|
|
||||||
模型训练
|
|
||||||
</el-button> -->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form> -->
|
||||||
|
|
||||||
<div v-loading="loading">
|
<div v-loading="loading">
|
||||||
<el-descriptions class="mb10" title="基础数据" :column="2" size="" border>
|
<el-descriptions class="mb10" title="基础数据" :column="2" size="" border>
|
||||||
<el-descriptions-item label="待评估用户" label-align="center" width="25%">
|
<el-descriptions-item label="待评估用户" label-align="center" width="25%">
|
||||||
<el-select v-model="user" placeholder="请选择待评估用户" size="small" filterable
|
<el-select
|
||||||
:disabled="props.rowList.id != undefined" style="width: 240px" value-key="userId"
|
v-model="user"
|
||||||
@change="userChange">
|
placeholder="请选择待评估用户"
|
||||||
|
size="small"
|
||||||
|
filterable
|
||||||
|
:disabled="props.rowList.id != undefined"
|
||||||
|
style="width: 240px"
|
||||||
|
value-key="userId"
|
||||||
|
@change="userChange"
|
||||||
|
>
|
||||||
<el-option v-for="item in userList" :key="item" :label="item.userName" :value="item" />
|
<el-option v-for="item in userList" :key="item" :label="item.userName" :value="item" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
@@ -51,13 +80,19 @@
|
|||||||
<el-tab-pane label="无功功率" name="2" class="mt10">
|
<el-tab-pane label="无功功率" name="2" class="mt10">
|
||||||
<MyEChart :options="options2" />
|
<MyEChart :options="options2" />
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="谐波电流幅值" name="3" class="mt10" style="position: relative;">
|
<el-tab-pane label="谐波电流幅值" name="3" class="mt10" style="position: relative">
|
||||||
|
<el-select
|
||||||
<el-select v-model="harmonicValue"
|
v-model="harmonicValue"
|
||||||
style="position: absolute;z-index:99;top:-10px; right: 185px; width: 80px"
|
style="position: absolute; z-index: 99; top: -10px; right: 185px; width: 80px"
|
||||||
placeholder="请选择谐波" @change="onSubmit">
|
placeholder="请选择谐波"
|
||||||
<el-option v-for="item in harmonic" :key="item.value" :label="item.label"
|
@change="onSubmit"
|
||||||
:value="item.value"></el-option>
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in harmonic"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
|
||||||
<MyEChart :options="options3" />
|
<MyEChart :options="options3" />
|
||||||
@@ -68,7 +103,7 @@
|
|||||||
<vxe-colgroup field="group0" title="模型参数">
|
<vxe-colgroup field="group0" title="模型参数">
|
||||||
<vxe-column field="name" width="180" title="相别"></vxe-column>
|
<vxe-column field="name" width="180" title="相别"></vxe-column>
|
||||||
</vxe-colgroup>
|
</vxe-colgroup>
|
||||||
|
|
||||||
<vxe-column field="a" title="a"></vxe-column>
|
<vxe-column field="a" title="a"></vxe-column>
|
||||||
<vxe-column field="b" title="b"></vxe-column>
|
<vxe-column field="b" title="b"></vxe-column>
|
||||||
<vxe-column field="c" title="c"></vxe-column>
|
<vxe-column field="c" title="c"></vxe-column>
|
||||||
@@ -77,10 +112,19 @@
|
|||||||
</el-tabs>
|
</el-tabs>
|
||||||
<div class="bottomBox">
|
<div class="bottomBox">
|
||||||
<el-row v-if="showAssess">
|
<el-row v-if="showAssess">
|
||||||
<el-col :span="16" :style="`height: calc(${tabsHeight} / 2 - ${props.rowList.id == undefined ? 12 + 45 : 12
|
<el-col
|
||||||
}px)`">
|
:span="16"
|
||||||
<vxe-table style="flex: 1.5" v-bind="defaultAttribute" height="auto" ref="xTable"
|
:style="`height: calc(${tabsHeight} / 2 - ${
|
||||||
:data="tableData">
|
props.rowList.id == undefined ? 12 + 45 : 12
|
||||||
|
}px)`"
|
||||||
|
>
|
||||||
|
<vxe-table
|
||||||
|
style="flex: 1.5"
|
||||||
|
v-bind="defaultAttribute"
|
||||||
|
height="auto"
|
||||||
|
ref="xTable"
|
||||||
|
:data="tableData"
|
||||||
|
>
|
||||||
<vxe-colgroup field="group0" title="等级">
|
<vxe-colgroup field="group0" title="等级">
|
||||||
<vxe-column field="name" width="180" title="结果"></vxe-column>
|
<vxe-column field="name" width="180" title="结果"></vxe-column>
|
||||||
</vxe-colgroup>
|
</vxe-colgroup>
|
||||||
@@ -110,14 +154,22 @@
|
|||||||
</vxe-column>
|
</vxe-column>
|
||||||
</vxe-table>
|
</vxe-table>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8" :style="`height: calc(${tabsHeight} / 2 - ${props.rowList.id == undefined ? 62 + 45 : 62
|
<el-col
|
||||||
}px)`">
|
:span="8"
|
||||||
|
:style="`height: calc(${tabsHeight} / 2 - ${
|
||||||
|
props.rowList.id == undefined ? 62 + 45 : 62
|
||||||
|
}px)`"
|
||||||
|
>
|
||||||
<MyEChart style="flex: 1" :options="pieCharts" />
|
<MyEChart style="flex: 1" :options="pieCharts" />
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-button type="primary" icon="el-icon-Document" @click="assess"
|
<el-button
|
||||||
v-show="showBtn && props.rowList.id == undefined">
|
type="primary"
|
||||||
|
icon="el-icon-Document"
|
||||||
|
@click="assess"
|
||||||
|
v-show="showBtn && props.rowList.id == undefined"
|
||||||
|
>
|
||||||
承载能力评估
|
承载能力评估
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -134,6 +186,7 @@ import { Splitpanes, Pane } from 'splitpanes'
|
|||||||
import bearingTree from '@/components/tree/pqs/bearingTree.vue'
|
import bearingTree from '@/components/tree/pqs/bearingTree.vue'
|
||||||
import DatePicker from '@/components/form/datePicker/index.vue'
|
import DatePicker from '@/components/form/datePicker/index.vue'
|
||||||
import { mainHeight } from '@/utils/layout'
|
import { mainHeight } from '@/utils/layout'
|
||||||
|
import TableHeader from '@/components/table/header/index.vue'
|
||||||
import MyEChart from '@/components/echarts/MyEchart.vue'
|
import MyEChart from '@/components/echarts/MyEchart.vue'
|
||||||
import { useMonitoringPoint } from '@/stores/monitoringPoint'
|
import { useMonitoringPoint } from '@/stores/monitoringPoint'
|
||||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||||
@@ -222,7 +275,6 @@ onMounted(() => {
|
|||||||
const dom = document.getElementById('navigation-splitpanes')
|
const dom = document.getElementById('navigation-splitpanes')
|
||||||
|
|
||||||
if (dom) {
|
if (dom) {
|
||||||
|
|
||||||
size.value = Math.round((180 / (dom.offsetHeight + 60)) * 100)
|
size.value = Math.round((180 / (dom.offsetHeight + 60)) * 100)
|
||||||
}
|
}
|
||||||
datePickerRef.value.setTimeOptions([{ label: '周', value: 4 }])
|
datePickerRef.value.setTimeOptions([{ label: '周', value: 4 }])
|
||||||
@@ -307,7 +359,7 @@ const modelTrain = () => {
|
|||||||
startTime: datePickerRef.value.timeValue[0],
|
startTime: datePickerRef.value.timeValue[0],
|
||||||
time: 0,
|
time: 0,
|
||||||
userId: dictData.state.area[0].id
|
userId: dictData.state.area[0].id
|
||||||
}).then(res => { })
|
}).then(res => {})
|
||||||
}
|
}
|
||||||
|
|
||||||
const setEChart = (val: any, data: any, text: string, name: string) => {
|
const setEChart = (val: any, data: any, text: string, name: string) => {
|
||||||
@@ -316,7 +368,7 @@ const setEChart = (val: any, data: any, text: string, name: string) => {
|
|||||||
let options = {
|
let options = {
|
||||||
title: {
|
title: {
|
||||||
text: text,
|
text: text,
|
||||||
x: 'center',
|
x: 'center'
|
||||||
// textStyle: {
|
// textStyle: {
|
||||||
// fontWeight: 'normal'
|
// fontWeight: 'normal'
|
||||||
// }
|
// }
|
||||||
@@ -337,10 +389,21 @@ const setEChart = (val: any, data: any, text: string, name: string) => {
|
|||||||
},
|
},
|
||||||
backgroundColor: 'rgba(0,0,0,0.55)',
|
backgroundColor: 'rgba(0,0,0,0.55)',
|
||||||
borderWidth: 0,
|
borderWidth: 0,
|
||||||
|
formatter(params: any) {
|
||||||
|
console.log(123, params)
|
||||||
|
|
||||||
|
const xname = params[0].value[0]
|
||||||
|
let str = `${xname}<br>`
|
||||||
|
params.forEach((el: any, index: any) => {
|
||||||
|
str += `${el.marker}${el.seriesName.split('(')[0]}:${
|
||||||
|
el.value[1] ? el.value[1] + ' ' + (el.value[2] || '') : '-'
|
||||||
|
}<br>`
|
||||||
|
})
|
||||||
|
return str
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
xAxis: {
|
xAxis: {
|
||||||
|
|
||||||
// data: data.filter(item => item.phaseType == 'A').map(item => item.time),
|
// data: data.filter(item => item.phaseType == 'A').map(item => item.time),
|
||||||
name: '时间',
|
name: '时间',
|
||||||
type: 'time',
|
type: 'time',
|
||||||
@@ -376,10 +439,9 @@ const setEChart = (val: any, data: any, text: string, name: string) => {
|
|||||||
type: 'line',
|
type: 'line',
|
||||||
// smooth: true,
|
// smooth: true,
|
||||||
symbol: 'none',
|
symbol: 'none',
|
||||||
data:
|
data: data
|
||||||
data
|
.filter(item => item.phaseType == 'A')
|
||||||
.filter(item => item.phaseType == 'A')
|
.map(item => (item.value == 3.1415926 ? '' : [item.time, item.value.toFixed(2)]))
|
||||||
.map(item => (item.value == 3.1415926 ? '' : [item.time, item.value.toFixed(2)]))
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'B相',
|
name: 'B相',
|
||||||
@@ -401,28 +463,30 @@ const setEChart = (val: any, data: any, text: string, name: string) => {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
options: {
|
options: {
|
||||||
dataZoom: [{
|
dataZoom: [
|
||||||
type: 'inside',
|
{
|
||||||
height: 13,
|
type: 'inside',
|
||||||
start: 0,
|
height: 13,
|
||||||
bottom: '20px',
|
start: 0,
|
||||||
end: 10
|
bottom: '20px',
|
||||||
},
|
end: 10
|
||||||
{
|
},
|
||||||
start: 0,
|
{
|
||||||
height: 13,
|
start: 0,
|
||||||
bottom: '20px',
|
height: 13,
|
||||||
end: 10
|
bottom: '20px',
|
||||||
}]
|
end: 10
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val == 1
|
val == 1
|
||||||
? (options1.value = options)
|
? (options1.value = options)
|
||||||
: val == 2
|
: val == 2
|
||||||
? (options2.value = options)
|
? (options2.value = options)
|
||||||
: val == 3
|
: val == 3
|
||||||
? (options3.value = options)
|
? (options3.value = options)
|
||||||
: ''
|
: ''
|
||||||
}
|
}
|
||||||
|
|
||||||
// 承载能力评估
|
// 承载能力评估
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div v-loading="loading" id="trend">
|
<div v-loading="loading" id="trend">
|
||||||
<div :style="height" v-for="(item, index) in searchForm.index" :key="index">
|
<div :style="height" v-for="(item, index) in searchForm.index" :key="index">
|
||||||
<MyEchart ref="MyEchartRef" :options="item.echartsData" :isInterVal="true"></MyEchart>
|
<MyEchart ref="MyEchartRef" :options="item.echartsData" :isInterVal="true" @group="group"></MyEchart>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -163,6 +163,9 @@ const indexOptions: any = ref([
|
|||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
|
const group = (e: any) => {
|
||||||
|
e.group = 'group'
|
||||||
|
}
|
||||||
const change = () => {
|
const change = () => {
|
||||||
height.value = mainHeight(150, searchForm.value.index.length)
|
height.value = mainHeight(150, searchForm.value.index.length)
|
||||||
// let name = searchForm.value.index.map(item => item.name)
|
// let name = searchForm.value.index.map(item => item.name)
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
style="min-height: 210px"
|
style="min-height: 210px"
|
||||||
:style="height"
|
:style="height"
|
||||||
@triggerPoint="triggerPoint"
|
@triggerPoint="triggerPoint"
|
||||||
|
@group="group"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -143,7 +144,7 @@ const typeOptions = ref([
|
|||||||
{ label: 'cp95值', value: 4 }
|
{ label: 'cp95值', value: 4 }
|
||||||
])
|
])
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
datePickerRef.value.setTheDate(5)
|
datePickerRef.value.setTheDate(5)
|
||||||
init()
|
init()
|
||||||
})
|
})
|
||||||
const height: any = ref(mainHeight(200, 1))
|
const height: any = ref(mainHeight(200, 1))
|
||||||
@@ -159,6 +160,9 @@ const checkChange = () => {
|
|||||||
init()
|
init()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const group = (e: any) => {
|
||||||
|
e.group = 'group'
|
||||||
|
}
|
||||||
const init = () => {
|
const init = () => {
|
||||||
if (formData.condition.length == 0) {
|
if (formData.condition.length == 0) {
|
||||||
return ElMessage.warning('请选择指标类型')
|
return ElMessage.warning('请选择指标类型')
|
||||||
|
|||||||
@@ -2,21 +2,28 @@
|
|||||||
<div class="default-main" :style="height">
|
<div class="default-main" :style="height">
|
||||||
<splitpanes style="height: 100%" class="default-theme" id="navigation-splitpanes">
|
<splitpanes style="height: 100%" class="default-theme" id="navigation-splitpanes">
|
||||||
<pane :size="size">
|
<pane :size="size">
|
||||||
<PointTree v-if="showTree" :default-expand-all="false" @node-click="handleNodeClick"
|
<PointTree
|
||||||
@init="handleNodeClick">
|
v-if="showTree"
|
||||||
</PointTree>
|
:default-expand-all="false"
|
||||||
|
@node-click="handleNodeClick"
|
||||||
|
@init="handleNodeClick"
|
||||||
|
></PointTree>
|
||||||
</pane>
|
</pane>
|
||||||
<pane style="background: #fff" :style="height">
|
<pane style="background: #fff" :style="height">
|
||||||
<TableHeader ref="TableHeaderRef" datePicker>
|
<TableHeader ref="TableHeaderRef" datePicker @selectChange="selectChange">
|
||||||
<template v-slot:select>
|
<template v-slot:select>
|
||||||
<el-form-item label="模板策略">
|
<el-form-item label="模板策略">
|
||||||
<el-select v-model="Template" @change="changetype" placeholder="请选择模版" value-key="id">
|
<el-select v-model="Template" @change="changetype" placeholder="请选择模版" value-key="id">
|
||||||
<el-option v-for="item in templatePolicy" :key="item.id" :label="item.name"
|
<el-option
|
||||||
:value="item"></el-option>
|
v-for="item in templatePolicy"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item"
|
||||||
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="报表类型">
|
<el-form-item label="报表类型">
|
||||||
<el-input readonly type='text' value='分析报表'></el-input>
|
<el-input readonly type="text" value="分析报表"></el-input>
|
||||||
<!-- <el-select-->
|
<!-- <el-select-->
|
||||||
<!-- :disabled="true"-->
|
<!-- :disabled="true"-->
|
||||||
<!-- v-model="reportForm"-->
|
<!-- v-model="reportForm"-->
|
||||||
@@ -119,17 +126,27 @@ onMounted(() => {
|
|||||||
size.value = Math.round((180 / dom.offsetHeight) * 100)
|
size.value = Math.round((180 / dom.offsetHeight) * 100)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
getTemplateByDept({ id: dictData.state.area[0].id }).then((res: any) => {
|
getTemplateByDept({ id: dictData.state.area[0].id })
|
||||||
templatePolicy.value = res.data
|
.then((res: any) => {
|
||||||
Template.value = res.data[0]
|
templatePolicy.value = res.data
|
||||||
reportForm.value = res.data[0]?.reportForm
|
Template.value = res.data[0]
|
||||||
showTree.value = true
|
reportForm.value = res.data[0]?.reportForm
|
||||||
}).catch((err: any) => {
|
showTree.value = true
|
||||||
showTree.value = true
|
})
|
||||||
})
|
.catch((err: any) => {
|
||||||
|
showTree.value = true
|
||||||
|
})
|
||||||
const changetype = (val: any) => {
|
const changetype = (val: any) => {
|
||||||
reportForm.value = val.reportForm
|
reportForm.value = val.reportForm
|
||||||
}
|
}
|
||||||
|
const selectChange = () => {
|
||||||
|
console.log('🚀 ~ selectChange ~ tableStore.table.data.lnegth :', tableStore.table.data.length)
|
||||||
|
if (tableStore.table.data.length != 0) {
|
||||||
|
setTimeout(() => {
|
||||||
|
luckysheet && luckysheet?.resize()
|
||||||
|
}, 10)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const handleNodeClick = (data: any, node: any) => {
|
const handleNodeClick = (data: any, node: any) => {
|
||||||
if (data.level == 6) {
|
if (data.level == 6) {
|
||||||
|
|||||||
@@ -62,10 +62,10 @@
|
|||||||
{{ detailData.standardCapacity }}
|
{{ detailData.standardCapacity }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="CT变比">
|
<el-descriptions-item label="CT变比">
|
||||||
{{ detailData.ct1 }}{{ detailData.ct2 ? '/' + detailData.ct2 : '' }}
|
{{ detailData.ct1 }}/{{ detailData.ct2 }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="PT变比">
|
<el-descriptions-item label="PT变比">
|
||||||
{{ detailData.pt1 }}{{ detailData.pt2 ? '/' + detailData.pt2 : '' }}
|
{{ detailData.pt1 }}/{{ detailData.pt2 }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="上送网公司编码">
|
<el-descriptions-item label="上送网公司编码">
|
||||||
{{ detailData.lineId }}
|
{{ detailData.lineId }}
|
||||||
|
|||||||
@@ -61,12 +61,8 @@
|
|||||||
<el-descriptions-item label="基准容量">
|
<el-descriptions-item label="基准容量">
|
||||||
{{ detailData.standardCapacity }}
|
{{ detailData.standardCapacity }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="CT变比">
|
<el-descriptions-item label="CT变比">{{ detailData.ct1 }}/{{ detailData.ct2 }}</el-descriptions-item>
|
||||||
{{ detailData.ct1 }}{{ detailData.ct2 ? '/' + detailData.ct2 : '' }}
|
<el-descriptions-item label="PT变比">{{ detailData.pt1 }}/{{ detailData.pt2 }}</el-descriptions-item>
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="PT变比">
|
|
||||||
{{ detailData.pt1 }}{{ detailData.pt2 ? '/' + detailData.pt2 : '' }}
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="上送网公司编码">
|
<el-descriptions-item label="上送网公司编码">
|
||||||
{{ detailData.lineId }}
|
{{ detailData.lineId }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|||||||
@@ -90,15 +90,17 @@
|
|||||||
<el-descriptions-item label="网络参数">
|
<el-descriptions-item label="网络参数">
|
||||||
{{ infoWindowPoint.ip }}
|
{{ infoWindowPoint.ip }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="PT变比">{{ infoWindowPoint.pt1 / infoWindowPoint.pt2 }}</el-descriptions-item>
|
<el-descriptions-item label="PT变比">
|
||||||
<el-descriptions-item label="CT变比">{{ infoWindowPoint.ct1 / infoWindowPoint.ct2 }}</el-descriptions-item>
|
{{ infoWindowPoint.pt1 }}/{{ infoWindowPoint.pt2 }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="CT变比">
|
||||||
|
{{ infoWindowPoint.ct1 }}/{{ infoWindowPoint.ct2 }}
|
||||||
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="生产厂家">
|
<el-descriptions-item label="生产厂家">
|
||||||
{{ infoWindowPoint.manufacturer }}
|
{{ infoWindowPoint.manufacturer }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="终端状态">
|
<el-descriptions-item label="终端状态">
|
||||||
{{
|
{{ infoWindowPoint.runFlag == 0 ? '投运' : infoWindowPoint.runFlag == 1 ? '检修' : '停运' }}
|
||||||
infoWindowPoint.runFlag == 0 ? '投运' : infoWindowPoint.runFlag == 1 ? '检修' : '停运'
|
|
||||||
}}
|
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="通讯状态">
|
<el-descriptions-item label="通讯状态">
|
||||||
{{ infoWindowPoint.comFlag == 0 ? '中断' : '正常' }}
|
{{ infoWindowPoint.comFlag == 0 ? '中断' : '正常' }}
|
||||||
|
|||||||
@@ -42,13 +42,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="selectBox">
|
<div class="selectBox">
|
||||||
<el-select
|
<el-select @change="pointChange" filterable clearable v-model="lineId" placeholder="输入监测点名称查询">
|
||||||
@change="pointChange"
|
|
||||||
filterable
|
|
||||||
clearable
|
|
||||||
v-model="lineId"
|
|
||||||
placeholder="输入监测点名称查询"
|
|
||||||
>
|
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in areaLineInfo"
|
v-for="item in areaLineInfo"
|
||||||
:key="item.lineId"
|
:key="item.lineId"
|
||||||
@@ -107,8 +101,12 @@
|
|||||||
<el-descriptions-item label="网络参数">
|
<el-descriptions-item label="网络参数">
|
||||||
{{ infoWindowPoint.ip }}
|
{{ infoWindowPoint.ip }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="PT变比">{{ infoWindowPoint.pt1 / infoWindowPoint.pt2 }}</el-descriptions-item>
|
<el-descriptions-item label="PT变比">
|
||||||
<el-descriptions-item label="CT变比">{{ infoWindowPoint.ct1 / infoWindowPoint.ct2 }}</el-descriptions-item>
|
{{ infoWindowPoint.pt1 }}/{{ infoWindowPoint.pt2 }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="CT变比">
|
||||||
|
{{ infoWindowPoint.ct1 }}/{{ infoWindowPoint.ct2 }}
|
||||||
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="生产厂家">
|
<el-descriptions-item label="生产厂家">
|
||||||
{{ infoWindowPoint.manufacturer }}
|
{{ infoWindowPoint.manufacturer }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
@@ -161,7 +159,7 @@ import router from '@/router'
|
|||||||
|
|
||||||
defineOptions({
|
defineOptions({
|
||||||
// name: 'Descentsystem/overview'
|
// name: 'Descentsystem/overview'
|
||||||
})// 添加响应式变量
|
}) // 添加响应式变量
|
||||||
|
|
||||||
const height = mainHeight(20)
|
const height = mainHeight(20)
|
||||||
const adminInfo = useAdminInfo()
|
const adminInfo = useAdminInfo()
|
||||||
@@ -337,7 +335,6 @@ onMounted(() => {
|
|||||||
hackReset.value = true
|
hackReset.value = true
|
||||||
}, 1000)
|
}, 1000)
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|||||||
Reference in New Issue
Block a user