diff --git a/server/routes/rooms.js b/server/routes/rooms.js index fafb011..04ba0c2 100644 --- a/server/routes/rooms.js +++ b/server/routes/rooms.js @@ -21,6 +21,13 @@ router.get('/', authMiddleware, (req, res) => { const lastMsg = db.prepare('SELECT text, timestamp FROM messages WHERE room_id = ? ORDER BY id DESC LIMIT 1').get(room.id); return { ...room, last_message: lastMsg ? lastMsg.text : '', last_time: lastMsg ? lastMsg.timestamp : '' }; }); + // 按最后消息时间排序,最近的在前,无消息的排最后 + result.sort((a, b) => { + if (!a.last_time && !b.last_time) return 0; + if (!a.last_time) return 1; + if (!b.last_time) return -1; + return b.last_time.localeCompare(a.last_time); + }); res.json(result); });