Fix: mostrar servicios sin gremio en la bolsa de trabajo

El filtro SQL de /providers/scraped excluía los servicios sin guild_id porque NULL IN (...) se evalúa como NULL (falso) en SQL. Ahora se muestran también los servicios sin gremio asignado.
This commit is contained in:
2026-08-17 21:51:30 +00:00
parent ad39b347df
commit 638cda2a46

View File

@@ -3191,7 +3191,7 @@ app.get("/providers/scraped", authMiddleware, async (req, res) => {
query += ` AND s.assigned_to IS NULL AND s.status != 'archived'`; query += ` AND s.assigned_to IS NULL AND s.status != 'archived'`;
// 🚨 FIX: Usamos NULLIF para evitar que un guild_id vacío ("") rompa el casting a número // 🚨 FIX: Usamos NULLIF para evitar que un guild_id vacío ("") rompa el casting a número
query += ` AND NULLIF(s.raw_data->>'guild_id', '')::int IN (SELECT guild_id FROM user_guilds WHERE user_id = $2)`; query += ` AND (NULLIF(s.raw_data->>'guild_id', '') IS NULL OR NULLIF(s.raw_data->>'guild_id', '')::int IN (SELECT guild_id FROM user_guilds WHERE user_id = $2))`;
// 2. El CP de la avería tiene que coincidir SÍ o SÍ con los del operario // 2. El CP de la avería tiene que coincidir SÍ o SÍ con los del operario
// Buscamos el CP en varios campos del JSON para asegurarnos de que no se escapa // Buscamos el CP en varios campos del JSON para asegurarnos de que no se escapa