diff --git a/server.js b/server.js index cb4fa77..d47eed3 100644 --- a/server.js +++ b/server.js @@ -594,18 +594,25 @@ app.get("/services/active", authMiddleware, async (req, res) => { SELECT s.*, u.full_name as assigned_name, - u.phone as worker_phone, - g.name as guild_name + -- Lógica para determinar si va a la izquierda o derecha en el panel + CASE + WHEN (s.raw_data->>'scheduled_date') IS NULL OR (s.raw_data->>'scheduled_date') = '' THEN 'asignado_operario' + ELSE 'citado' + END as estado_operativo FROM scraped_services s LEFT JOIN users u ON (s.raw_data->>'assigned_to')::int = u.id - LEFT JOIN guilds g ON (s.raw_data->>'guild_id')::int = g.id WHERE s.owner_id = $1 + -- Aseguramos que salgan los que ya tienen operario AND (s.automation_status = 'completed' OR s.status = 'imported') AND s.status != 'archived' ORDER BY s.created_at DESC `, [req.user.accountId]); + res.json({ ok: true, services: q.rows }); - } catch (e) { res.status(500).json({ ok: false }); } + } catch (e) { + console.error("Error ruta active:", e.message); + res.status(500).json({ ok: false }); + } }); // Ruta para fijar la cita (Mueve el servicio de la izquierda a la derecha)