修改 承载能力bug 完成自定义报表

This commit is contained in:
GGJ
2024-03-28 15:21:58 +08:00
parent 965b18b540
commit e6b1613d91
13 changed files with 469 additions and 69 deletions

View File

@@ -38,15 +38,10 @@
filterable
:disabled="props.rowList.id != undefined"
style="width: 240px"
value-key="id"
value-key="userId"
@change="userChange"
>
<el-option
v-for="item in userList"
:key="item.userId"
:label="item.userName"
:value="item"
/>
<el-option v-for="item in userList" :key="item" :label="item.userName" :value="item" />
</el-select>
</el-descriptions-item>
<el-descriptions-item label="拟接入光伏容量(MVA)" label-align="center" width="25%">
@@ -88,7 +83,7 @@
ref="xTable"
:data="tableData"
>
<vxe-colgroup field="group0" title="等级" align="right">
<vxe-colgroup field="group0" title="等级">
<vxe-column field="name" width="180" title="结果"></vxe-column>
</vxe-colgroup>
<vxe-column field="level1" title="安全">
@@ -165,7 +160,7 @@ import { useDictData } from '@/stores/dictData'
const props = defineProps(['rowList'])
const monitoringPoint = useMonitoringPoint()
const size = ref(26)
const size = ref(20)
const dictData = useDictData()
const datePickerRef = ref()
const height = mainHeight(80).height
@@ -228,7 +223,7 @@ const dotList: any = ref({
onMounted(() => {
const dom = document.getElementById('navigation-splitpanes')
if (dom) {
size.value = Math.round((280 / dom.offsetHeight) * 100)
size.value = Math.round((180 / dom.offsetHeight) * 100)
}
datePickerRef.value.setTimeOptions([{ label: '周', value: 4 }])
datePickerRef.value.setInterval(4)
@@ -246,7 +241,12 @@ const info = () => {
}).then(res => {
userList.value = res.data.records
user.value = userList.value[0] || {}
console.log('🚀 ~ info ~ res.data.records:', res.data.records)
console.log('🚀 ~ info ~ user.value:', user.value)
userData.value = res.data.records[0] || {}
console.log('🚀 ~ info ~ userData.value:', userData.value)
})
}
@@ -268,6 +268,10 @@ const onSubmit = async () => {
options3.value = {}
voltageList.value = []
showBtn.value = false
if (props.rowList.id != undefined) {
user.value = props.rowList
rendering(props.rowList)
}
Promise.all([queryCarryCapacityData(form), queryCarryCapacityQData(form), queryCarryCapacityIData(form)])
.then(res => {
// 有功功率
@@ -279,20 +283,17 @@ const onSubmit = async () => {
for (let k in res[0].data.stringMap) {
voltageList.value.push({
name: k,
c: res[0].data.stringMap[k][0],
a: res[0].data.stringMap[k][1],
b: res[0].data.stringMap[k][2]
c: res[0].data.stringMap[k][0].toFixed(2),
a: res[0].data.stringMap[k][1].toFixed(2),
b: res[0].data.stringMap[k][2].toFixed(2)
})
}
setEChart(1, res[0].data.data)
setEChart(2, res[1].data.data)
setEChart(3, res[2].data.data)
setEChart(1, res[0].data.data, '有功功率', 'w')
setEChart(2, res[1].data.data, '无功功率', 'w')
setEChart(3, res[2].data.data, '谐波电流幅值', 'A')
showBtn.value = true
loading.value = false
// props.rowList.id != undefined
if (props.rowList.id != undefined) {
rendering(props.rowList)
}
})
.catch(err => {
loading.value = false
@@ -313,10 +314,10 @@ const modelTrain = () => {
}).then(res => {})
}
const setEChart = (val: any, data: any) => {
const setEChart = (val: any, data: any, text: string, name: string) => {
let options = {
title: {
text: '在线率统计',
text: text,
x: 'center',
textStyle: {
fontWeight: 'normal'
@@ -324,12 +325,13 @@ const setEChart = (val: any, data: any) => {
},
xAxis: {
data: data.filter(item => item.phaseType == 'A').map(item => item.time),
// name: '时间',
name: '时间',
onZero: false,
position: 'bottom' // 设置 x 轴在底部
},
yAxis: {
type: 'value',
name: name,
max: Math.ceil(Math.max(...data.map(item => item.value))),
min: Math.floor(Math.min(...data.map(item => item.value)))
},
@@ -340,6 +342,7 @@ const setEChart = (val: any, data: any) => {
grid: {
left: '30px'
},
color: ['#FFCC33', '#00CC00', '#CC0000'],
series: [
{
name: 'A',

View File

@@ -5,7 +5,7 @@
</div>
<el-divider content-position="left">光伏电站承载能力评估策略</el-divider>
<vxe-table v-bind="defaultAttribute" :loading="loading" :data="photovoltaicData" :span-method="mergeRowMethod">
<vxe-colgroup field="group0" title="等级" align="right">
<vxe-colgroup field="group0" title="等级">
<vxe-column field="name" width="180" title="结果"></vxe-column>
</vxe-colgroup>
<vxe-column field="comparisonOperators1" title="安全(个)">
@@ -43,7 +43,7 @@
</vxe-table>
<el-divider content-position="left">充电站电加热负荷电气化铁路承载能力评估</el-divider>
<vxe-table v-bind="defaultAttribute" ref="xTable" :loading="loading" :data="tableData">
<vxe-colgroup field="group0" title="等级" align="right">
<vxe-colgroup field="group0" title="等级">
<vxe-column field="name" width="180" title="结果"></vxe-column>
</vxe-colgroup>