-- V12 : Alignement colonnes utilisateurs avec l'entité Membre (refactorisée depuis V1)
-- V1 a créé les colonnes avec d'anciens noms ; ce script corrige l'écart.
--
-- 1. Renommage statut → statut_compte  (Membre.java @Column(name="statut_compte"))
-- 2. Ajout telephone_wave VARCHAR(20)  (Membre.java @Column(name="telephone_wave"))
--    Format E.164 international (+[1-9][0-9]{6,14}) — Wave CI/SN/ML/BF/CM...

-- 1. Renommer statut → statut_compte si pas encore fait
DO $$
BEGIN
    IF EXISTS (
        SELECT 1 FROM information_schema.columns
        WHERE table_name = 'utilisateurs' AND column_name = 'statut'
    ) AND NOT EXISTS (
        SELECT 1 FROM information_schema.columns
        WHERE table_name = 'utilisateurs' AND column_name = 'statut_compte'
    ) THEN
        ALTER TABLE utilisateurs RENAME COLUMN statut TO statut_compte;
    END IF;
END $$;

-- 2. Ajouter telephone_wave si la colonne n'existe pas encore
ALTER TABLE utilisateurs ADD COLUMN IF NOT EXISTS telephone_wave VARCHAR(20);

-- Si la colonne existe déjà avec une taille inférieure, l'élargir
DO $$
BEGIN
    IF EXISTS (
        SELECT 1 FROM information_schema.columns
        WHERE table_name = 'utilisateurs'
          AND column_name = 'telephone_wave'
          AND character_maximum_length < 20
    ) THEN
        ALTER TABLE utilisateurs ALTER COLUMN telephone_wave TYPE VARCHAR(20);
    END IF;
END $$;
