修复过滤规则

This commit is contained in:
2026-07-22 14:23:25 +08:00
parent badec85bbf
commit 0bb277c6eb

View File

@@ -100,7 +100,7 @@ app.get('/api/rooms', auth, (req, res) => {
if (isAdmin) {
rooms = db.prepare('SELECT * FROM rooms').all();
} else {
rooms = db.prepare('SELECT * FROM rooms WHERE white_list = ? OR white_list LIKE ?').all('', `%,${username},%`);
rooms = db.prepare("SELECT * FROM rooms WHERE white_list = '' OR (',' || white_list || ',' LIKE ?)").all(`%,${username},%`);
}
const result = rooms.map(room => {
const lastMsg = db.prepare('SELECT text, timestamp FROM messages WHERE room_id = ? ORDER BY timestamp DESC LIMIT 1').get(room.id);
@@ -208,7 +208,7 @@ app.get('/api/summary', auth, (req, res) => {
rooms = db.prepare('SELECT id, name FROM rooms').all();
} else {
// 使用与群聊列表完全相同的白名单过滤方式
rooms = db.prepare('SELECT id, name FROM rooms WHERE white_list = ? OR white_list LIKE ?').all('', `%,${username},%`);
rooms = db.prepare("SELECT id, name FROM rooms WHERE white_list = '' OR (',' || white_list || ',' LIKE ?)").all(`%,${username},%`)
}
const summary = rooms.map(room => {
const stats = db.prepare(`SELECT COUNT(*) as count, SUM(amount) as total FROM purchases WHERE room_id = ?`).get(room.id);
@@ -236,7 +236,7 @@ app.get('/api/rooms/:roomId/purchases/export', auth, (req, res) => {
// WebSocket
const clients = new Map();
wss.on('connection', (ws, req) => {
console.log('✅ WebSocket 客户端已连接');
//console.log('✅ WebSocket 客户端已连接');
const url = new URL(req.url, 'http://localhost');
const token = url.searchParams.get('token');
if (!token) return ws.close();