iot-agent/routes/notifications.js
2025-08-03 23:07:33 +05:30

40 lines
1.0 KiB
JavaScript

const express = require('express');
const { protect } = require('../middleware/auth');
const database = require('../config/database');
const logger = require('../utils/logger');
const router = express.Router();
// Get user notifications
router.get('/', protect, async (req, res) => {
try {
const { page = 1, limit = 50, status } = req.query;
const offset = (page - 1) * limit;
let query = 'SELECT * FROM notifications WHERE user_id = ?';
const params = [req.user.id];
if (status) {
query += ' AND status = ?';
params.push(status);
}
query += ' ORDER BY created_at DESC LIMIT ? OFFSET ?';
params.push(parseInt(limit), offset);
const notifications = await database.query(query, params);
res.json({
success: true,
data: notifications
});
} catch (error) {
logger.error('Get notifications error:', error);
res.status(500).json({
success: false,
message: 'Failed to get notifications'
});
}
});
module.exports = router;