28 lines
1.2 KiB
JavaScript
28 lines
1.2 KiB
JavaScript
const router = require('express').Router();
|
|
const { getSupabaseClient } = require('./supabaseClient');
|
|
|
|
// Получить все чаты по дому
|
|
router.get('/chats', async (req, res) => {
|
|
const supabase = getSupabaseClient();
|
|
const { building_id } = req.query;
|
|
if (!building_id) return res.status(400).json({ error: 'building_id required' });
|
|
const { data, error } = await supabase.from('chats').select('*').eq('building_id', building_id);
|
|
if (error) return res.status(400).json({ error: error.message });
|
|
res.json(data);
|
|
});
|
|
|
|
// Получить все чаты по квартире (через building_id)
|
|
router.get('/chats/by-apartment', async (req, res) => {
|
|
const supabase = getSupabaseClient();
|
|
const { apartment_id } = req.query;
|
|
if (!apartment_id) return res.status(400).json({ error: 'apartment_id required' });
|
|
// Получаем building_id квартиры и сразу чаты этого дома
|
|
const { data, error } = await supabase
|
|
.from('chats')
|
|
.select('*, apartments!inner(id, building_id)')
|
|
.eq('apartments.id', apartment_id);
|
|
if (error) return res.status(400).json({ error: error.message });
|
|
res.json(data);
|
|
});
|
|
|
|
module.exports = router;
|