espace-paie-odentas/migrations/add_temps_travail_reel_columns.sql
odentas 965b1fb9cd feat: Ajouter interface de saisie en masse du temps de travail réel
- Création de la page /staff/contrats/saisie-temps-reel avec tableau éditable
- Ajout des colonnes jours_representations et jours_repetitions dans l'API
- Construction intelligente du TT Contractuel (concaténation des sources)
- Ajout de la colonne temps_reel_traite pour marquer les contrats traités
- Interface avec filtres (année, mois, organisation, recherche)
- Tri par date/salarié
- Édition inline avec auto-save via API
- Checkbox pour marquer comme traité (masque automatiquement la ligne)
- Toggle pour afficher/masquer les contrats traités
- Migration SQL pour la colonne temps_reel_traite
- Ajout du menu 'Temps de travail réel' dans la sidebar
- Logs de débogage pour le suivi des sauvegardes
2025-11-28 12:31:02 +01:00

34 lines
2.3 KiB
SQL

-- Migration: Ajouter les colonnes pour le temps de travail réel
-- Ces colonnes sont purement informatives pour les clients et ne sont pas utilisées pour la génération PDF
-- Ajouter les colonnes dans cddu_contracts
ALTER TABLE cddu_contracts
-- Jours travaillés
ADD COLUMN IF NOT EXISTS jours_travail_reel TEXT,
ADD COLUMN IF NOT EXISTS jours_travail_non_artiste_reel TEXT,
-- Représentations
ADD COLUMN IF NOT EXISTS nb_representations_reel INTEGER DEFAULT 0,
ADD COLUMN IF NOT EXISTS dates_representations_reel TEXT,
-- Répétitions
ADD COLUMN IF NOT EXISTS nb_services_repetitions_reel INTEGER DEFAULT 0,
ADD COLUMN IF NOT EXISTS nb_heures_repetitions_reel NUMERIC(10, 2) DEFAULT 0,
ADD COLUMN IF NOT EXISTS dates_repetitions_reel TEXT,
-- Heures annexes et AEM
ADD COLUMN IF NOT EXISTS nb_heures_annexes_reel NUMERIC(10, 2) DEFAULT 0,
ADD COLUMN IF NOT EXISTS nb_cachets_aem_reel INTEGER DEFAULT 0,
ADD COLUMN IF NOT EXISTS nb_heures_aem_reel NUMERIC(10, 2) DEFAULT 0;
-- Ajouter des commentaires pour documenter les colonnes
COMMENT ON COLUMN cddu_contracts.jours_travail_reel IS 'Jours de travail réels effectués (artiste) - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.jours_travail_non_artiste_reel IS 'Jours de travail réels effectués (technicien) - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_representations_reel IS 'Nombre réel de représentations effectuées - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.dates_representations_reel IS 'Dates réelles des représentations - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_services_repetitions_reel IS 'Nombre réel de services de répétition - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_heures_repetitions_reel IS 'Nombre réel d''heures de répétition - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.dates_repetitions_reel IS 'Dates réelles des répétitions - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_heures_annexes_reel IS 'Nombre réel d''heures Annexes 8 - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_cachets_aem_reel IS 'Nombre réel de cachets AEM - Informatif pour client';
COMMENT ON COLUMN cddu_contracts.nb_heures_aem_reel IS 'Nombre réel d''heures AEM - Informatif pour client';