diff --git a/src/api/ems/dzjk.js b/src/api/ems/dzjk.js index db755b4..56a36b0 100644 --- a/src/api/ems/dzjk.js +++ b/src/api/ems/dzjk.js @@ -2,331 +2,383 @@ import request from '@/utils/request' //获取单个站点的信息 export function getDzjkHomeView(siteId) { - return request({ - url: `/ems/siteMonitor/homeView?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/homeView?siteId=${siteId}`, + method: 'get' + }) } + //站点首页 冲放曲线 -export function getSevenChargeData({siteId,startDate,endDate}) { - return request({ - url: `/ems/siteMap/getSevenChargeData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, - method: 'get' - }) +export function getSevenChargeData({siteId, startDate, endDate}) { + return request({ + url: `/ems/siteMap/getSevenChargeData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, + method: 'get' + }) } + // 获取站点包含的设备种类 用来判断单站监控设备监控的菜单栏展示 export function getSiteAllDeviceCategory(siteId) { - return request({ - url: `/ems/siteConfig/getSiteAllDeviceCategory?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteConfig/getSiteAllDeviceCategory?siteId=${siteId}`, + method: 'get' + }) } + +//EMS +export function getEmsDataList(siteId) { + return request({ + url: `/ems/siteMonitor/getEmsDataList?siteId=${siteId}`, + method: 'get', + }) +} + //获取pcs、实时运行头部的设备信息 export function getRunningHeadInfo(siteId) { - return request({ - url: `/ems/siteMonitor/runningHeadInfo?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/runningHeadInfo?siteId=${siteId}`, + method: 'get' + }) } + //获取pcs列表 export function getPcsDetailInfo(siteId) { - return request({ - url: `/ems/siteMonitor/getPcsDetailInfo?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getPcsDetailInfo?siteId=${siteId}`, + method: 'get' + }) } //获取BMS总览数据 export function getBMSOverView(siteId) { - return request({ - url: `/ems/siteMonitor/getBMSOverView?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getBMSOverView?siteId=${siteId}`, + method: 'get' + }) } //获取BMS电池簇总览数据 export function getBMSBatteryCluster(siteId) { - return request({ - url: `/ems/siteMonitor/getBMSBatteryCluster?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getBMSBatteryCluster?siteId=${siteId}`, + method: 'get' + }) } //获取单体电池 电池堆列表数据 export function getStackNameList(siteId) { - return request({ - url: `/ems/siteMonitor/getStackNameList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getStackNameList?siteId=${siteId}`, + method: 'get' + }) } + //获取单体电池 电池簇列表数据 -export function getClusterNameList({stackDeviceId,siteId}) { - return request({ - url: `/ems/siteMonitor/getClusterNameList?stackDeviceId=${stackDeviceId}&siteId=${siteId}`, - method: 'get' - }) +export function getClusterNameList({stackDeviceId, siteId}) { + return request({ + url: `/ems/siteMonitor/getClusterNameList?stackDeviceId=${stackDeviceId}&siteId=${siteId}`, + method: 'get' + }) } + //单体电池表格数据 -export function getClusterDataInfoList({siteId, stackDeviceId, clusterDeviceId,batteryId, pageSize, pageNum}) { - return request({ - url: `/ems/siteMonitor/getClusterDataInfoList?clusterDeviceId=${clusterDeviceId}&siteId=${siteId}&stackDeviceId=${stackDeviceId}&batteryId=${batteryId}&pageSize=${pageSize}&pageNum=${pageNum}`, - method: 'get' - }) +export function getClusterDataInfoList({siteId, stackDeviceId, clusterDeviceId, batteryId, pageSize, pageNum}) { + return request({ + url: `/ems/siteMonitor/getClusterDataInfoList?clusterDeviceId=${clusterDeviceId}&siteId=${siteId}&stackDeviceId=${stackDeviceId}&batteryId=${batteryId}&pageSize=${pageSize}&pageNum=${pageNum}`, + method: 'get' + }) } + // 单体电池图表 //http://localhost:8089/ems/siteMonitor/getSingleBatteryData?clusterDeviceId=BMSC01&siteId=021_FXX_01&deviceId=001&startDate=2025-07-11&endDate=2025-07-18 -export function getSingleBatteryData({siteId,deviceId,clusterDeviceId,startDate,endDate}) { - return request({ - url: `/ems/siteMonitor/getSingleBatteryData?siteId=${siteId}&deviceId=${deviceId}&startDate=${startDate}&endDate=${endDate}&clusterDeviceId=${clusterDeviceId}`, - method: 'get' - }) +export function getSingleBatteryData({siteId, deviceId, clusterDeviceId, startDate, endDate}) { + return request({ + url: `/ems/siteMonitor/getSingleBatteryData?siteId=${siteId}&deviceId=${deviceId}&startDate=${startDate}&endDate=${endDate}&clusterDeviceId=${clusterDeviceId}`, + method: 'get' + }) } //获取液冷列表数据 export function getCoolingDataList(siteId) { - return request({ - url: `/ems/siteMonitor/getCoolingDataList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getCoolingDataList?siteId=${siteId}`, + method: 'get' + }) } //获取动环数据 export function getDhDataList(siteId) { - return request({ - url: `/ems/siteMonitor/getDhDataList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getDhDataList?siteId=${siteId}`, + method: 'get' + }) } //获取消防数据 export function getXfDataList(siteId) { - return request({ - url: `/ems/siteMonitor/getXfDataList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getXfDataList?siteId=${siteId}`, + method: 'get' + }) } //获取电表数据 export function getAmmeterDataList(siteId) { - return request({ - url: `/ems/siteMonitor/getAmmeterDataList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getAmmeterDataList?siteId=${siteId}`, + method: 'get' + }) } // 故障告警 -export function getAlarmDetailList({status,siteId, deviceId, alarmLevel, alarmStartTime, alarmEndTime,pageSize,pageNum}) { - return request({ - url: `/ems/siteAlarm/getAlarmDetailList?siteId=${siteId}&status=${status}&deviceId=${deviceId}&alarmLevel=${alarmLevel}&alarmStartTime=${alarmStartTime}&alarmEndTime=${alarmEndTime}&pageSize=${pageSize}&pageNum=${pageNum}`, - method: 'get' - }) +export function getAlarmDetailList({ + status, + siteId, + deviceId, + alarmLevel, + alarmStartTime, + alarmEndTime, + pageSize, + pageNum + }) { + return request({ + url: `/ems/siteAlarm/getAlarmDetailList?siteId=${siteId}&status=${status}&deviceId=${deviceId}&alarmLevel=${alarmLevel}&alarmStartTime=${alarmStartTime}&alarmEndTime=${alarmEndTime}&pageSize=${pageSize}&pageNum=${pageNum}`, + method: 'get' + }) } // 告警生成工单 export function createTicketNo(data) { - return request({ - url: `/ems/siteAlarm/createTicketNo`, - method: 'post', - data - }) + return request({ + url: `/ems/siteAlarm/createTicketNo`, + method: 'post', + data + }) } + // 概率统计 //获取概率统计 电量指标接口 -export function getElectricData({siteId,startDate,endDate}) { - return request({ - url: `/ems/statsReport/getElectricData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, - method: 'get' - }) +export function getElectricData({siteId, startDate, endDate}) { + return request({ + url: `/ems/statsReport/getElectricData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, + method: 'get' + }) } + //获取pcs列表 export function getPcsNameList(siteId) { - return request({ - url: `/ems/siteMonitor/getPcsNameList?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/ems/siteMonitor/getPcsNameList?siteId=${siteId}`, + method: 'get' + }) } + //pcs曲线 -export function getPCSData({siteId,startTime,endTime,dataType}) { - return request({ - url: `/ems/statsReport/getPCSData?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}&dataType=${dataType}`, - method: 'get' - }) +export function getPCSData({siteId, startTime, endTime, dataType}) { + return request({ + url: `/ems/statsReport/getPCSData?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}&dataType=${dataType}`, + method: 'get' + }) } + //电池堆曲线 -export function getStackData({siteId,startTime,endTime,dataType}) { - return request({ - url: `/ems/statsReport/getStackData?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}&dataType=${dataType}`, - method: 'get' - }) +export function getStackData({siteId, startTime, endTime, dataType}) { + return request({ + url: `/ems/statsReport/getStackData?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}&dataType=${dataType}`, + method: 'get' + }) } + //电池温度 -export function getClusterData({siteId,stackId,clusterId,dateTime,pageNum,pageSize}) { - return request({ - url: `/ems/statsReport/getClusterData?siteId=${siteId}&stackId=${stackId}&clusterId=${clusterId}&dateTime=${dateTime}&pageNum=${pageNum}&pageSize=${pageSize}`, - method: 'get' - }) +export function getClusterData({siteId, stackId, clusterId, dateTime, pageNum, pageSize}) { + return request({ + url: `/ems/statsReport/getClusterData?siteId=${siteId}&stackId=${stackId}&clusterId=${clusterId}&dateTime=${dateTime}&pageNum=${pageNum}&pageSize=${pageSize}`, + method: 'get' + }) } // 实时运行 //储能 -export function storagePower(siteId,startTime,endTime) { - return request({ - url: `/ems/siteMonitor/runningGraph/storagePower?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, - method: 'get' - }) +export function storagePower(siteId, startTime, endTime) { + return request({ + url: `/ems/siteMonitor/runningGraph/storagePower?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, + method: 'get' + }) } + //poc温度 -export function pcsMaxTemp(siteId,startTime,endTime) { - return request({ - url: `/ems/siteMonitor/runningGraph/pcsMaxTemp?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, - method: 'get' - }) +export function pcsMaxTemp(siteId, startTime, endTime) { + return request({ + url: `/ems/siteMonitor/runningGraph/pcsMaxTemp?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, + method: 'get' + }) } + // 电池平均soc -export function batteryAveSoc(siteId,startTime,endTime) { - return request({ - url: `/ems/siteMonitor/runningGraph/batteryAveSoc?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, - method: 'get' - }) +export function batteryAveSoc(siteId, startTime, endTime) { + return request({ + url: `/ems/siteMonitor/runningGraph/batteryAveSoc?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, + method: 'get' + }) } + // 电池平均温度 -export function batteryAveTemp(siteId,startTime,endTime) { - return request({ - url: `/ems/siteMonitor/runningGraph/batteryAveTemp?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, - method: 'get' - }) +export function batteryAveTemp(siteId, startTime, endTime) { + return request({ + url: `/ems/siteMonitor/runningGraph/batteryAveTemp?siteId=${siteId}&startDate=${startTime}&endDate=${endTime}`, + method: 'get' + }) } + // 功率曲线 -export function getPowerData({siteId,startDate,endDate}) { - return request({ - url: `/ems/statsReport/getPowerData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, - method: 'get' - }) +export function getPowerData({siteId, startDate, endDate}) { + return request({ + url: `/ems/statsReport/getPowerData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, + method: 'get' + }) } //电表列表 export function getLoadNameList(siteId) { - return request({ - url: `/ems/statsReport/getLoadNameList?siteId=${siteId}`, - method: 'get' - }) -} -// 电表报表 -export function getAmmeterData({siteId,startTime,endTime, pageSize, pageNum}) { - return request({ - url: `/ems/statsReport/getAmmeterData?siteId=${siteId}&startTime=${startTime}&endTime=${endTime}&pageSize=${pageSize}&pageNum=${pageNum}`, - method: 'get' - }) + return request({ + url: `/ems/statsReport/getLoadNameList?siteId=${siteId}`, + method: 'get' + }) } +// 电表报表 +export function getAmmeterData({siteId, startTime, endTime, pageSize, pageNum}) { + return request({ + url: `/ems/statsReport/getAmmeterData?siteId=${siteId}&startTime=${startTime}&endTime=${endTime}&pageSize=${pageSize}&pageNum=${pageNum}`, + method: 'get' + }) +} + +// 电价报表 +export function getAmmeterRevenueData(data) { + return request({ + url: `/ems/statsReport/getAmmeterRevenueData`, + method: 'get', + params: data + }) +} //策略列表 export function strategyRunningList(siteId) { - return request({ - url: `/system/strategyRunning/list?siteId=${siteId}`, - method: 'get' - }) + return request({ + url: `/system/strategyRunning/list?siteId=${siteId}`, + method: 'get' + }) } + //停止策略 export function stopStrategyRunning(id) { - return request({ - url: `/system/strategyRunning/stop?id=${id}`, - method: 'get' - }) + return request({ + url: `/system/strategyRunning/stop?id=${id}`, + method: 'get' + }) } + // 获取所有主策略 export function getMainStrategyList() { - return request({ - url: `/system/strategyRunning/getMainStrategyList`, - method: 'get' - }) + return request({ + url: `/system/strategyRunning/getMainStrategyList`, + method: 'get' + }) } + //获取所有辅助策略 export function getAuxStrategyList() { - return request({ - url: `/system/strategyRunning/getAuxStrategyList`, - method: 'get' - }) + return request({ + url: `/system/strategyRunning/getAuxStrategyList`, + method: 'get' + }) } + //配置策略 export function configStrategy(data) { - return request({ - url: `/system/strategyRunning/configStrategy`, - method: 'post', - data - }) + return request({ + url: `/system/strategyRunning/configStrategy`, + method: 'post', + data + }) } //http://localhost:8089/strategy/temp/getTempNameList?strategyId=1&siteId=021_FXX_01 //获取策略下的所有模板列表 -export function getTempNameList({siteId,strategyId}) { - return request({ - url: `/strategy/temp/getTempNameList?siteId=${siteId}&strategyId=${strategyId}`, - method: 'get', - }) +export function getTempNameList({siteId, strategyId}) { + return request({ + url: `/strategy/temp/getTempNameList?siteId=${siteId}&strategyId=${strategyId}`, + method: 'get', + }) } + //获取模板详情 ///strategy/temp/list?templateId=1 export function getStrategyTempDetail(templateId) { - return request({ - url: `/strategy/temp/list?templateId=${templateId}`, - method: 'get', - }) + return request({ + url: `/strategy/temp/list?templateId=${templateId}`, + method: 'get', + }) } + //新增模板 export function addStrategyTemp(data) { - return request({ - url: `/strategy/temp`, - method: 'post', - data - }) + return request({ + url: `/strategy/temp`, + method: 'post', + data + }) } + export function editStrategyTemp(data) { - return request({ - url: `/strategy/temp`, - method: 'put', - data - }) + return request({ + url: `/strategy/temp`, + method: 'put', + data + }) } + //http://localhost:8089/strategy/temp/{id} export function deleteStrategyTemp(id) { - return request({ - url: `/strategy/temp/`+id, - method: 'delete', - }) + return request({ + url: `/strategy/temp/` + id, + method: 'delete', + }) } //http://localhost:8089/strategy/timeConfig/list?strategyId=1&siteId=021_FXX_01 -export function timeConfigList({siteId,strategyId}) { - return request({ - url: `/strategy/timeConfig/list?siteId=${siteId}&strategyId=${strategyId}`, - method: 'get', - }) +export function timeConfigList({siteId, strategyId}) { + return request({ + url: `/strategy/timeConfig/list?siteId=${siteId}&strategyId=${strategyId}`, + method: 'get', + }) } + //保存时间配置 // http://localhost:8089/strategy/timeConfig export function setTimeConfigList(data) { - return request({ - url: `/strategy/timeConfig`, - method: 'post', - data - }) + return request({ + url: `/strategy/timeConfig`, + method: 'post', + data + }) } + // 策略曲线图 //http://localhost:8089/strategy/curve/curveList?strategyId=1&siteId=021_FXX_01 -export function curveList({siteId,strategyId}) { - return request({ - url: `/strategy/curve/curveList?siteId=${siteId}&strategyId=${strategyId}`, - method: 'get', - }) +export function curveList({siteId, strategyId}) { + return request({ + url: `/strategy/curve/curveList?siteId=${siteId}&strategyId=${strategyId}`, + method: 'get', + }) } //单站监控 首页 当日功率曲线 -export function getPointData({siteId,startDate,endDate}) { - return request({ - url: `/ems/siteMonitor/getPointData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, - method: 'get', - }) +export function getPointData({siteId, startDate, endDate}) { + return request({ + url: `/ems/siteMonitor/getPointData?siteId=${siteId}&startDate=${startDate}&endDate=${endDate}`, + method: 'get', + }) } diff --git a/src/router/ems.js b/src/router/ems.js index 161cbc3..f959ab2 100644 --- a/src/router/ems.js +++ b/src/router/ems.js @@ -2,168 +2,265 @@ import Layout from "@/layout/index.vue"; //单站监控 // todo 本地设置了 hidden:true,不会显示在侧边栏,需要在系统管理、菜单管理中手动添加菜单后才会展示在侧边栏 -export const dzjk=[ - { - path: '/dzjk', - component: Layout, - redirect: '/dzjk/home', - meta: { title: '单站监控', icon: 'server',}, - alwaysShow: false, - name:'Dzjk', - children: [ - { - path: '/dzjk/home', - component: () => import('@/views/ems/dzjk/home/index.vue'), - name: 'DzjkHome', - meta: { title: '站点首页',breadcrumb: false,activeMenu: '/dzjk/home',activeSecondMenuName:'DzjkHome' } - }, - { - path: '/dzjk/zxlt', - component: () => import('@/views/ems/dzjk/zxlt/index.vue'), - name: 'DzjkZxlt', - meta: { title: '主线路图',breadcrumb: false,activeMenu: '/dzjk/zxlt',activeSecondMenuName:'DzjkZxlt' } - }, - { - path: '/dzjk/sbjk', - component: () => import('@/views/ems/dzjk/sbjk/index.vue'), - name: 'DzjkSbjk', - alwaysShow: false, - meta: { title: '设备监控',breadcrumb: false,activeMenu: '/dzjk/sbjk'}, - hidden: false, - redirect: '/dzjk/sbjk/ssyx', - children: [ - { - path: 'ssyx', - component: () => import('@/views/ems/dzjk/sbjk/ssyx/index.vue'), - name: 'DzjkSbjkSsyx', - hidden: true, - meta: { title: '实时运行',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'SSYX'}, - }, - { - path: 'pcs', - component: () => import('@/views/ems/dzjk/sbjk/pcs/index.vue'), - name: 'DzjkSbjkPcs', - hidden: true, - meta: { title: 'PCS',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'PCS'}, - }, - { - path: 'bmszl', - component: () => import('@/views/ems/dzjk/sbjk/bmszl/index.vue'), - name: 'DzjkSbjkBmszl', - hidden: true, - meta: { title: 'BMS总览',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk', deviceCategory:'STACK'}, - }, - { - path: 'bmsdcc', - component: () => import('@/views/ems/dzjk/sbjk/bmsdcc/index.vue'), - name: 'DzjkSbjkBmsdcc', - hidden: true, - meta: { title: 'BMS电池簇',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'CLUSTER'}, - }, - { - path: 'dtdc', - component: () => import('@/views/ems/dzjk/sbjk/dtdc/index.vue'), - name: 'DzjkSbjkDtdc', - hidden: true, - meta: { title: '单体电池',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'BATTERY'}, - }, - { - path: 'db', - component: () => import('@/views/ems/dzjk/sbjk/db/index.vue'), - name: 'DzjkSbjkDb', - hidden: true, - meta: { title: '电表',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'AMMETER'}, - }, - { - path: 'yl', - component: () => import('@/views/ems/dzjk/sbjk/yl/index.vue'), - name: 'DzjkSbjkYl', - hidden: true, - meta: { title: '液冷',breadcrumb: false,activeMenu: '/dzjk/sbjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'COOLING'}, - }, - { - path: 'dh', - component: () => import('@/views/ems/dzjk/sbjk/dh/index.vue'), - name: 'DzjkSbjkDh', - hidden: true, - meta: { title: '动环',breadcrumb: false,activeMenu: '/dzjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'DH'}, - }, - { - path: 'xf', - component: () => import('@/views/ems/dzjk/sbjk/xf/index.vue'), - name: 'DzjkSbjkXf', - hidden: true, - meta: { title: '消防',breadcrumb: false,activeMenu: '/dzjk',activeSecondMenuName:'DzjkSbjk',deviceCategory:'XF'}, - } - ] - }, - { - path: '/dzjk/gzgj', - component: () => import('@/views/ems/dzjk/gzgj/index.vue'), - name: 'DzjkGzgj', - meta: { title: '故障告警',breadcrumb: false,activeMenu: '/dzjk/gzgj',activeSecondMenuName:'DzjkGzgj' } - }, - { - path: '/dzjk/tjbb', - component: () => import('@/views/ems/dzjk/tjbb/index.vue'), - name: 'DzjkTjbb', - alwaysShow: false, - meta: {title: '统计报表', breadcrumb: false, activeMenu: '/dzjk/tjbb'}, - hidden: false, - redirect: '/dzjk/tjbb/gltj', - children: [ - { - path: 'gltj', - component: () => import('@/views/ems/dzjk/tjbb/gltj/index.vue'), - name: 'DzjkTjbbGltj', - hidden: true, - meta: { title: '概率统计',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - }, - { - path: 'glqx', - component: () => import('@/views/ems/dzjk/tjbb/glqx/index.vue'), - name: 'DzjkTjbbGlqx', - hidden: true, - meta: { title: '功率曲线',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - }, - { - path: 'pcsqx', - component: () => import('@/views/ems/dzjk/tjbb/pcsqx/index.vue'), - name: 'DzjkTjbbPcsqx', - hidden: true, - meta: { title: 'PCS曲线',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - }, - { - path: 'dcdqx', - component: () => import('@/views/ems/dzjk/tjbb/dcdqx/index.vue'), - name: 'DzjkTjbbDcdqx', - hidden: true, - meta: { title: '电池堆曲线',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - }, - { - path: 'dcwd', - component: () => import('@/views/ems/dzjk/tjbb/dcwd/index.vue'), - name: 'DzjkTjbbDcwd', - hidden: true, - meta: { title: '电池温度',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - }, - { - path: 'dbbb', - component: () => import('@/views/ems/dzjk/tjbb/dbbb/index.vue'), - name: 'DzjkTjbbDbbb', - hidden: true, - meta: { title: '电表报表',breadcrumb: false,activeMenu: '/dzjk/tjbb',activeSecondMenuName:'DzjkTjbb'}, - } - ] - }, - { - path: '/dzjk/clpz', - component: () => import('@/views/ems/dzjk/clpz/clyx/index.vue'), - name: 'DzjkClpz', - meta: {title: '策略配置', breadcrumb: false, activeMenu: '/dzjk/clpz'}, - } +export const dzjk = [ + { + path: '/dzjk', + component: Layout, + redirect: '/dzjk/home', + meta: {title: '单站监控', icon: 'server',}, + alwaysShow: false, + name: 'Dzjk', + children: [ + { + path: '/dzjk/home', + component: () => import('@/views/ems/dzjk/home/index.vue'), + name: 'DzjkHome', + meta: {title: '站点首页', breadcrumb: false, activeMenu: '/dzjk/home', activeSecondMenuName: 'DzjkHome'} + }, + { + path: '/dzjk/zxlt', + component: () => import('@/views/ems/dzjk/zxlt/index.vue'), + name: 'DzjkZxlt', + meta: {title: '主线路图', breadcrumb: false, activeMenu: '/dzjk/zxlt', activeSecondMenuName: 'DzjkZxlt'} + }, + { + path: '/dzjk/sbjk', + component: () => import('@/views/ems/dzjk/sbjk/index.vue'), + name: 'DzjkSbjk', + alwaysShow: false, + meta: {title: '设备监控', breadcrumb: false, activeMenu: '/dzjk/sbjk'}, + hidden: false, + redirect: '/dzjk/sbjk/ssyx', + children: [ + { + path: 'ssyx', + component: () => import('@/views/ems/dzjk/sbjk/ssyx/index.vue'), + name: 'DzjkSbjkSsyx', + hidden: true, + meta: { + title: '实时运行', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'SSYX' + }, + }, + { + path: 'ems', + component: () => import('@/views/ems/dzjk/sbjk/ems/index.vue'), + name: 'DzjkSbjkEms', + hidden: true, + meta: { + title: 'EMS', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'EMS' + }, + }, + { + path: 'pcs', + component: () => import('@/views/ems/dzjk/sbjk/pcs/index.vue'), + name: 'DzjkSbjkPcs', + hidden: true, + meta: { + title: 'PCS', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'PCS' + }, + }, + { + path: 'bmszl', + component: () => import('@/views/ems/dzjk/sbjk/bmszl/index.vue'), + name: 'DzjkSbjkBmszl', + hidden: true, + meta: { + title: 'BMS总览', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'STACK' + }, + }, + { + path: 'bmsdcc', + component: () => import('@/views/ems/dzjk/sbjk/bmsdcc/index.vue'), + name: 'DzjkSbjkBmsdcc', + hidden: true, + meta: { + title: 'BMS电池簇', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'CLUSTER' + }, + }, + { + path: 'dtdc', + component: () => import('@/views/ems/dzjk/sbjk/dtdc/index.vue'), + name: 'DzjkSbjkDtdc', + hidden: true, + meta: { + title: '单体电池', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'BATTERY' + }, + }, + { + path: 'db', + component: () => import('@/views/ems/dzjk/sbjk/db/index.vue'), + name: 'DzjkSbjkDb', + hidden: true, + meta: { + title: '电表', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'AMMETER' + }, + }, + { + path: 'yl', + component: () => import('@/views/ems/dzjk/sbjk/yl/index.vue'), + name: 'DzjkSbjkYl', + hidden: true, + meta: { + title: '液冷', + breadcrumb: false, + activeMenu: '/dzjk/sbjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'COOLING' + }, + }, + { + path: 'dh', + component: () => import('@/views/ems/dzjk/sbjk/dh/index.vue'), + name: 'DzjkSbjkDh', + hidden: true, + meta: { + title: '动环', + breadcrumb: false, + activeMenu: '/dzjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'DH' + }, + }, + { + path: 'xf', + component: () => import('@/views/ems/dzjk/sbjk/xf/index.vue'), + name: 'DzjkSbjkXf', + hidden: true, + meta: { + title: '消防', + breadcrumb: false, + activeMenu: '/dzjk', + activeSecondMenuName: 'DzjkSbjk', + deviceCategory: 'XF' + }, + } + ] + }, + { + path: '/dzjk/gzgj', + component: () => import('@/views/ems/dzjk/gzgj/index.vue'), + name: 'DzjkGzgj', + meta: {title: '故障告警', breadcrumb: false, activeMenu: '/dzjk/gzgj', activeSecondMenuName: 'DzjkGzgj'} + }, + { + path: '/dzjk/tjbb', + component: () => import('@/views/ems/dzjk/tjbb/index.vue'), + name: 'DzjkTjbb', + alwaysShow: false, + meta: {title: '统计报表', breadcrumb: false, activeMenu: '/dzjk/tjbb'}, + hidden: false, + redirect: '/dzjk/tjbb/gltj', + children: [ + { + path: 'gltj', + component: () => import('@/views/ems/dzjk/tjbb/gltj/index.vue'), + name: 'DzjkTjbbGltj', + hidden: true, + meta: { + title: '概率统计', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + }, + { + path: 'glqx', + component: () => import('@/views/ems/dzjk/tjbb/glqx/index.vue'), + name: 'DzjkTjbbGlqx', + hidden: true, + meta: { + title: '功率曲线', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + }, + { + path: 'pcsqx', + component: () => import('@/views/ems/dzjk/tjbb/pcsqx/index.vue'), + name: 'DzjkTjbbPcsqx', + hidden: true, + meta: { + title: 'PCS曲线', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + }, + { + path: 'dcdqx', + component: () => import('@/views/ems/dzjk/tjbb/dcdqx/index.vue'), + name: 'DzjkTjbbDcdqx', + hidden: true, + meta: { + title: '电池堆曲线', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + }, + { + path: 'dcwd', + component: () => import('@/views/ems/dzjk/tjbb/dcwd/index.vue'), + name: 'DzjkTjbbDcwd', + hidden: true, + meta: { + title: '电池温度', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + }, + { + path: 'dbbb', + component: () => import('@/views/ems/dzjk/tjbb/dbbb/index.vue'), + name: 'DzjkTjbbDbbb', + hidden: true, + meta: { + title: '电表报表', + breadcrumb: false, + activeMenu: '/dzjk/tjbb', + activeSecondMenuName: 'DzjkTjbb' + }, + } + ] + }, + { + path: '/dzjk/clpz', + component: () => import('@/views/ems/dzjk/clpz/clyx/index.vue'), + name: 'DzjkClpz', + meta: {title: '策略配置', breadcrumb: false, activeMenu: '/dzjk/clpz'}, + } ] - } + } ] diff --git a/src/store/modules/ems.js b/src/store/modules/ems.js index 120574d..6c7f2b9 100644 --- a/src/store/modules/ems.js +++ b/src/store/modules/ems.js @@ -1,62 +1,71 @@ import {getAllSites} from '@/api/ems/zddt' -import {getAlarmDetailList,getSiteAllDeviceCategory} from'@/api/ems/dzjk' -const ems = { - state: { - dzjkAlarmLighting:false,//单站监控 告警统计红点标志 - zdList:[], - zdDeviceCategoryOptions:{},//站点各个站点包含的设备种类 {021_DDS_01:["BATTERY","CLUSTER","STACK", "DH", "AMMETER", "PCS", "XF"],021_DDS_02:[]...} - workStatusOptions:{'0':'正常','1':'异常','2':'停止'},//工作状态 - deviceStatusOptions:{'0':'离线','1':'待机','2':'运行','3':'故障','4':'停机'},//设备状态 - gridStatusOptions:{'0':'并网','1':'未并网'},//并网状态 - controlModeOptions:{'0':'远程','1':'本地'},//控制模式 - warnOptions:{0:'正常', 1:'中断', 2:'不在线',3:'异常'},//告警状态 - communicationStatusOptions:{'0':'正常','1':'通讯中断','2':'异常'},//通讯状态 - workModeOptions:{'0':'正常','1':'停止'},//工作模式 - alarmLevelOptions:{'A':'提示','B':'一般','C':'严重','D':'紧急'},//告警等级 - alarmStatusOptions:{'0':'待处理','1':'已处理','2':'处理中'},//告警状态 - deviceTypeOptions:{'TCP':'TCP','RTU':'RTU'},//设备类型 - ticketStatusOptions:{1:'待处理', 2:'处理中', 3:'已处理'},//工单处理状态 - strategyStatusOptions:{'0':'未启用', '1':'已运行', '2':'已暂停', '3':'禁用', '4':'删除'},//策略状态 - chargeStatusOptions:{'1':'充电','2':'待机'},//冲放状态 - deviceCategoryOptions:{'PCS':'PCS','STACK':'电池堆','CLUSTER':'电池簇','COOLING':'液冷','BATTERY':'单体电池','AMMETER':'电表'},//设备类别 - comparisonOperatorOptions:{'>':'>','<':'<','=':'=','>=':'>=','<=':'<='}, - relationWithPoint:{'||':'||','&&':'&&'} - }, - mutations: { - SET_ZD_LIST(state, list) { - state.zdList = list || [] - }, - SET_DZJK_ALARM_LIGHTING(state, status) { - state.dzjkAlarmLighting = status - }, - SET_ZD_DEVICE_CATEGORY_OPTIONS(state,{siteId,data}){ - state.zdDeviceCategoryOptions = Object.assign({}, state.zdDeviceCategoryOptions, {[siteId]:data}) - } - }, - actions: { - getZdList({commit,state}){ - if(state.zdList.length === 0){ - getAllSites().then(response => { - commit('SET_ZD_LIST', response?.data || []) - console.log('store action getZdList 获取站点数据',state.zdList) - }) - } - }, - //查询站点的所有待处理0的告警 存在展示红点标志 - getSiteAlarmNum({state,commit},siteId){ - getAlarmDetailList({status:0,siteId,pageSize:10,pageNum:1,deviceId:'',alarmLevel:'',alarmStartTime:'',alarmEndTime:''}).then(response=>{ - commit('SET_DZJK_ALARM_LIGHTING',!!response?.total || false) - }) - }, - getSiteDeviceCategory({state,commit},siteId){ - getSiteAllDeviceCategory(siteId).then(response=>{ - let data = response?.data || []; - data.unshift('SSYX'); - commit('SET_ZD_DEVICE_CATEGORY_OPTIONS',{siteId,data}) - }) - } +import {getAlarmDetailList, getSiteAllDeviceCategory} from '@/api/ems/dzjk' - } +const ems = { + state: { + dzjkAlarmLighting: false,//单站监控 告警统计红点标志 + zdList: [], + zdDeviceCategoryOptions: {},//站点各个站点包含的设备种类 {021_DDS_01:["BATTERY","CLUSTER","STACK", "DH", "AMMETER", "PCS", "XF"],021_DDS_02:[]...} + workStatusOptions: {'0': '正常', '1': '异常', '2': '停止'},//工作状态 + deviceStatusOptions: {'0': '离线', '1': '待机', '2': '运行', '3': '故障', '4': '停机'},//设备状态 + gridStatusOptions: {'0': '并网', '1': '未并网'},//并网状态 + controlModeOptions: {'0': '远程', '1': '本地'},//控制模式 + warnOptions: {0: '正常', 1: '中断', 2: '不在线', 3: '异常'},//告警状态 + communicationStatusOptions: {'0': '正常', '1': '通讯中断', '2': '异常'},//通讯状态 + workModeOptions: {'0': '正常', '1': '停止'},//工作模式 + alarmLevelOptions: {'A': '提示', 'B': '一般', 'C': '严重', 'D': '紧急'},//告警等级 + alarmStatusOptions: {'0': '待处理', '1': '已处理', '2': '处理中'},//告警状态 + deviceTypeOptions: {'TCP': 'TCP', 'RTU': 'RTU'},//设备类型 + ticketStatusOptions: {1: '待处理', 2: '处理中', 3: '已处理'},//工单处理状态 + strategyStatusOptions: {'0': '未启用', '1': '已运行', '2': '已暂停', '3': '禁用', '4': '删除'},//策略状态 + chargeStatusOptions: {'1': '充电', '2': '待机'},//冲放状态 + comparisonOperatorOptions: {'>': '>', '<': '<', '=': '=', '>=': '>=', '<=': '<='}, + relationWithPoint: {'||': '||', '&&': '&&'} + }, + mutations: { + SET_ZD_LIST(state, list) { + state.zdList = list || [] + }, + SET_DZJK_ALARM_LIGHTING(state, status) { + state.dzjkAlarmLighting = status + }, + SET_ZD_DEVICE_CATEGORY_OPTIONS(state, {siteId, data}) { + state.zdDeviceCategoryOptions = Object.assign({}, state.zdDeviceCategoryOptions, {[siteId]: data}) + } + }, + actions: { + getZdList({commit, state}) { + if (state.zdList.length === 0) { + getAllSites().then(response => { + commit('SET_ZD_LIST', response?.data || []) + console.log('store action getZdList 获取站点数据', state.zdList) + }) + } + }, + //查询站点的所有待处理0的告警 存在展示红点标志 + getSiteAlarmNum({state, commit}, siteId) { + getAlarmDetailList({ + status: 0, + siteId, + pageSize: 10, + pageNum: 1, + deviceId: '', + alarmLevel: '', + alarmStartTime: '', + alarmEndTime: '' + }).then(response => { + commit('SET_DZJK_ALARM_LIGHTING', !!response?.total || false) + }) + }, + getSiteDeviceCategory({state, commit}, siteId) { + getSiteAllDeviceCategory(siteId).then(response => { + let data = response?.data || []; + data.unshift('SSYX'); + commit('SET_ZD_DEVICE_CATEGORY_OPTIONS', {siteId, data}) + }) + } + + } } export default ems diff --git a/src/views/ems/dzjk/sbjk/PointChart.vue b/src/views/ems/dzjk/sbjk/PointChart.vue index 9ed023c..eb4fecd 100644 --- a/src/views/ems/dzjk/sbjk/PointChart.vue +++ b/src/views/ems/dzjk/sbjk/PointChart.vue @@ -1,20 +1,20 @@