问题修改

This commit is contained in:
cdf
2025-03-06 14:44:33 +08:00
parent 72051ba10e
commit 452e0f3dbb
21 changed files with 1913 additions and 43 deletions

View File

@@ -1508,7 +1508,7 @@ export const asyncRoutes = [
path: '/Accountmanagement/uploadGw',
name: 'pmsUploadGw',
component: () => import('@/views/Account-management/components/uploadGw/index'),
meta: { title: '干扰源台账上送', icon: 'user' }
meta: { title: '主网用户台账', icon: 'user' }
},
{
path: '/pw/user/pwMonitorOnline',

View File

@@ -615,7 +615,8 @@ export default {
//台区台账表头
tableHeaderMonitoring: [
// { prop: 'id', label: '监测点编号', width: 120 },
{ prop: 'name', label: '监测名称', width: 220 },
{ prop: 'monitorObjectName', label: '监测对象名称', width: 250 },
{ prop: 'name', label: '测点名称', width: 220 },
{ prop: 'orgName', label: '组织机构名称', width: 170 },
{ prop: 'operationName', label: '运维单位名称', width: 170 },
{ prop: 'powerrName', label: '变电站名称', width: 120 },
@@ -654,7 +655,7 @@ export default {
{ prop: 'objType', label: '对象类型', width: 170 },
// { prop: "monitorObjectId", label: "监测对象编号", width:170 },
{ prop: 'monitorObjectName', label: '监测对象名称', width: 170 },
{ prop: 'tradeCode', label: '行业分类', width: 170 },
{ prop: 'statisticalInterval', label: '统计间隔(min)', width: 140 },
{ prop: 'terminalCode', label: '关联的监测终端编号', width: 190 },
@@ -1401,7 +1402,7 @@ export default {
const url = window.URL.createObjectURL(blob)
const link = document.createElement('a') // 创建a标签
link.href = url // link.download = "电压暂降事件分析报告"; // 设置下载的文件名
link.download = '上送典型台账.xls' // 设置下载的文件名
link.download = '典型台账.xls' // 设置下载的文件名
document.body.appendChild(link)
link.click() //执行下载
document.body.removeChild(link)

View File

@@ -214,7 +214,7 @@ export default {
tableHeaderLine: [
{ prop: 'midBusId', label: '同源线路编号' },
{ prop: 'midBusName', label: '同源母线名称' },
{ prop: 'name', label: '线路名称' },
{ prop: 'name', label: '名称' },
{ prop: 'scale', label: '电压等级' },
{ prop: 'generatrixName', label: '所属母线' },
{ prop: 'stationName', label: '所属电站' },

View File

@@ -2,8 +2,12 @@
<template>
<div>
<el-form :inline="true" :model="ruleForm" class="demo-form-inline">
<el-form-item>
<Area @click="handleNodeArea"></Area>
</el-form-item>
<el-form-item label="信息查询:">
<el-input v-model.trim="ruleForm.searchValue" placeholder="请输入查询信息" clearable></el-input>
<el-input v-model.trim="ruleForm.searchValue" placeholder="请输入台区名称,所属线路" clearable></el-input>
</el-form-item>
<el-form-item>
@@ -174,8 +178,9 @@ import {
} from '@/api/hbaccountoperation/StationAreaInformation'
import { deptTree } from '@/api/admin/dept'
import { dicData } from '@/assets/commjs/dictypeData'
import Area from '@/views/components/Area/Area.vue'
export default {
components: { PMS_Data, Organization, Operation },
components: { PMS_Data, Organization, Operation,Area },
data() {
return {
vh: '',
@@ -791,6 +796,11 @@ export default {
row.row.isUpToGrid = '是'
}
},
handleNodeArea(data) {
this.ruleForm.orgId = data.id
},
//导出
exportEvent() {
getPowerDistributionAreaList({

File diff suppressed because it is too large Load Diff

View File

@@ -4,10 +4,12 @@
<el-col>
<el-tabs v-model.trim="activeName" @tab-click="handleClick" type="border-card">
<el-tab-pane label="主网监测点台帐" name="second" :style="'height:' + vh + ';'">
<Monitoringpoint v-if="activeName == 'second'"></Monitoringpoint>
</el-tab-pane>
<el-tab-pane label="主网用户台账" name="Typical" :style="'height:' + vh + ';'">
<Typical :flag="1" v-if="activeName == 'Typical'"></Typical>
</el-tab-pane>
<el-tab-pane label="主网用户台账统计" name="statistics" :style="'height:' + vh + ';'">
<statistics v-if="activeName == 'statistics'"></statistics>
</el-tab-pane>
</el-tabs>
</el-col>
@@ -16,18 +18,20 @@
</template>
<script>
import Monitoringpoint from '../../components/Monitoringpoint'
import statistics from '@/views/Account-management/components/uploadGw/statistics'
import Typical from '@/views/Account-management/components/uploadGw/Monitoringpoint'
export default {
name: 'uploadGw',
components: {
Monitoringpoint
Typical,
statistics
},
data() {
return {
vh: '',
activeName: 'first',
activeName: 'Typical',
device: ''
}
},

View File

@@ -0,0 +1,192 @@
<template>
<div>
<el-form :inline="true" :model="ruleForm" class="demo-form-inline">
<el-form-item>
<Area @click="handleNodeArea"></Area>
</el-form-item>
<el-form-item>
<el-button type="primary" class="ml10" icon="el-icon-search" @click="Power">查询</el-button>
<el-button type="primary" icon="el-icon-download" @click="exportEvent">导出</el-button>
</el-form-item>
</el-form>
<template>
<vxe-table
stripe
:data="busData"
:height="height"
border
size="mini"
ref="setInformation"
v-loading="isLoading"
header-cell-class-name="table_header"
>
<vxe-table-column
field="prop0"
title=""
align="center"
min-width="250"
show-overflow="true"
></vxe-table-column>
<vxe-table-colgroup align="center" v-for="(item, index) in tableHeaderPower" :title="item.label">
<vxe-table-column
v-for="(val, index) in item.children"
align="center"
:field="val.prop"
:title="val.label"
:min-width="val.width"
:show-overflow="true"
></vxe-table-column>
</vxe-table-colgroup>
</vxe-table>
</template>
</div>
</template>
<script>
// import bus from "@/assets/js/eventBus";
import { objType } from '@/api/hbaccountoperation/setInformation'
import Area from '@/views/components/Area/Area.vue'
import { dicData } from '@/assets/commjs/dictypeData'
export default {
components: { Area },
data() {
return {
ruleForm: {
deptId: JSON.parse(window.sessionStorage.getItem('Info')).deptId,
up:0
},
height: null,
isLoading: false,
multipleSelection: [],
Voltagelevel: [], //电压等级
//台区台账表头
tableHeaderPower: [],
busData: []
}
},
created() {},
mounted() {
this.setHeight()
window.addEventListener('resize', this.setHeight)
this.Power()
// this.sendMessage()
},
beforeDestroy() {
window.removeEventListener('resize', this.setHeight)
},
computed: {},
methods: {
setHeight() {
this.device = window.devicePixelRatio
this.height = window.sessionStorage.getItem('appheight') - 130
},
handleNodeArea(data) {
this.ruleForm.deptId = data.id
},
//获取类型
//查询母线信息
Power() {
this.isLoading = true
this.busData = []
objType(this.ruleForm).then(res => {
this.tableHeaderPower = [
{
label: '用户分类',
children: []
},
{
label: '典型用户分类',
children: []
}
]
let data = res.data
let result = data[0].reduce(
(acc, item) => {
if (item === '合计') {
acc.push([])
} else {
acc[acc.length - 1].push(item)
}
return acc
},
[[]]
)
result[0].shift()
result[0].push('合计')
Array.from(result[0]).forEach((char, i) => {
this.tableHeaderPower[0].children.push({
prop: `prop${i + 1}`,
label: char,
width: char.length > 9 ? 250 : 130
})
})
result[1].push('合计')
Array.from(result[1]).forEach((char, i) => {
this.tableHeaderPower[1].children.push({
prop: `prop${result[0].length + i + 1}`,
label: char,
width: char.length > 9 ? 250 : 130
})
})
data.shift()
data.forEach((item, ind) => {
// console.log('🚀 ~ objType ~ item:', item)
this.busData.push({})
Array.from(item).forEach((char, i) => {
this.busData[ind][`prop${i}`] = char
})
})
this.isLoading = false
})
},
//导出
exportEvent() {
objType({
deptId: this.ruleForm.deptId
}).then(res => {
this.$refs.setInformation.exportData({
filename: '台账上送统计', // 文件名字
sheetName: 'Sheet1',
type: 'xlsx', //导出文件类型 xlsx 和 csv
useStyle: true,
data: res.data.records, // 数据源 // 过滤那个字段导出
columnFilterMethod: function (column, $columnIndex) {
return !(column.$columnIndex === 0)
}
})
})
}
}
}
</script>
<style lang="less" scoped>
@import url('../../../../styles/comStyle.less');
::v-deep .vxe-table .cell {
text-align: center;
}
::v-deep .el-tabs--border-card > .el-tabs__content {
padding: 10px;
}
.pms {
margin-left: 10px;
}
.obtain {
margin-left: 1220px;
}
</style>

View File

@@ -10,6 +10,11 @@
<el-tab-pane label="主网监测点台帐" name="second" :style="'height:' + vh + ';'">
<Monitoringpoint v-if="activeName == 'second'"></Monitoringpoint>
</el-tab-pane>
<el-tab-pane label="主网监测点限值" name="Zhuwangjiancedianxianzhi" :style="'height:' + vh + ';'">
<Zhuwangjiancedianxianzhi
v-if="activeName == 'Zhuwangjiancedianxianzhi'"
></Zhuwangjiancedianxianzhi>
</el-tab-pane>
<!-- <el-tab-pane
label="配网监测点台帐"
@@ -31,15 +36,15 @@
<PowerGenerationAccount v-if="activeName == 'fifth'" />
</el-tab-pane>
<el-tab-pane label="监测终端台帐" name="sixth" :style="'height:' + vh + ';'">
<el-tab-pane label="终端台帐" name="sixth" :style="'height:' + vh + ';'">
<TerminalAccount v-if="activeName == 'sixth'"></TerminalAccount>
</el-tab-pane>
<el-tab-pane label="电站监测点设置信息" name="seventh" :style="'height:' + vh + ';'">
<el-tab-pane label="电站台账" name="seventh" :style="'height:' + vh + ';'">
<setInformation v-if="activeName == 'seventh'"></setInformation>
</el-tab-pane>
<el-tab-pane label="牵引站信息" name="eighth" :style="'height:' + vh + ';'">
<el-tab-pane label="牵引站台账" name="eighth" :style="'height:' + vh + ';'">
<TractionStationInformation v-if="activeName == 'eighth'"></TractionStationInformation>
</el-tab-pane>
@@ -47,15 +52,11 @@
<transformer v-if="activeName == 'ninth'"></transformer>
</el-tab-pane>
<el-tab-pane label="线台账" name="tenth" :style="'height:' + vh + ';'">
<el-tab-pane label="线台账" name="tenth" :style="'height:' + vh + ';'">
<RouteTable v-if="activeName == 'tenth'"></RouteTable>
</el-tab-pane>
<el-tab-pane label="主网监测点限值" name="Zhuwangjiancedianxianzhi" :style="'height:' + vh + ';'">
<Zhuwangjiancedianxianzhi
v-if="activeName == 'Zhuwangjiancedianxianzhi'"
></Zhuwangjiancedianxianzhi>
</el-tab-pane>
<el-tab-pane label="上送典型台账" name="Typical" :style="'height:' + vh + ';'">
<el-tab-pane label="典型台账" name="Typical" :style="'height:' + vh + ';'">
<Typical :flag="1" v-if="activeName == 'Typical'"></Typical>
</el-tab-pane>
<el-tab-pane label="台账上送统计" name="statistics" :style="'height:' + vh + ';'">

View File

@@ -279,7 +279,7 @@ export default {
name: '超标点占比:%',
minInterval: 1,
axisLine: {
show: true,
lineStyle: {
@@ -644,7 +644,7 @@ export default {
let echartsColor = JSON.parse(window.localStorage.echartsColor)
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -278,7 +278,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -271,7 +271,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -18,9 +18,9 @@
<influence v-if="activeName == '4'"></influence>
</el-tab-pane>
<!-- <el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<dataSheet v-if="activeName == '5'"></dataSheet>
</el-tab-pane> -->
</el-tab-pane>
</el-tabs>
</el-col>
</el-row>

View File

@@ -278,7 +278,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -271,7 +271,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -19,9 +19,9 @@ l
<influence v-if="activeName == '4'"></influence>
</el-tab-pane>
<!-- <el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<dataSheet v-if="activeName == '5'"></dataSheet>
</el-tab-pane> -->
</el-tab-pane>
</el-tabs>
</el-col>
</el-row>

View File

@@ -275,7 +275,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -271,7 +271,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -19,9 +19,9 @@ l
<influence v-if="activeName == '4'"></influence>
</el-tab-pane>
<!-- <el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<el-tab-pane label="详细数据表" name="5" :style="'height:' + vh + ';'">
<dataSheet v-if="activeName == '5'"></dataSheet>
</el-tab-pane> -->
</el-tab-pane>
</el-tabs>
</el-col>
</el-row>

View File

@@ -21,10 +21,10 @@
</el-col>
</el-row>
<el-row :style="`height:${vh};position: relative;`">
<el-radio-group v-model="radio1" class="radioGroup" size="mini" @change="change">
<!-- <el-radio-group v-model="radio1" class="radioGroup" size="mini" @change="change">
<el-radio-button label="1">电压指标</el-radio-button>
<el-radio-button label="2">电流指标</el-radio-button>
</el-radio-group>
</el-radio-group>-->
<el-col :span="24" :style="`height:${vh}`">
<div v-loading="isLoading" id="electr3" style="width: 100%; height: 100%" />
</el-col>
@@ -605,7 +605,7 @@ export default {
let echartsColor = JSON.parse(window.localStorage.echartsColor)
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -278,7 +278,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {

View File

@@ -273,7 +273,7 @@ export default {
let option = {
title: {
text: '各单位指标',
text: '谐波指标',
left: 'center',
top: '5px',
textStyle: {