This commit is contained in:
张成
2025-12-18 18:18:43 +08:00
parent 56e40efadb
commit 699c1d4f55
4 changed files with 56 additions and 30 deletions

View File

@@ -62,7 +62,6 @@ module.exports = {
'POST /device/detail': async (ctx) => {
const models = Framework.getModels();
const { pla_account } = models;
const deviceManager = require('../middleware/schedule/deviceManager');
const body = ctx.getBody();
const { deviceSn } = body;
@@ -70,7 +69,7 @@ module.exports = {
return ctx.fail('设备SN码不能为空');
}
// 从 pla_account 获取账号信息
// 从 pla_account 获取账号信息(包含 is_online 和 is_logged_in)
const account = await pla_account.findOne({
where: { sn_code: deviceSn }
});
@@ -81,21 +80,17 @@ module.exports = {
const accountData = account.toJSON();
// 从 deviceManager 获取在线状态
const deviceStatus = deviceManager.getAllDevicesStatus();
const onlineStatus = deviceStatus[deviceSn] || { isOnline: false };
// 组合返回数据
// 组合返回数据(直接从数据库读取 is_online 和 is_logged_in)
const deviceData = {
sn_code: accountData.sn_code,
device_id: accountData.device_id,
deviceName: accountData.name || accountData.sn_code,
platform: accountData.platform_type,
isOnline: onlineStatus.isOnline || false,
is_online: onlineStatus.isOnline || false, // 前端使用的字段名
is_logged_in: onlineStatus.isLoggedIn || false, // 从 deviceManager 内存中获取登录状态
isOnline: accountData.is_online === 1,
is_online: accountData.is_online === 1,
is_logged_in: accountData.is_logged_in === 1,
isRunning: false, // 不再维护运行状态
lastHeartbeatTime: onlineStatus.lastHeartbeat ? new Date(onlineStatus.lastHeartbeat) : null,
lastHeartbeatTime: null, // 不再从内存读取
accountName: accountData.name,
platform_type: accountData.platform_type,
is_enabled: accountData.is_enabled