const express = require("express"); const router = express.Router(); const db = require("../db/mysql"); const authMiddleware = require("../middleware/authMiddleware"); // 获取用户信息 router.get( "/userInfo", authMiddleware, (req, res) => { res.json({ code: 200, data: { userId: req.user.userId, username: req.user.username } }); } ); // 获取联系人列表 router.get( "/contactsInfo", authMiddleware, (req, res) => { const sql = ` SELECT u.user_id, u.username FROM chat_mysql.contacts c JOIN chat_mysql.users u ON c.contact_id = u.user_id WHERE c.user_id = ?; `; db.query(sql, [req.user.userId], (error, results) => { if (error) { console.error("数据库查询失败:", error); return res.status(500).json({ code: 500, message: "查询失败", }); } if (results.length > 0) { res.json({ code: 200, message: "查询成功", data: { contacts: results.map(contact => ({ contactId: contact.user_id, contactName: contact.username })) }, }); } else { res.json({ code: 401, message: "未找到联系人", data: { contacts: [] } }); } }); } ); router.get( "/messagesInfo", authMiddleware, (req, res) => { const currentUserId = req.user.userId; const sql = ` SELECT id, sender_id, receiver_id, content, created_at FROM chat_mysql.messages WHERE sender_id = ? OR receiver_id = ? ORDER BY created_at ASC; `; db.query(sql, [currentUserId, currentUserId], (error, results) => { if (error) { console.error("数据库查询失败:", error); return res.status(500).json({ code: 500, message: "查询失败", }); } if (results.length > 0) { res.json({ code: 200, message: "查询成功", data: { messages: results.map(message => ({ messageId: message.id, senderId: message.sender_id, receiverId: message.receiver_id, content: message.content, createdAt: message.created_at })) }, }); } else { res.json({ code: 401, message: "未找到联系人消息", data: { messages: [] } }); } }); } ); module.exports = router;