Compare commits

...

4 Commits

Author SHA1 Message Date
edab894447 Merge branch 'develop' into baicai 2025-07-01 14:43:33 +08:00
99b019ebc9 故障告警接口联调 2025-07-01 14:42:53 +08:00
9b78635fd8 故障告警 2025-07-01 14:11:41 +08:00
ab9a13264c 单体电池表格新增簇号字段 2025-07-01 12:56:00 +08:00
4 changed files with 75 additions and 17 deletions

View File

@ -77,9 +77,9 @@ export function getAmmeterDataList(siteId) {
} }
// 故障告警 // 故障告警
export function getAlarmDetailList({siteId, deviceType, alarmLevel, alarmStartTime, alarmEndTime,todayFlag,pageSize,pageNum}) { export function getAlarmDetailList({siteId, deviceType, alarmLevel, alarmStartTime, alarmEndTime,pageSize,pageNum}) {
return request({ return request({
url: `/ems/siteAlarm/getAlarmDetailList?todayFlag=${todayFlag}&siteId=${siteId}&deviceType=${deviceType}&alarmLevel=${alarmLevel}&alarmStartTime=${alarmStartTime}&alarmEndTime=${alarmEndTime}&pageSize=${pageSize}&pageNum=${pageNum}`, url: `/ems/siteAlarm/getAlarmDetailList?siteId=${siteId}&deviceType=${deviceType}&alarmLevel=${alarmLevel}&alarmStartTime=${alarmStartTime}&alarmEndTime=${alarmEndTime}&pageSize=${pageSize}&pageNum=${pageNum}`,
method: 'get' method: 'get'
}) })
} }

View File

@ -4,3 +4,16 @@ export const formatNumber = (val) => {
return val return val
}else {return '-'} }else {return '-'}
} }
export const formatDate = (val,toSeconds = false) => {
if(!val) return ''
const date = new Date(val)
const month = date.getMonth() + 1,day = date.getDate()
if(!toSeconds){
return `${date.getFullYear()}-${month<10?'0'+month : month}-${day<10 ? '0'+day : day}`
}else{
const hours = date.getHours(),minuets=date.getMinutes(),seconds = date.getSeconds();
return `${date.getFullYear()}-${month<10?'0'+month : month}-${day<10 ? '0'+day : day} ${hours<10 ? '0'+hours : hours}:${minuets<10 ? '0'+minuets : minuets}:${seconds<10 ? '0'+seconds : seconds}`
}
}

View File

@ -48,7 +48,7 @@
max-height="500" max-height="500"
style="width: 100%;margin-top:25px;"> style="width: 100%;margin-top:25px;">
<el-table-column <el-table-column
prop="name" prop="deviceName"
width="200" width="200"
label="设备名称"> label="设备名称">
</el-table-column> </el-table-column>
@ -61,17 +61,22 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="alarmContent" prop="alarmContent"
min-width="400"
show-overflow-tooltip show-overflow-tooltip
label="告警内容"> label="告警内容">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="alarmStartTime" prop="alarmStartTime"
label="告警发生时间"> label="告警发生时间">
<template slot-scope="scope">
<span>{{formatDate(scope.row.alarmStartTime,true)}}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="alarmEndTime" prop="alarmEndTime"
label="告警结束时间"> label="告警结束时间">
<template slot-scope="scope">
<span>{{formatDate(scope.row.alarmEndTime,true)}}</span>
</template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
label="状态"> label="状态">
@ -101,6 +106,7 @@
<script> <script>
import {getAlarmDetailList} from'@/api/ems/dzjk' import {getAlarmDetailList} from'@/api/ems/dzjk'
import getQuerySiteId from "@/mixins/ems/getQuerySiteId"; import getQuerySiteId from "@/mixins/ems/getQuerySiteId";
import { formatDate } from '@/filters/ems'
export default { export default {
name:'DzjkGzgj', name:'DzjkGzgj',
mixins:[getQuerySiteId], mixins:[getQuerySiteId],
@ -109,7 +115,7 @@ export default {
loading:false, loading:false,
btnList:[ btnList:[
{name:'今日告警',id:'today'}, {name:'今日告警',id:'today'},
{name:'历史告警',id:'yesterday'}, {name:'历史告警',id:'history'},
], ],
pickerOptions:{ pickerOptions:{
disabledDate(time) { disabledDate(time) {
@ -120,15 +126,6 @@ export default {
dateRange:[],//alarmStartTime,alarmEndTime dateRange:[],//alarmStartTime,alarmEndTime
activeBtn:'today', activeBtn:'today',
search:{deviceType:'',alarmLevel:''}, search:{deviceType:'',alarmLevel:''},
deviceTypeOptions:[
{name:'类型一',id:1},
{name:'类型二',id:2},
{name:'类型三',id:3},
],
alarmLevelOptions:[
{name:'等级一',id:1},
{name:'等级二',id:2},
],
// 表格、分页 // 表格、分页
tableData:[], tableData:[],
pageSize:10,//分页栏当前每个数据总数 pageSize:10,//分页栏当前每个数据总数
@ -137,6 +134,14 @@ export default {
} }
}, },
methods:{ methods:{
formatDate,
// 判断是否是同一天
isSameDay(day1, day2) {
const date1 = new Date(day1),date2 = new Date(day2)
return date1.getFullYear() === date2.getFullYear() &&
date1.getMonth() === date2.getMonth() &&
date1.getDate() === date2.getDate();
},
// 分页 // 分页
handleSizeChange(val) { handleSizeChange(val) {
this.pageSize = val; this.pageSize = val;
@ -152,6 +157,18 @@ export default {
}, },
// 搜索 // 搜索
onSearch(){ onSearch(){
const [alarmStartTime='',alarmEndTime='']=this.dateRange
// 选中了时间范围
if(alarmStartTime && alarmStartTime){
// 如果选择的时间范围是今天
if(this.isSameDay(alarmStartTime,alarmEndTime) && this.isSameDay(alarmStartTime,new Date())){
this.activeBtn = 'today'
}else {
this.activeBtn = 'history'
}
}else{
//没有选择时间范围 还是按照选中的今日告警、历史告警查询
}
this.getData() this.getData()
}, },
// 重置 // 重置
@ -165,6 +182,17 @@ export default {
if(id !== this.activeBtn){ if(id !== this.activeBtn){
console.log('点击了不同的菜单,更新数据') console.log('点击了不同的菜单,更新数据')
this.activeBtn=id; this.activeBtn=id;
const [alarmStartTime,alarmEndTime]=this.dateRange
// 切换到今日告警,如果已经选择了时间范围清空
if(alarmStartTime && alarmEndTime){
// 如果切换到了今日告警,时间范围不相等或者相等但是不是今天 清空时间选择范围
if(id === 'today' && !this.isSameDay(alarmStartTime,alarmEndTime) || (this.isSameDay(alarmStartTime,alarmEndTime) && !this.isSameDay(alarmStartTime,new Date()))){
this.dateRange = []
}else if(id === 'history' && this.isSameDay(alarmStartTime,alarmEndTime) && this.isSameDay(alarmStartTime,new Date())){
// 切换成历史告警,但是选择时间范围是当天,清空时间范围
this.dateRange = []
}
}
this.getData() this.getData()
} }
}, },
@ -174,9 +202,22 @@ export default {
const {deviceType,alarmLevel} = this.search const {deviceType,alarmLevel} = this.search
const {siteId,pageNum,pageSize,activeBtn} =this const {siteId,pageNum,pageSize,activeBtn} =this
const [alarmStartTime='',alarmEndTime='']=this.dateRange const [alarmStartTime='',alarmEndTime='']=this.dateRange
const todayFlag = activeBtn === 'today' let start='',end = '',now =new Date()
getAlarmDetailList({deviceType,alarmLevel,siteId,pageSize,pageNum,alarmStartTime,alarmEndTime,todayFlag}).then(response => { if(activeBtn === 'today'){
this.tableData=response?.data || []; start = end = now
}else{
if(alarmStartTime && alarmEndTime){
start = alarmStartTime
end = alarmEndTime
}else{
start=''
end = ''
// now
// end.setDate(end.getDate() - 1);
}
}
getAlarmDetailList({deviceType,alarmLevel,siteId,pageSize,pageNum,alarmStartTime:formatDate(start),alarmEndTime:formatDate(end)}).then(response => {
this.tableData=response?.rows || [];
this.totalSize = response?.total || 0 this.totalSize = response?.total || 0
}).finally(() => {this.loading=false}) }).finally(() => {this.loading=false})
}, },

View File

@ -40,6 +40,10 @@
prop="deviceId" prop="deviceId"
label="单体编号"> label="单体编号">
</el-table-column> </el-table-column>
<el-table-column
prop="clusterDeviceId"
label="簇号">
</el-table-column>
<el-table-column <el-table-column
prop="voltage" prop="voltage"
label="电压V" label="电压V"