pc同步
This commit is contained in:
@ -100,3 +100,21 @@ export function getSevenChargeData(data) {
|
|||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//单站监控 首页 当日功率曲线
|
||||||
|
export function getPointData(data) {
|
||||||
|
return request({
|
||||||
|
url: `/ems/siteMonitor/getPointData`,
|
||||||
|
method: 'get',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取站点包含的设备种类 用来判断单站监控设备监控的菜单栏展示
|
||||||
|
export function getSiteAllDeviceCategory(data) {
|
||||||
|
return request({
|
||||||
|
url: `/ems/siteConfig/getSiteAllDeviceCategory`,
|
||||||
|
method: 'get',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
@ -31,12 +31,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init() {
|
init(today = false) {
|
||||||
const now = new Date(),
|
const now = new Date(),
|
||||||
formatNow = formatDate(now);
|
formatNow = formatDate(now);
|
||||||
const weekAgo = formatDate(new Date(now.getTime() - 7 * 24 * 60 * 60 * 1000))
|
const weekAgo = formatDate(today ? new Date(now.getTime()) : new Date(now.getTime() - 7 * 24 * 60 * 60 *
|
||||||
|
1000))
|
||||||
this.dateRange = [weekAgo, formatNow];
|
this.dateRange = [weekAgo, formatNow];
|
||||||
this.defaultDateRange = [weekAgo, formatNow];
|
this.defaultDateRange = [weekAgo, formatNow];
|
||||||
|
console.log('初始化完成', this.defaultDateRange)
|
||||||
this.$emit('updateDate', this.dateRange)
|
this.$emit('updateDate', this.dateRange)
|
||||||
},
|
},
|
||||||
changeTime(val) {
|
changeTime(val) {
|
||||||
@ -52,6 +54,7 @@
|
|||||||
//重置 设置时间范围为初始化时间段
|
//重置 设置时间范围为初始化时间段
|
||||||
reset() {
|
reset() {
|
||||||
this.resetDate()
|
this.resetDate()
|
||||||
|
this.$emit('reset')
|
||||||
this.$emit('updateDate', this.dateRange)
|
this.$emit('updateDate', this.dateRange)
|
||||||
},
|
},
|
||||||
// 搜索
|
// 搜索
|
||||||
@ -59,17 +62,19 @@
|
|||||||
this.$emit('updateDate', this.dateRange)
|
this.$emit('updateDate', this.dateRange)
|
||||||
},
|
},
|
||||||
timeLine(type) {
|
timeLine(type) {
|
||||||
//baseTime,maxTime 毫秒数
|
if (!this.dateRange || !this.dateRange[0] || !this.dateRange[1]) return
|
||||||
let baseTime = type === 'before' ? new Date(this.dateRange[0]).getTime() - (24 * 60 * 60 * 1000) :
|
const nowStartTimes = new Date(this.dateRange[0]).getTime(),
|
||||||
new Date(this.dateRange[1]).getTime() + (24 * 60 * 60 * 1000),
|
nowEndTimes = new Date(this.dateRange[1]).getTime(),
|
||||||
maxTime = new Date(this.defaultDateRange[1]).getTime()
|
maxTime = new Date(this.defaultDateRange[1]).getTime()
|
||||||
//updateTime 毫秒数
|
const nowDis = nowEndTimes - nowStartTimes //用户当前选择时间差 可能=0
|
||||||
let updateTime = type === 'before' ? baseTime - 7 * 24 * 60 * 60 * 1000 : baseTime + 7 * 24 * 60 * 60 *
|
//baseTime,maxTime 毫秒数
|
||||||
1000
|
const baseDis = 24 * 60 * 60 * 1000
|
||||||
if (type === 'next' && updateTime >= maxTime) updateTime = maxTime
|
const calcDis = nowDis === 0 ? baseDis : nowDis
|
||||||
const start = formatDate(type === 'before' ? updateTime : baseTime)
|
let start = type === 'before' ? nowStartTimes - calcDis : nowStartTimes + calcDis
|
||||||
const end = formatDate(type === 'before' ? baseTime : updateTime)
|
if (start > maxTime) start = maxTime
|
||||||
this.dateRange = [start, end]
|
let end = type === 'before' ? nowEndTimes - calcDis : nowEndTimes + calcDis
|
||||||
|
if (end > maxTime) end = maxTime
|
||||||
|
this.dateRange = [formatDate(start), formatDate(end)]
|
||||||
this.$emit('updateDate', this.dateRange)
|
this.$emit('updateDate', this.dateRange)
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,8 @@
|
|||||||
<view class="page-container">
|
<view class="page-container">
|
||||||
<uni-collapse ref="collapse" accordion v-if="list.length > 0">
|
<uni-collapse ref="collapse" accordion v-if="list.length > 0">
|
||||||
<uni-collapse-item v-for="(item,index) in list" :key="item.deviceId+'bmsdcc'" :open="index===0"
|
<uni-collapse-item v-for="(item,index) in list" :key="item.deviceId+'bmsdcc'" :open="index===0"
|
||||||
:title="`${index+1}#${item.deviceName}`" :class="item.workStatus === '0' ? 'running' :'danger'">
|
:title="`${index+1}#${item.parentDeviceName?`${item.parentDeviceName} —> ` : ''}${item.deviceName}`"
|
||||||
|
:class="item.workStatus === '0' ? 'running' :'danger'">
|
||||||
<view>
|
<view>
|
||||||
<uni-group mode="card" class="work-group">
|
<uni-group mode="card" class="work-group">
|
||||||
<uni-grid :column="3" :showBorder="false">
|
<uni-grid :column="3" :showBorder="false">
|
||||||
@ -103,52 +104,62 @@
|
|||||||
infoData: [{
|
infoData: [{
|
||||||
label: '簇电压',
|
label: '簇电压',
|
||||||
attr: 'clusterVoltage',
|
attr: 'clusterVoltage',
|
||||||
unit: 'V'
|
unit: 'V',
|
||||||
|
pointName: '簇电压'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '可充电量',
|
label: '可充电量',
|
||||||
attr: 'chargeableCapacity',
|
attr: 'chargeableCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '可充电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '累计充电量',
|
label: '累计充电量',
|
||||||
attr: 'totalChargedCapacity',
|
attr: 'totalChargedCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '累计充电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '簇电流',
|
label: '簇电流',
|
||||||
attr: 'clusterCurrent',
|
attr: 'clusterCurrent',
|
||||||
unit: 'A'
|
unit: 'A',
|
||||||
|
pointName: '簇电流'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '可放电量',
|
label: '可放电量',
|
||||||
attr: 'dischargeableCapacity',
|
attr: 'dischargeableCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '可放电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '累计放电量',
|
label: '累计放电量',
|
||||||
attr: 'totalDischargedCapacity',
|
attr: 'totalDischargedCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '累计放电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'SOH',
|
label: 'SOH',
|
||||||
attr: 'soh',
|
attr: 'soh',
|
||||||
unit: '%'
|
unit: '%',
|
||||||
|
pointName: 'SOH'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '平均温度',
|
label: '平均温度',
|
||||||
attr: 'averageTemperature',
|
attr: 'averageTemperature',
|
||||||
unit: '℃'
|
unit: '℃',
|
||||||
|
pointName: '平均温度'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '绝缘电阻',
|
label: '绝缘电阻',
|
||||||
attr: 'insulationResistance',
|
attr: 'insulationResistance',
|
||||||
unit: 'Ω'
|
unit: 'Ω',
|
||||||
|
pointName: '绝缘电阻'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '当前SOC',
|
label: '当前SOC',
|
||||||
attr: 'currentSoc',
|
attr: 'currentSoc',
|
||||||
unit: '%'
|
unit: '%',
|
||||||
|
pointName: '当前SOC'
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@ -50,9 +50,13 @@
|
|||||||
<uni-th align="center">簇电流</uni-th>
|
<uni-th align="center">簇电流</uni-th>
|
||||||
<uni-th align="center">簇SOC</uni-th>
|
<uni-th align="center">簇SOC</uni-th>
|
||||||
<uni-th align="center">单体最高电压</uni-th>
|
<uni-th align="center">单体最高电压</uni-th>
|
||||||
|
<uni-th align="center">电池号码</uni-th>
|
||||||
<uni-th align="center">单体最低电压</uni-th>
|
<uni-th align="center">单体最低电压</uni-th>
|
||||||
|
<uni-th align="center">电池号码</uni-th>
|
||||||
<uni-th align="center">单体最高温度</uni-th>
|
<uni-th align="center">单体最高温度</uni-th>
|
||||||
|
<uni-th align="center">电池号码</uni-th>
|
||||||
<uni-th align="center">单体最低温度</uni-th>
|
<uni-th align="center">单体最低温度</uni-th>
|
||||||
|
<uni-th align="center">电池号码</uni-th>
|
||||||
</uni-tr>
|
</uni-tr>
|
||||||
<!-- 表格数据行 -->
|
<!-- 表格数据行 -->
|
||||||
<uni-tr v-for="(tableItem, tableIndex) in item.batteryDataList"
|
<uni-tr v-for="(tableItem, tableIndex) in item.batteryDataList"
|
||||||
@ -62,9 +66,13 @@
|
|||||||
<uni-td align="center">{{tableItem.clusterCurrent}}A</uni-td>
|
<uni-td align="center">{{tableItem.clusterCurrent}}A</uni-td>
|
||||||
<uni-td align="center">{{tableItem.currentSoc}}%</uni-td>
|
<uni-td align="center">{{tableItem.currentSoc}}%</uni-td>
|
||||||
<uni-td align="center">{{tableItem.maxCellVoltage}}V</uni-td>
|
<uni-td align="center">{{tableItem.maxCellVoltage}}V</uni-td>
|
||||||
|
<uni-td align="center">{{tableItem.maxCellVoltageId}}</uni-td>
|
||||||
<uni-td align="center">{{tableItem.minCellVoltage}}V</uni-td>
|
<uni-td align="center">{{tableItem.minCellVoltage}}V</uni-td>
|
||||||
|
<uni-td align="center">{{tableItem.maxCellVoltageId}}</uni-td>
|
||||||
<uni-td align="center">{{tableItem.maxCellTemp}}℃</uni-td>
|
<uni-td align="center">{{tableItem.maxCellTemp}}℃</uni-td>
|
||||||
|
<uni-td align="center">{{tableItem.maxCellTempId}}</uni-td>
|
||||||
<uni-td align="center">{{tableItem.minCellTemp}}℃</uni-td>
|
<uni-td align="center">{{tableItem.minCellTemp}}℃</uni-td>
|
||||||
|
<uni-td align="center">{{tableItem.minCellTempId}}</uni-td>
|
||||||
</uni-tr>
|
</uni-tr>
|
||||||
</uni-table>
|
</uni-table>
|
||||||
</uni-group>
|
</uni-group>
|
||||||
@ -101,52 +109,62 @@
|
|||||||
infoData: [{
|
infoData: [{
|
||||||
label: '电池堆总电压',
|
label: '电池堆总电压',
|
||||||
attr: 'stackVoltage',
|
attr: 'stackVoltage',
|
||||||
unit: 'V'
|
unit: 'V',
|
||||||
|
pointName: '电池堆电压'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '可充电量',
|
label: '可充电量',
|
||||||
attr: 'availableChargeCapacity',
|
attr: 'availableChargeCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '可充电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '累计充电量',
|
label: '累计充电量',
|
||||||
attr: 'totalChargeCapacity',
|
attr: 'totalChargeCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '累计充电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '电池堆总电流',
|
label: '电池堆总电流',
|
||||||
attr: 'stackCurrent',
|
attr: 'stackCurrent',
|
||||||
unit: 'A'
|
unit: 'A',
|
||||||
|
pointName: '电池堆总电流'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '可放电量',
|
label: '可放电量',
|
||||||
attr: 'availableDischargeCapacity',
|
attr: 'availableDischargeCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '可放电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '累计放电量',
|
label: '累计放电量',
|
||||||
attr: 'totalDischargeCapacity',
|
attr: 'totalDischargeCapacity',
|
||||||
unit: 'kWh'
|
unit: 'kWh',
|
||||||
|
pointName: '累计放电量'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'SOH',
|
label: 'SOH',
|
||||||
attr: 'stackSoh',
|
attr: 'stackSoh',
|
||||||
unit: '%'
|
unit: '%',
|
||||||
|
pointName: 'SOH'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '平均温度',
|
label: '平均温度',
|
||||||
attr: 'operatingTemp',
|
attr: 'operatingTemp',
|
||||||
unit: '℃'
|
unit: '℃',
|
||||||
|
pointName: '平均温度'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '绝缘电阻',
|
label: '绝缘电阻',
|
||||||
attr: 'stackInsulationResistance',
|
attr: 'stackInsulationResistance',
|
||||||
unit: 'Ω'
|
unit: 'Ω',
|
||||||
|
pointName: '绝缘电阻'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '当前SOC',
|
label: '当前SOC',
|
||||||
attr: 'stackSoc',
|
attr: 'stackSoc',
|
||||||
unit: '%'
|
unit: '%',
|
||||||
|
pointName: '当前SOC'
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@ -1,90 +1,39 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="page-container">
|
<view class="page-container">
|
||||||
<uni-collapse ref="collapse">
|
<uni-collapse ref="collapse">
|
||||||
<!-- 总表 -->
|
<uni-collapse-item open v-for="(item,index) in list" :key="index+'dbList'"
|
||||||
<uni-collapse-item open :class="zbInfo.emsCommunicationStatus !== '0' ? 'danger' :'running'">
|
:class="item.emsCommunicationStatus !== '0' ? 'danger' :'running'">
|
||||||
<template v-slot:title>
|
<template v-slot:title>
|
||||||
<view class="title-row">
|
<view class="title-row">
|
||||||
<view class="title">{{`1#${zbInfo.deviceName || ''}`}}</view>
|
<view class="title">{{index+1}}#{{item.deviceName || ''}}</view>
|
||||||
<view class="msg">
|
<view class="msg">
|
||||||
<view>{{communicationStatusOptions[zbInfo.emsCommunicationStatus] || ''}}</view>
|
<view>{{communicationStatusOptions[item.emsCommunicationStatus] || ''}}</view>
|
||||||
<view>数据更新时间:{{zbInfo.dataUpdateTime || ''}}</view>
|
<view>数据更新时间:{{item.dataUpdateTime || ''}}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<uni-group :title=" item.category" mode="card" v-for="(item,index) in zbInfo.loadDataDetailInfo"
|
<uni-group mode="card">
|
||||||
:key="index+'zbInfo'">
|
<uni-grid :column="2" showBorder class="info-grid">
|
||||||
<uni-row>
|
<uni-grid-item v-for="(tempDataItem,tempDataIndex) in
|
||||||
<uni-col :span="8">
|
deviceIdTypeMsg[item.deviceId]" :key="tempDataIndex+'dbTempData'">
|
||||||
<view>总/kWh</view>
|
<view class="grid-item-box">
|
||||||
</uni-col>
|
<view class="title">{{tempDataItem.name}}</view>
|
||||||
<uni-col :span="16">
|
<text class="text">{{item[tempDataItem.attr]}}
|
||||||
<view>{{item.totalKwh}}</view>
|
<!-- <text v-if="infoDataItem.unit" v-html="infoDataItem.unit"></text> -->
|
||||||
</uni-col>
|
</text>
|
||||||
</uni-row>
|
|
||||||
<uni-row>
|
|
||||||
<uni-col :span="8">
|
|
||||||
<view>尖/kWh</view>
|
|
||||||
</uni-col>
|
|
||||||
<uni-col :span="16">
|
|
||||||
<view>{{item.peakKwh}}</view>
|
|
||||||
</uni-col>
|
|
||||||
</uni-row>
|
|
||||||
<uni-row>
|
|
||||||
<uni-col :span="8">
|
|
||||||
<view>峰/kWh</view>
|
|
||||||
</uni-col>
|
|
||||||
<uni-col :span="16">
|
|
||||||
<view>{{item.highKwh}}</view>
|
|
||||||
</uni-col>
|
|
||||||
</uni-row>
|
|
||||||
<uni-row>
|
|
||||||
<uni-col :span="8">
|
|
||||||
<view>平/kWh</view>
|
|
||||||
</uni-col>
|
|
||||||
<uni-col :span="16">
|
|
||||||
<view>{{item.flatKwh}}</view>
|
|
||||||
</uni-col>
|
|
||||||
</uni-row>
|
|
||||||
<uni-row>
|
|
||||||
<uni-col :span="8">
|
|
||||||
<view>谷/kWh</view>
|
|
||||||
</uni-col>
|
|
||||||
<uni-col :span="16">
|
|
||||||
<view>{{item.valleyKwh}}</view>
|
|
||||||
</uni-col>
|
|
||||||
</uni-row>
|
|
||||||
</uni-group>
|
|
||||||
</uni-collapse-item>
|
|
||||||
<!-- 储能表 -->
|
|
||||||
<uni-collapse-item open :class="cnbInfo.emsCommunicationStatus !== '0' ? 'danger' :'running'">
|
|
||||||
<template v-slot:title>
|
|
||||||
<view class="title-row">
|
|
||||||
<view class="title">{{`2#${cnbInfo.deviceName || ''}`}}</view>
|
|
||||||
<view class="msg">
|
|
||||||
<view>{{communicationStatusOptions[cnbInfo.emsCommunicationStatus] || ''}}</view>
|
|
||||||
<view>数据更新时间:{{cnbInfo.dataUpdateTime || ''}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</uni-grid-item>
|
||||||
</template>
|
</uni-grid>
|
||||||
<uni-group :title="item.category" mode="card" v-for="(item,index) in cnbInfo.meteDataDetailInfo"
|
|
||||||
:key="index+'cnbInfo'">
|
<!-- <uni-row v-for="(tempDataItem,tempDataIndex) in deviceIdTypeMsg[item.deviceId]"
|
||||||
<uni-row>
|
:key="tempDataIndex+'dbTempData'">
|
||||||
<uni-col :span="8">
|
<uni-col :span="8">
|
||||||
<view>有功功率</view>
|
<view>{{tempDataItem.name}}</view>
|
||||||
</uni-col>
|
</uni-col>
|
||||||
<uni-col :span="16">
|
<uni-col :span="16">
|
||||||
<view>{{item.activePower}}</view>
|
<view>{{item[tempDataItem.attr]}}</view>
|
||||||
</uni-col>
|
</uni-col>
|
||||||
</uni-row>
|
</uni-row> -->
|
||||||
<uni-row>
|
|
||||||
<uni-col :span="8">
|
|
||||||
<view>无功功率</view>
|
|
||||||
</uni-col>
|
|
||||||
<uni-col :span="16">
|
|
||||||
<view>{{item.reactivePower}}</view>
|
|
||||||
</uni-col>
|
|
||||||
</uni-row>
|
|
||||||
</uni-group>
|
</uni-group>
|
||||||
</uni-collapse-item>
|
</uni-collapse-item>
|
||||||
</uni-collapse>
|
</uni-collapse>
|
||||||
@ -110,8 +59,93 @@
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
siteId: '',
|
siteId: '',
|
||||||
zbInfo: {},
|
list: [],
|
||||||
cnbInfo: {},
|
deviceIdTypeMsg: {
|
||||||
|
'LOAD': [{
|
||||||
|
name: '正向有功电能',
|
||||||
|
attr: 'forwardActive',
|
||||||
|
pointName: '正向有功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '反向有功电能',
|
||||||
|
attr: 'reverseActive',
|
||||||
|
pointName: '反向有功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '正向无功电能',
|
||||||
|
attr: 'forwardReactive',
|
||||||
|
pointName: '正向无功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '反向无功电能',
|
||||||
|
attr: 'reverseReactive',
|
||||||
|
pointName: '反向无功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '有功功率',
|
||||||
|
attr: 'activePower',
|
||||||
|
pointName: '总有功功率'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '无功功率',
|
||||||
|
attr: 'reactivePower',
|
||||||
|
pointName: '总无功功率'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'METE': [{
|
||||||
|
name: '正向有功电能',
|
||||||
|
attr: 'forwardActive',
|
||||||
|
pointName: '正向有功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '反向有功电能',
|
||||||
|
attr: 'reverseActive',
|
||||||
|
pointName: '反向有功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '正向无功电能',
|
||||||
|
attr: 'forwardReactive',
|
||||||
|
pointName: '正向无功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '反向无功电能',
|
||||||
|
attr: 'reverseReactive',
|
||||||
|
pointName: '反向无功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '有功功率',
|
||||||
|
attr: 'activePower',
|
||||||
|
pointName: '总有功功率'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '无功功率',
|
||||||
|
attr: 'reactivePower',
|
||||||
|
pointName: '总无功功率'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'METEGF': [{
|
||||||
|
name: '有功电能',
|
||||||
|
attr: 'activeEnergy',
|
||||||
|
pointName: '有功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '无功电能',
|
||||||
|
attr: 'reactiveEnergy',
|
||||||
|
pointName: '无功电能'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '有功功率',
|
||||||
|
attr: 'activePower',
|
||||||
|
pointName: '总有功功率'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '无功功率',
|
||||||
|
attr: 'reactivePower',
|
||||||
|
pointName: '总无功功率'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -120,8 +154,7 @@
|
|||||||
getAmmeterDataList({
|
getAmmeterDataList({
|
||||||
siteId: this.siteId
|
siteId: this.siteId
|
||||||
}).then(response => {
|
}).then(response => {
|
||||||
this.zbInfo = JSON.parse(JSON.stringify(response?.data?.ammeterLoadData || {}));
|
this.list = response?.data || []
|
||||||
this.cnbInfo = JSON.parse(JSON.stringify(response?.data?.ammeterMeteData || {}));
|
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.$refs.collapse.resize()
|
this.$refs.collapse.resize()
|
||||||
@ -155,7 +188,52 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.grid-item-box {
|
||||||
|
flex: 1;
|
||||||
|
// position: relative;
|
||||||
|
/* #ifndef APP-NVUE */
|
||||||
|
display: flex;
|
||||||
|
/* #endif */
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 10px;
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 14px;
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text {
|
||||||
|
margin-top: 10px;
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #666;
|
||||||
|
overflow-wrap: anywhere;
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-danger {
|
||||||
|
color: #FC6B69;
|
||||||
|
}
|
||||||
|
|
||||||
|
.status-running {
|
||||||
|
color: #05AEA3;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
::v-deep {
|
::v-deep {
|
||||||
|
.info-grid {
|
||||||
|
.uni-grid-item {
|
||||||
|
height: 80px !important;
|
||||||
|
|
||||||
|
.grid-item-box {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.uni-group__title {
|
.uni-group__title {
|
||||||
background-color: #959595;
|
background-color: #959595;
|
||||||
|
|
||||||
|
|||||||
@ -66,7 +66,7 @@
|
|||||||
<uni-popup ref="popup" type="center" :animation="false" :mask-click="false" :is-mask-click="false"
|
<uni-popup ref="popup" type="center" :animation="false" :mask-click="false" :is-mask-click="false"
|
||||||
@maskClick="maskClick">
|
@maskClick="maskClick">
|
||||||
<view class="chart-popup" v-if="showChart">
|
<view class="chart-popup" v-if="showChart">
|
||||||
<uni-datetime-picker v-model="range" type="daterange" :end="end" rangeSeparator="至" @change="changeTime"
|
<date-range-select ref="chartDateRangeSelect" @updateDate="updateChartDate"
|
||||||
style="margin-bottom: 10px;" />
|
style="margin-bottom: 10px;" />
|
||||||
<view class="chart-container">
|
<view class="chart-container">
|
||||||
<qiun-data-charts type="line" :reload="showChart" :optsWatch='false' :opts="options"
|
<qiun-data-charts type="line" :reload="showChart" :optsWatch='false' :opts="options"
|
||||||
@ -100,6 +100,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
// import Chart from './Chart.vue'
|
// import Chart from './Chart.vue'
|
||||||
|
import DateRangeSelect from './../DateRangeSelect.vue'
|
||||||
import {
|
import {
|
||||||
getStackNameList,
|
getStackNameList,
|
||||||
getClusterNameList,
|
getClusterNameList,
|
||||||
@ -110,9 +111,6 @@
|
|||||||
mapState
|
mapState
|
||||||
} from 'vuex'
|
} from 'vuex'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
|
||||||
// Chart
|
|
||||||
},
|
|
||||||
computed: {
|
computed: {
|
||||||
...mapState({
|
...mapState({
|
||||||
workStatusOptions: (state) =>
|
workStatusOptions: (state) =>
|
||||||
@ -121,6 +119,9 @@
|
|||||||
state.ems.communicationStatusOptions,
|
state.ems.communicationStatusOptions,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
components: {
|
||||||
|
DateRangeSelect
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
@ -182,7 +183,6 @@
|
|||||||
deviceId
|
deviceId
|
||||||
}, dataType) {
|
}, dataType) {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.range = []
|
|
||||||
this.chartSearchData = {
|
this.chartSearchData = {
|
||||||
clusterDeviceId,
|
clusterDeviceId,
|
||||||
deviceId,
|
deviceId,
|
||||||
@ -191,11 +191,13 @@
|
|||||||
this.$refs.popup.open()
|
this.$refs.popup.open()
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.showChart = true
|
this.showChart = true
|
||||||
this.getChartData()
|
this.$nextTick(() => {
|
||||||
}, 100)
|
this.$refs.chartDateRangeSelect.init()
|
||||||
|
})
|
||||||
|
}, 500)
|
||||||
},
|
},
|
||||||
changeTime(val) {
|
updateChartDate(data) {
|
||||||
this.range = val || []
|
this.range = data || []
|
||||||
this.getChartData()
|
this.getChartData()
|
||||||
},
|
},
|
||||||
getChartData() {
|
getChartData() {
|
||||||
|
|||||||
@ -28,7 +28,7 @@
|
|||||||
<uni-section title="工作台" type="line" :titleFontSize="titleFontSize" class="sections-list">
|
<uni-section title="工作台" type="line" :titleFontSize="titleFontSize" class="sections-list">
|
||||||
<view class="grid-body">
|
<view class="grid-body">
|
||||||
<uni-grid :column="4" :showBorder="false" @change="toDetail">
|
<uni-grid :column="4" :showBorder="false" @change="toDetail">
|
||||||
<uni-grid-item v-for="(item,index) in gridList" :index="index" :key="index+'work'">
|
<uni-grid-item v-for="(item,index) in siteGirdList" :index="index" :key="index+'work'">
|
||||||
<view class="grid-item-box">
|
<view class="grid-item-box">
|
||||||
<view class="icon iconfont" :class="item.icon" size="30"></view>
|
<view class="icon iconfont" :class="item.icon" size="30"></view>
|
||||||
<text class="text">{{item.text}}</text>
|
<text class="text">{{item.text}}</text>
|
||||||
@ -50,7 +50,7 @@
|
|||||||
<date-range-select ref="activeChartDateRangeSelect" @updateDate="updateActiveChartDate" />
|
<date-range-select ref="activeChartDateRangeSelect" @updateDate="updateActiveChartDate" />
|
||||||
<view style="width:100%;height: 250px;">
|
<view style="width:100%;height: 250px;">
|
||||||
<qiun-data-charts type="line" :chartData="activeChartData" :optsWatch='false' :inScrollView="true"
|
<qiun-data-charts type="line" :chartData="activeChartData" :optsWatch='false' :inScrollView="true"
|
||||||
:pageScrollTop="pageScrollTop" :opts="options" :ontouch="true" />
|
:pageScrollTop="pageScrollTop" :opts="glqxOptions" :ontouch="true" />
|
||||||
</view>
|
</view>
|
||||||
</uni-section>
|
</uni-section>
|
||||||
</view>
|
</view>
|
||||||
@ -62,6 +62,8 @@
|
|||||||
getAllSites,
|
getAllSites,
|
||||||
getSingleSiteBaseInfo,
|
getSingleSiteBaseInfo,
|
||||||
getSevenChargeData,
|
getSevenChargeData,
|
||||||
|
getPointData,
|
||||||
|
getSiteAllDeviceCategory
|
||||||
} from '@/api/ems/site.js'
|
} from '@/api/ems/site.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
@ -75,6 +77,20 @@
|
|||||||
weekChartData: {},
|
weekChartData: {},
|
||||||
activeChartData: {},
|
activeChartData: {},
|
||||||
pageScrollTop: 0,
|
pageScrollTop: 0,
|
||||||
|
glqxOptions: {
|
||||||
|
dataLabel: false,
|
||||||
|
enableScroll: true,
|
||||||
|
xAxis: {
|
||||||
|
scrollShow: true,
|
||||||
|
itemCount: 3,
|
||||||
|
disableGrid: true
|
||||||
|
},
|
||||||
|
// update: true,
|
||||||
|
// duration: 2,
|
||||||
|
// animation: false,
|
||||||
|
// enableScroll: true,
|
||||||
|
// padding: [10, 15, 10, 15]
|
||||||
|
},
|
||||||
options: {
|
options: {
|
||||||
dataLabel: false,
|
dataLabel: false,
|
||||||
enableScroll: true,
|
enableScroll: true,
|
||||||
@ -89,9 +105,8 @@
|
|||||||
// enableScroll: true,
|
// enableScroll: true,
|
||||||
// padding: [10, 15, 10, 15]
|
// padding: [10, 15, 10, 15]
|
||||||
},
|
},
|
||||||
|
|
||||||
// 图表数据结束
|
// 图表数据结束
|
||||||
|
deviceCategoryOptions: [], //当前站点包含的设备类别
|
||||||
titleFontSize: '16px',
|
titleFontSize: '16px',
|
||||||
siteType: 1,
|
siteType: 1,
|
||||||
siteTypeOptions: [{
|
siteTypeOptions: [{
|
||||||
@ -131,30 +146,40 @@
|
|||||||
page: 'bmszl',
|
page: 'bmszl',
|
||||||
icon: 'icon-BMS',
|
icon: 'icon-BMS',
|
||||||
text: 'BMS总览',
|
text: 'BMS总览',
|
||||||
|
categoryName: 'STACK'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
page: 'bmsdcc',
|
page: 'bmsdcc',
|
||||||
icon: 'icon-a-dianchicunengliangkuai',
|
icon: 'icon-a-dianchicunengliangkuai',
|
||||||
text: 'BMS电池簇',
|
text: 'BMS电池簇',
|
||||||
|
categoryName: 'CLUSTER'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
page: 'pcs',
|
page: 'pcs',
|
||||||
icon: 'icon-PCS',
|
icon: 'icon-PCS',
|
||||||
text: 'PCS',
|
text: 'PCS',
|
||||||
|
categoryName: 'PCS'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
page: 'db',
|
page: 'db',
|
||||||
icon: 'icon-dianbiao4',
|
icon: 'icon-dianbiao4',
|
||||||
text: '电表',
|
text: '电表',
|
||||||
|
categoryName: 'AMMETER'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
page: 'dtdc',
|
page: 'dtdc',
|
||||||
icon: 'icon-dantidianchi',
|
icon: 'icon-dantidianchi',
|
||||||
text: '单体电池',
|
text: '单体电池',
|
||||||
|
categoryName: 'BATTERY'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
siteGirdList() {
|
||||||
|
return this.gridList.filter(i => this.deviceCategoryOptions.includes(i.categoryName))
|
||||||
|
}
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 更新一周冲放曲线时间范围 重置图表
|
// 更新一周冲放曲线时间范围 重置图表
|
||||||
updateWeekChartDate(data) {
|
updateWeekChartDate(data) {
|
||||||
@ -163,9 +188,8 @@
|
|||||||
},
|
},
|
||||||
// 更新当日功率曲线时间范围 重置图表
|
// 更新当日功率曲线时间范围 重置图表
|
||||||
updateActiveChartDate(data) {
|
updateActiveChartDate(data) {
|
||||||
this.weekChartTimeRange = data || []
|
this.activeChartTimeRange = data || []
|
||||||
//todo 更新当日功率曲线 接口还没定
|
this.siteId && this.getGVQXData()
|
||||||
// this.siteId && this.getWeekChartData()
|
|
||||||
},
|
},
|
||||||
toDetail(e) {
|
toDetail(e) {
|
||||||
if (!this.siteId) return uni.showToast({
|
if (!this.siteId) return uni.showToast({
|
||||||
@ -181,10 +205,15 @@
|
|||||||
if (id === this.siteId) return
|
if (id === this.siteId) return
|
||||||
this.siteId = id
|
this.siteId = id
|
||||||
if (this.siteType === 1) {
|
if (this.siteType === 1) {
|
||||||
|
this.updateSiteInfo()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
updateSiteInfo() {
|
||||||
|
if (!this.siteId) return
|
||||||
this.getSiteBaseInfo()
|
this.getSiteBaseInfo()
|
||||||
this.getWeekChartData()
|
this.getWeekChartData()
|
||||||
//todo 更新当日功率曲线
|
this.getGVQXData()
|
||||||
}
|
this.getSiteDeviceCategory()
|
||||||
},
|
},
|
||||||
selectedSiteType(id) {
|
selectedSiteType(id) {
|
||||||
if (id === this.siteType) return
|
if (id === this.siteType) return
|
||||||
@ -194,14 +223,6 @@
|
|||||||
this.weekChartData = {}
|
this.weekChartData = {}
|
||||||
this.activeChartData = {}
|
this.activeChartData = {}
|
||||||
},
|
},
|
||||||
getSiteBaseInfo() {
|
|
||||||
getSingleSiteBaseInfo({
|
|
||||||
siteId: this.siteId
|
|
||||||
}).then(response => {
|
|
||||||
console.log('获取站点基本信息', response)
|
|
||||||
this.baseInfo = response?.data || {}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getSiteList() {
|
getSiteList() {
|
||||||
getAllSites().then(response => {
|
getAllSites().then(response => {
|
||||||
const data = response?.data || []
|
const data = response?.data || []
|
||||||
@ -215,12 +236,25 @@
|
|||||||
// 设置默认展示的站点
|
// 设置默认展示的站点
|
||||||
if (data.length > 0) {
|
if (data.length > 0) {
|
||||||
this.siteId = data[0].siteId
|
this.siteId = data[0].siteId
|
||||||
this.getSiteBaseInfo()
|
this.updateSiteInfo()
|
||||||
this.getWeekChartData()
|
|
||||||
//todo 更新当日功率曲线
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
getSiteBaseInfo() {
|
||||||
|
getSingleSiteBaseInfo({
|
||||||
|
siteId: this.siteId
|
||||||
|
}).then(response => {
|
||||||
|
console.log('获取站点基本信息', response)
|
||||||
|
this.baseInfo = response?.data || {}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getSiteDeviceCategory() {
|
||||||
|
getSiteAllDeviceCategory({
|
||||||
|
siteId: this.siteId
|
||||||
|
}).then(response => {
|
||||||
|
this.deviceCategoryOptions = response?.data || []
|
||||||
|
})
|
||||||
|
},
|
||||||
handleDate(date) {
|
handleDate(date) {
|
||||||
if (!date) return date
|
if (!date) return date
|
||||||
const time = new Date(date)
|
const time = new Date(date)
|
||||||
@ -228,6 +262,64 @@
|
|||||||
day = time.getDate()
|
day = time.getDate()
|
||||||
return `${month<10?'0'+month : month}/${day<10 ? '0'+day : day}`
|
return `${month<10?'0'+month : month}/${day<10 ? '0'+day : day}`
|
||||||
},
|
},
|
||||||
|
getGVQXData() {
|
||||||
|
this.$refs.activeChartDateRangeSelect.showBtnLoading(true)
|
||||||
|
getPointData({
|
||||||
|
siteId: this.siteId,
|
||||||
|
startDate: this.activeChartTimeRange[0],
|
||||||
|
endDate: this.activeChartTimeRange[1]
|
||||||
|
}).then(response => {
|
||||||
|
console.log('当日功率曲线', response)
|
||||||
|
let data = response?.data || [],
|
||||||
|
categories = [],
|
||||||
|
source = [{
|
||||||
|
name: '电网功率',
|
||||||
|
attr: 'gridPower',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '负载功率',
|
||||||
|
attr: 'loadPower',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '储能功率',
|
||||||
|
attr: 'storagePower',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '光伏功率',
|
||||||
|
attr: 'pvPower',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'soc平均值',
|
||||||
|
attr: 'avgSoc',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'soh平均值',
|
||||||
|
attr: 'avgSoh',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '电池平均温度平均值平均值',
|
||||||
|
attr: 'avgTemp',
|
||||||
|
data: []
|
||||||
|
},
|
||||||
|
|
||||||
|
]
|
||||||
|
data.forEach((item) => {
|
||||||
|
categories.push(item.statisDate || undefined)
|
||||||
|
source.forEach(i => i.data.push(item[i.attr]))
|
||||||
|
})
|
||||||
|
this.activeChartData = JSON.parse(JSON.stringify({
|
||||||
|
categories,
|
||||||
|
series: source
|
||||||
|
}))
|
||||||
|
}).finally(() => this.$refs.activeChartDateRangeSelect.showBtnLoading(false))
|
||||||
|
|
||||||
|
},
|
||||||
getWeekChartData() {
|
getWeekChartData() {
|
||||||
this.$refs.weekChartDateRangeSelect.showBtnLoading(true)
|
this.$refs.weekChartDateRangeSelect.showBtnLoading(true)
|
||||||
getSevenChargeData({
|
getSevenChargeData({
|
||||||
@ -264,7 +356,7 @@
|
|||||||
mounted() {
|
mounted() {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.weekChartDateRangeSelect.init()
|
this.$refs.weekChartDateRangeSelect.init()
|
||||||
this.$refs.activeChartDateRangeSelect.init()
|
this.$refs.activeChartDateRangeSelect.init(true)
|
||||||
if (this.siteType === 1) {
|
if (this.siteType === 1) {
|
||||||
this.getSiteList()
|
this.getSiteList()
|
||||||
}
|
}
|
||||||
|
|||||||
@ -157,80 +157,97 @@
|
|||||||
list: [],
|
list: [],
|
||||||
siteId: '',
|
siteId: '',
|
||||||
infoData: [{
|
infoData: [{
|
||||||
label: '总交流有功电率',
|
label: "总交流有功电率",
|
||||||
attr: 'totalActivePower',
|
attr: "totalActivePower",
|
||||||
unit: 'kW'
|
unit: "kW",
|
||||||
|
pointName: "总交流有功电率",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '总交流无功电率',
|
label: "总交流无功电率",
|
||||||
attr: 'totalReactivePower',
|
attr: "totalReactivePower",
|
||||||
unit: 'kVar'
|
unit: "kVar",
|
||||||
|
pointName: "总交流无功电率",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '当天交流充电量',
|
label: "当天交流充电量",
|
||||||
attr: 'dailyAcChargeEnergy',
|
attr: "dailyAcChargeEnergy",
|
||||||
unit: 'kWh'
|
unit: "kWh",
|
||||||
|
pointName: "当天交流充电量 (kWh)",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '当天交流放电量',
|
label: "当天交流放电量",
|
||||||
attr: 'dailyAcDischargeEnergy',
|
attr: "dailyAcDischargeEnergy",
|
||||||
unit: 'kWh'
|
unit: "kWh",
|
||||||
|
pointName: "当天交流放电量 (kWh)",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '总交流视在功率',
|
label: "A相电压",
|
||||||
attr: 'totalApparentPower',
|
attr: "aPhaseVoltage",
|
||||||
unit: 'kVA'
|
unit: "V",
|
||||||
|
pointName: ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '总交流功率因数',
|
label: "A相电流",
|
||||||
attr: 'totalPowerFactor',
|
attr: "aPhaseCurrent",
|
||||||
unit: ''
|
unit: "A",
|
||||||
|
pointName: "A相电流",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
label: "B相电压",
|
||||||
|
attr: "bPhaseVoltage",
|
||||||
|
unit: "V",
|
||||||
|
pointName: ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'PCS模块温度',
|
label: "B相电流",
|
||||||
attr: 'pcsModuleTemperature',
|
attr: "bPhaseCurrent",
|
||||||
unit: '℃'
|
unit: "A",
|
||||||
|
pointName: "B相电流",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'PCS环境温度',
|
label: "总交流视在功率",
|
||||||
attr: 'pcsEnvironmentTemperature',
|
attr: "totalApparentPower",
|
||||||
unit: '℃'
|
unit: "kVA",
|
||||||
|
pointName: "总交流视在功率",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'A相电压',
|
label: "总交流功率因数",
|
||||||
attr: 'aPhaseVoltage',
|
attr: "totalPowerFactor",
|
||||||
unit: 'V'
|
unit: "",
|
||||||
|
pointName: "总交流功率因数",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'A相电流',
|
label: "PCS模块温度",
|
||||||
attr: 'aPhaseCurrent',
|
attr: "pcsModuleTemperature",
|
||||||
unit: 'A'
|
unit: "℃",
|
||||||
|
pointName: "",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'B相电压',
|
label: "PCS环境温度",
|
||||||
attr: 'bPhaseVoltage',
|
attr: "pcsEnvironmentTemperature",
|
||||||
unit: 'V'
|
unit: "℃",
|
||||||
|
pointName: "",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'B相电流',
|
label: "C相电压",
|
||||||
attr: 'bPhaseCurrent',
|
attr: "cPhaseVoltage",
|
||||||
unit: 'A'
|
unit: "V",
|
||||||
|
pointName: ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'C相电压',
|
label: "C相电流",
|
||||||
attr: 'cPhaseVoltage',
|
attr: "cPhaseCurrent",
|
||||||
unit: 'V'
|
unit: "A",
|
||||||
|
pointName: "C相电流",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
label: 'C相电流',
|
label: "交流频率",
|
||||||
attr: 'cPhaseCurrent',
|
attr: "acFrequency",
|
||||||
unit: 'A'
|
unit: "Hz",
|
||||||
|
pointName: "交流频率",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: '交流频率',
|
|
||||||
attr: 'acFrequency',
|
|
||||||
unit: 'Hz'
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user