故障告警
This commit is contained in:
@ -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'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -4,3 +4,11 @@ export const formatNumber = (val) => {
|
|||||||
return val
|
return val
|
||||||
}else {return '-'}
|
}else {return '-'}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export const formatDate = (val) => {
|
||||||
|
if(!val) return ''
|
||||||
|
const date = new Date(val)
|
||||||
|
const month = date.getMonth() + 1,day = date.getDate()
|
||||||
|
return `${date.getFullYear()}-${month<10?'0'+month : month}-${day<10 ? '0'+day : day}`
|
||||||
|
}
|
||||||
|
@ -101,6 +101,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 +110,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 +121,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 +129,13 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
|
// 判断是否是同一天
|
||||||
|
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 +151,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 +176,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,8 +196,20 @@ 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'){
|
||||||
|
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?.data || [];
|
this.tableData=response?.data || [];
|
||||||
this.totalSize = response?.total || 0
|
this.totalSize = response?.total || 0
|
||||||
}).finally(() => {this.loading=false})
|
}).finally(() => {this.loading=false})
|
||||||
|
Reference in New Issue
Block a user