diff --git a/api/app/lib/controllers/alarm/data.js b/api/app/lib/controllers/alarm/data.js index 24407e3..92d170c 100644 --- a/api/app/lib/controllers/alarm/data.js +++ b/api/app/lib/controllers/alarm/data.js @@ -79,7 +79,7 @@ async function list (ctx) { whereOption.push(`alarms.State >= 3`) } } - if(onlineState){ + if (onlineState) { if (onlineState == 'online') { whereOption.push(`DeviceStatus.Status = ${1}`) } else if (onlineState == 'offline') { @@ -90,8 +90,8 @@ async function list (ctx) { let alarmQueryOptionStr = ` FROM alarms - LEFT JOIN DeviceStatus - ON DeviceStatus.DeviceId = alarms.SourceId + LEFT JOIN (SELECT DeviceId, any(Status) AS Status,max(Time) FROM alarm.DeviceStatus GROUP BY DeviceId ) AS DeviceStatus + ON DeviceStatus.DeviceId = alarms.SourceId LEFT JOIN ${anxinyun}.t_structure ON ${anxinyun}.t_structure.id = alarms.StructureId LEFT JOIN ${anxinyun}.t_alarm_code