All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 46s
- Crear endpoint /api/clientes para obtener clientes desde Supabase - Crear endpoint /api/postgres/query para ejecutar queries SQL - Crear componente ClienteMultiSelector con búsqueda y filtro por ubicación - Agregar filtros de clientes, ubicaciones y calidades en informe-ingresos.vue - Cargar opciones de filtros desde Metabase (query ID 53) - Actualizar detección de cambios pendientes con nuevos filtros - Enviar cliente_ids, ubicaciones y calidades al endpoint de Metabase - Componente con formato de cédula y ordenamiento por nombre - Búsqueda por nombre, cédula o ubicación - Contador de selección y botón limpiar todo - Botones rápidos para seleccionar por ubicación
34 lines
753 B
TypeScript
34 lines
753 B
TypeScript
/**
|
|
* Get all clients from Supabase facturador database
|
|
* Returns: id, name, ubicacion for use in filters
|
|
*/
|
|
export default defineEventHandler(async () => {
|
|
try {
|
|
// Query clientes table ordered by name
|
|
const query = `
|
|
SELECT
|
|
id,
|
|
name,
|
|
ubicacion,
|
|
cedula,
|
|
telefono,
|
|
email
|
|
FROM clientes
|
|
ORDER BY name ASC
|
|
`
|
|
|
|
const result = await $fetch('/api/postgres/query', {
|
|
method: 'POST',
|
|
body: { query }
|
|
})
|
|
|
|
return result
|
|
} catch (error: any) {
|
|
console.error('[API] Failed to fetch clientes:', error)
|
|
throw createError({
|
|
statusCode: error.statusCode || 500,
|
|
statusMessage: error.statusMessage || 'Failed to fetch clientes'
|
|
})
|
|
}
|
|
})
|