feat(#193): table absences_garde + drop evenements
Propagation depuis develop. Co-authored-by: Julien Martin <julien.martin@ptits-pas.fr>
This commit was merged in pull request #198.
This commit is contained in:
@@ -79,12 +79,11 @@ LEFT JOIN avenants_contrats a ON a.id_contrat = c.id
|
||||
GROUP BY c.id, c.id_dossier, c.statut
|
||||
ORDER BY c.cree_le DESC;
|
||||
|
||||
\echo '=== 9) Evénements par enfant (30 derniers jours) =============='
|
||||
SELECT ev.id, ev.type, ev.id_enfant, e.prenom AS enfant, ev.date_debut, ev.date_fin, ev.statut
|
||||
FROM evenements ev
|
||||
JOIN enfants e ON e.id = ev.id_enfant
|
||||
WHERE ev.date_debut >= (NOW()::date - INTERVAL '30 days')
|
||||
ORDER BY ev.date_debut DESC;
|
||||
\echo '=== 9) Absences_garde (30 derniers jours) ====================='
|
||||
SELECT ag.id, ag.type, ag.id_placement, ag.date_debut, ag.date_fin, ag.statut, ag.expire_at
|
||||
FROM absences_garde ag
|
||||
WHERE ag.date_debut >= (NOW()::date - INTERVAL '30 days')
|
||||
ORDER BY ag.date_debut DESC;
|
||||
|
||||
\echo '=== 10) Uploads & notifications récentes ======================='
|
||||
SELECT u.courriel, up.fichier_url, up.type_fichier, up.cree_le
|
||||
@@ -135,11 +134,11 @@ FROM avenants_contrats a
|
||||
LEFT JOIN contrats c ON c.id = a.id_contrat
|
||||
WHERE c.id IS NULL;
|
||||
|
||||
-- Evénements sans enfant
|
||||
SELECT ev.*
|
||||
FROM evenements ev
|
||||
LEFT JOIN enfants e ON e.id = ev.id_enfant
|
||||
WHERE e.id IS NULL;
|
||||
-- Absences sans placement
|
||||
SELECT ag.*
|
||||
FROM absences_garde ag
|
||||
LEFT JOIN enfants_assistantes_maternelles eam ON eam.id = ag.id_placement
|
||||
WHERE eam.id IS NULL;
|
||||
|
||||
\echo '=== 13) Performance : EXPLAIN sur requêtes clés ==============='
|
||||
|
||||
@@ -151,12 +150,12 @@ WHERE m.id_dossier = 'dddddddd-dddd-dddd-dddd-dddddddddddd'
|
||||
ORDER BY m.cree_le DESC
|
||||
LIMIT 20;
|
||||
|
||||
-- Evénements par enfant et période (idx_evenements_id_enfant_date_debut)
|
||||
-- Absences par placement et période (idx_absences_garde_placement_dates)
|
||||
EXPLAIN ANALYZE
|
||||
SELECT ev.*
|
||||
FROM evenements ev
|
||||
WHERE ev.id_enfant = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
|
||||
AND ev.date_debut >= '2025-01-01';
|
||||
SELECT ag.*
|
||||
FROM absences_garde ag
|
||||
WHERE ag.id_placement IS NOT NULL
|
||||
AND ag.date_debut >= '2025-01-01';
|
||||
|
||||
-- Notifications non lues (idx_notifications_user_lu_cree_le)
|
||||
EXPLAIN ANALYZE
|
||||
@@ -199,7 +198,7 @@ SELECT
|
||||
(SELECT COUNT(*) FROM messages) AS nb_messages,
|
||||
(SELECT COUNT(*) FROM contrats) AS nb_contrats,
|
||||
(SELECT COUNT(*) FROM avenants_contrats) AS nb_avenants,
|
||||
(SELECT COUNT(*) FROM evenements) AS nb_evenements,
|
||||
(SELECT COUNT(*) FROM absences_garde) AS nb_absences_garde,
|
||||
(SELECT COUNT(*) FROM uploads) AS nb_uploads,
|
||||
(SELECT COUNT(*) FROM notifications) AS nb_notifications,
|
||||
(SELECT COUNT(*) FROM validations) AS nb_validations;
|
||||
|
||||
Reference in New Issue
Block a user