湖里大屏(数字工地):完成塔吊弹框报警信息联调

This commit is contained in:
Jack 2022-08-19 14:11:10 +08:00
parent 154134b45b
commit ca1e34f924
2 changed files with 47 additions and 16 deletions

View File

@ -460,7 +460,7 @@
{{ $t('message.dataBoard.alarmInfo') }}
</div>
<div class="deviceInfo" v-if="company != 'longguang'">
<vue-scroll v-if="TowerAlarmList.length != 0" style="height: 350px; margin-bottom: 10px">
<vue-scroll v-if="TowerAlarmList.length" style="height: 350px; margin-bottom: 10px">
<div class="driverInfo" v-for="(item, index) in TowerAlarmList" :key="index">
<div class="TowerAlarm_item">
<p class="p1">{{ $t('message.dataBoard.devName2') + ':' }}{{ item.devName }}</p>
@ -469,7 +469,6 @@
<!-- 风速报警 -->
{{ $t('message.dataBoard.alarmTypeArray2')[0] }}
</p>
<!-- <p class="p1">警报类别{{ item.alarmType == 1?'报警':item.alarmType == 2?'预警':"&#45;&#45;" }}</p>-->
<p v-if="item.environmentAlarm" class="p2">
<!-- 环境防撞报警 -->
{{ $t('message.dataBoard.alarmTypeArray2')[1] }}
@ -1056,7 +1055,7 @@
{{ $t('message.dataBoard.alarmInfo') }}
</div>
<div class="deviceInfo" style="background: #061125" v-if="company == 'longguang'">
<vue-scroll v-if="TowerAlarmList.length != 0" style="height: 300px; margin-bottom: 10px">
<vue-scroll v-if="TowerAlarmList.length " style="height: 300px; margin-bottom: 10px">
<div class="driverInfo" v-for="(item, index) in TowerAlarmList" :key="index">
<div class="TowerAlarm_item">
<p v-if="item.windSpeedAlarm" class="p1" style="width: 100%; font-size: 15px">
@ -3110,19 +3109,12 @@ export default {
},
//
getTowerDriverInfo(devSn) {
let data = {
devSn
}
let getTowerAlarmListApiData = {
devSn,
projectSn: this.projectSn
}
getTowerAlarmListApi(getTowerAlarmListApiData).then(res => {
getTowerAlarmListApi({ devSn, projectSn: this.projectSn }).then(res => {
console.log(res.result)
this.TowerAlarmList = res.result.records
})
this.getTowerWarningList(devSn)
getSelectTowerBySnApi(data).then(res => {
getSelectTowerBySnApi({ devSn }).then(res => {
console.log(1)
if (res.code == 200) {
console.log(res.result)

View File

@ -23,6 +23,29 @@
</div>
</div>
</div>
<div class="card">
<div class="card-title">报警信息</div>
<div class="alert content">
<vue-scroll>
<div v-for="(alert, index) in alerts" :key="index" class="alert-info">
<div class="alert-item">设备名称{{ alert.devName }}</div>
<div class="alert-item">设备时间{{ fmtDate(alert.alarmTime) }}</div>
<div class="alert-item" v-if="alert.windSpeedAlarm">风速报警</div>
<div class="alert-item" v-if="alert.environmentAlarm">环境防撞报警</div>
<div class="alert-item" v-if="alert.heightAlarm">高度上限位报警</div>
<div class="alert-item" v-if="alert.maxRangeAlarm">幅度外限位报警</div>
<div class="alert-item" v-if="alert.minRangeAlarm">幅度内限位报警</div>
<div class="alert-item" v-if="alert.momentAlarm">力矩报警</div>
<div class="alert-item" v-if="alert.multiAlarm">多机防撞报警</div>
<div class="alert-item" v-if="alert.negAngleAlarm">逆时针回转限位报警</div>
<div class="alert-item" v-if="alert.posAngleAlarm">顺时针回转限位报警</div>
<div class="alert-item" v-if="alert.speedAlarm">速度报警</div>
<div class="alert-item" v-if="alert.topAlarm">防冲顶报警</div>
<div class="alert-item" v-if="alert.weightAlarm">载重报警</div>
</div>
</vue-scroll>
</div>
</div>
</div>
<div class="center"></div>
<div class="right"></div>
@ -34,6 +57,7 @@
import AreaTree from '@/components/areaTree'
import VideoModule from '@/components/videoModule/videoModule'
import { getLifterCurrentDataApi, getSelectLifterBySnApi, getLifterAlarmApi } from '@/assets/js/api/lifter'
import { getTowerAlarmListApi } from '@/assets/js/api/towerCrane'
import moment from 'moment'
export default {
components: { AreaTree, VideoModule },
@ -83,10 +107,8 @@ export default {
})
},
getAlertInfo() {
getLifterAlarmApi({ devSn: '2DE46E53AEF7483B98C9B8825ECAA12F', projectSn: this.projectSn }).then(res => {
if (res.code == 200) {
this.alerts = res.result.records
}
getTowerAlarmListApi({ devSn: 'A5FBF4B23B234DDF9553480DE4D26674', projectSn: this.projectSn }).then(res => {
this.alerts = res.result.records
})
},
fmtDate(date) {
@ -146,6 +168,23 @@ export default {
height: 100px;
}
}
&.alert {
height: 400px;
.alert-info {
margin-bottom: 20px;
display: flex;
flex-wrap: wrap;
.alert-item {
margin-bottom: 10px;
&:nth-child(odd) {
width: calc(100% - 220px);
}
&:nth-child(even) {
width: 220px;
}
}
}
}
}
}
}