Merge pull request #2767 from xinnan-tech/web_Hidden_state

update:仅在 MQTT 服务可用时显示设备在线状态列
This commit is contained in:
hrz
2025-12-27 14:24:01 +08:00
committed by GitHub
@@ -35,7 +35,7 @@
<el-table-column :label="$t('device.bindTime')" prop="bindTime" align="center"></el-table-column>
<el-table-column :label="$t('device.lastConversation')" prop="lastConversation"
align="center"></el-table-column>
<el-table-column :label="$t('device.deviceStatus')" prop="deviceStatus" align="center">
<el-table-column v-if="mqttServiceAvailable" :label="$t('device.deviceStatus')" prop="deviceStatus" align="center">
<template slot-scope="scope">
<el-tag v-if="scope.row.deviceStatus === 'online'" type="success">{{ $t('device.online') }}</el-tag>
<el-tag v-else type="danger">{{ $t('device.offline') }}</el-tag>
@@ -147,6 +147,7 @@ export default {
loading: false,
userApi: null,
firmwareTypes: [],
mqttServiceAvailable: false, // MQTT服务是否可用
};
},
computed: {
@@ -392,12 +393,21 @@ export default {
// 直接使用解析后的数据作为设备状态映射(不需要devices字段包装)
if (statusData && typeof statusData === 'object') {
// 成功获取到设备状态
this.mqttServiceAvailable = true;
// 更新设备状态
this.updateDeviceStatusFromResponse(statusData);
} else {
// 数据格式不正确,MQTT服务不可用
this.mqttServiceAvailable = false;
}
} catch (error) {
// JSON解析失败,忽略状态更新
// JSON解析失败,MQTT服务不可用
this.mqttServiceAvailable = false;
}
} else {
// 接口调用失败,MQTT服务不可用
this.mqttServiceAvailable = false;
}
});
},