Elaboracion de Informes Naliia #3

Open
opened 2026-06-10 13:08:25 -05:00 by Aserrador · 1 comment
Owner
No description provided.
Aserrador added the
Feature
label 2026-06-10 13:08:25 -05:00
Aserrador added this to the Naliia project 2026-06-10 13:08:25 -05:00
Author
Owner
    1. Citas por local (Sucursal, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito).
select
	service_center as "Centro de Servicio Id",
	nsc.name as "Centro de Servicio",
	COUNT(1) "# Citas",
	COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas",
    COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas",
    COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar",
    ROUND(
        (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 
        2
    ) || '%' AS "Porcentaje de Éxito"
from naliia_schedule ns
inner join naliia_service_center nsc on ns.service_center  = nsc.id
where date::date between '2026-04-01' and '2026-06-30'
group by
	service_center, nsc.name;
    1. Citas por profesional (Sucursal, Profesional, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito).
select
	professional as "Professional Id",
	pp.name as "Centro de Servicio",

	COUNT(1) "# Citas",
	COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas",
    COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas",
    COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar",
    ROUND(
        (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 
        2
    ) || '%' AS "Porcentaje de Éxito"

from naliia_schedule ns
inner join company_employee ce on ce.id = ns.professional
inner join party_party pp on pp.id = ce.party
where date::date between '2026-04-01' and '2026-06-30'
group by 
	professional, pp.name;
    1. Citas por cliente (Sucursal, Profesional, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito).
select
	customer as "Cliente",
	COUNT(1) as "Citas",
	
	COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas",
    COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas",
    COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar",
    ROUND(
        (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 
        2
    ) || '%' AS "Porcentaje de Éxito"
from naliia_schedule as ns
inner join party_party pp on pp.id = ns.customer
where date::date between '2026-04-01' and '2026-06-30'
group by customer;
* 1. Citas por local (Sucursal, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito). ```sql select service_center as "Centro de Servicio Id", nsc.name as "Centro de Servicio", COUNT(1) "# Citas", COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas", COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas", COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar", ROUND( (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 2 ) || '%' AS "Porcentaje de Éxito" from naliia_schedule ns inner join naliia_service_center nsc on ns.service_center = nsc.id where date::date between '2026-04-01' and '2026-06-30' group by service_center, nsc.name; ``` * 2. Citas por profesional (Sucursal, Profesional, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito). ```sql select professional as "Professional Id", pp.name as "Centro de Servicio", COUNT(1) "# Citas", COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas", COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas", COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar", ROUND( (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 2 ) || '%' AS "Porcentaje de Éxito" from naliia_schedule ns inner join company_employee ce on ce.id = ns.professional inner join party_party pp on pp.id = ce.party where date::date between '2026-04-01' and '2026-06-30' group by professional, pp.name; ``` * 3. Citas por cliente (Sucursal, Profesional, Rango de Fechas, Finalizadas, Canceladas, Sin finalizar, Porcentaje de Exito). ```sql select customer as "Cliente", COUNT(1) as "Citas", COUNT(1) FILTER (WHERE ns.state = 'done') AS "Finalizadas", COUNT(1) FILTER (WHERE ns.state = 'canceled') AS "Canceladas", COUNT(1) FILTER (WHERE ns.state NOT IN ('done', 'canceled')) AS "Sin Finalizar", ROUND( (COUNT(1) FILTER (WHERE ns.state = 'done')::NUMERIC / COUNT(1)::NUMERIC) * 100, 2 ) || '%' AS "Porcentaje de Éxito" from naliia_schedule as ns inner join party_party pp on pp.id = ns.customer where date::date between '2026-04-01' and '2026-06-30' group by customer; ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: OneTeam/NaliiaDev#3
No description provided.