|
|
@ -2,41 +2,32 @@ |
|
|
|
<template v-if="data && data.length"> |
|
|
|
<el-table :data="data" border stripe style="width: 100%"> |
|
|
|
<el-table-column align="center" fixed label="设备ID" min-width="80" prop="deviceId" /> |
|
|
|
<el-table-column align="center" fixed label="采集时间" min-width="170"> |
|
|
|
<el-table-column align="center" label="产生时间" min-width="170"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ formatTime(+scope.row.time) }} |
|
|
|
{{ formatTime(+scope.row.startTime) }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column align="center" fixed label="后台接收时间" min-width="170"> |
|
|
|
<el-table-column align="center" label="消失时间" min-width="170"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ formatTime(+scope.row.createdAt) }} |
|
|
|
{{ scope.row.endTime ? formatTime(+scope.row.endTime) : '-' }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column align="center" label="锌腐蚀电流(nA)" min-width="130" prop="corrosion1" /> |
|
|
|
<el-table-column align="center" label="铜腐蚀电流(nA)" min-width="130" prop="corrosion2" /> |
|
|
|
<el-table-column align="center" label="铝腐蚀电流(nA)" min-width="130" prop="corrosion3" /> |
|
|
|
<el-table-column align="center" label="钢腐蚀电流(nA)" min-width="130" prop="corrosion4" /> |
|
|
|
<el-table-column align="center" label="环境温度(℃)" min-width="110" prop="environmentTemperature" /> |
|
|
|
<el-table-column align="center" label="环境湿度(RH%)" min-width="130" prop="environmentHumidity" /> |
|
|
|
<el-table-column align="center" label="SO2(ppb)" min-width="90" prop="so2" /> |
|
|
|
<el-table-column align="center" label="盐分温度(℃)" min-width="110" prop="saltT" /> |
|
|
|
<el-table-column align="center" label="盐分阻抗(Ω)" min-width="110" prop="saltR" /> |
|
|
|
<el-table-column align="center" label="机箱温度(℃)" min-width="110" prop="deviceTemperature" /> |
|
|
|
<el-table-column align="center" label="机箱湿度(RH%)" min-width="130" prop="deviceHumidity" /> |
|
|
|
<el-table-column align="center" label="光伏板电压(V)" min-width="140" prop="solarVoltage" /> |
|
|
|
<el-table-column align="center" label="锂电池电压(V)" min-width="120" prop="batteryVoltage" /> |
|
|
|
<el-table-column align="center" label="电量百分比" min-width="94" prop="batteryVoltagePercentage" /> |
|
|
|
<el-table-column align="center" label="剩余电量(mAH)" min-width="140" prop="batteryVoltageRemain" /> |
|
|
|
<el-table-column align="center" label="损耗电量(mAH)" min-width="140" prop="batteryLoss" /> |
|
|
|
<el-table-column align="center" label="ICCID" min-width="190" prop="iccid" /> |
|
|
|
<el-table-column align="center" label="IMEI" min-width="150" prop="imei" /> |
|
|
|
<el-table-column align="center" label="信号强度" min-width="80" prop="signal" /> |
|
|
|
<el-table-column align="center" label="基站编号" min-width="130" prop="stationNo" /> |
|
|
|
<el-table-column align="center" label="硬件版本" min-width="80" prop="hardwareVersion" /> |
|
|
|
<el-table-column align="center" label="软件版本" min-width="80" prop="softwareVersion" /> |
|
|
|
|
|
|
|
<el-table-column align="center" label="故障信息"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ scope.row.sensorName }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
<el-table-column align="center" fixed label="状态"> |
|
|
|
<template #default="scope"> |
|
|
|
{{ scope.row.brokenStatus }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
<el-table-column align="center" fixed="right" label="操作" min-width="120"> |
|
|
|
<template #default="scope"> |
|
|
|
<el-button size="mini" type="danger" @click="onCloseWarning(scope.row.id)">关闭报警</el-button> |
|
|
|
<el-button size="mini" type="danger" @click="onCloseBroken(scope.row.deviceId, scope.row.id)">关闭故障</el-button> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
@ -46,7 +37,7 @@ |
|
|
|
<script setup> |
|
|
|
import dayjs from 'dayjs'; |
|
|
|
import { defineProps, defineEmits } from 'vue'; |
|
|
|
import { removeWarning } from 'apis'; |
|
|
|
import { removeBroken } from 'apis'; |
|
|
|
import { ElMessage } from 'element-plus'; |
|
|
|
|
|
|
|
defineProps({ data: Object }); |
|
|
@ -63,18 +54,22 @@ function formatTime(time) { |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 关闭某条报警 |
|
|
|
* @param {string} warningId 报警记录id |
|
|
|
* 关闭某条故障 |
|
|
|
* @param {string} warningId 故障记录id |
|
|
|
* @returns {Promise<void>} |
|
|
|
*/ |
|
|
|
async function onCloseWarning(warningId) { |
|
|
|
async function onCloseBroken(deviceId, warningId) { |
|
|
|
try { |
|
|
|
await removeWarning(warningId); |
|
|
|
ElMessage.success('关闭报警成功'); |
|
|
|
const params = { |
|
|
|
deviceId, |
|
|
|
warningIdList: [warningId], |
|
|
|
}; |
|
|
|
await removeBroken(params); |
|
|
|
ElMessage.success('关闭故障成功'); |
|
|
|
emit('removeBrokenSuccess', { warningId }); |
|
|
|
} catch (error) { |
|
|
|
console.error('onCloseWarning: ', error); |
|
|
|
ElMessage.error('关闭报警失败'); |
|
|
|
console.error('onCloseBroken: ', error); |
|
|
|
ElMessage.error('关闭故障失败'); |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|