Files
IT-Nexus/backend/src/controllers/teamsActivity.controller.js

34 lines
1.1 KiB
JavaScript

const { asyncHandler } = require('../middleware/errorHandler');
const { getDatabase } = require('../config/database');
class TeamsActivityController {
/**
* GET /api/teams-activity/new-channels
* Returns channels discovered since last notification (notified=0).
*/
static getNewChannels = asyncHandler(async (req, res) => {
const db = getDatabase();
const channels = db.prepare(`
SELECT id, team_name, channel_name, first_seen_at
FROM teams_channels
WHERE notified = 0
ORDER BY first_seen_at DESC
LIMIT 50
`).all();
res.json({ status: 'success', data: channels });
});
/**
* POST /api/teams-activity/mark-read
* Marks all unread channel notifications as read.
*/
static markRead = asyncHandler(async (req, res) => {
const db = getDatabase();
db.prepare('UPDATE teams_channels SET notified = 1 WHERE notified = 0').run();
res.json({ status: 'success' });
});
}
module.exports = TeamsActivityController;