-- Script de migration pour ajouter le champ chk_username_manuel et modifier chk_mdp_manuel
-- Date: 2025-08-07
-- Description: Permet aux administrateurs d'entité de choisir entre saisie manuelle ou génération automatique des usernames et mots de passe

-- Modification du champ chk_mdp_manuel pour mettre la valeur par défaut à 0 (génération automatique)
ALTER TABLE `entites` 
MODIFY COLUMN `chk_mdp_manuel` tinyint(1) unsigned NOT NULL DEFAULT 0 
COMMENT 'Gestion des mots de passe manuelle (1) ou automatique (0)';

-- Ajout du champ chk_username_manuel dans la table entites
ALTER TABLE `entites` 
ADD COLUMN `chk_username_manuel` tinyint(1) unsigned NOT NULL DEFAULT 0 
COMMENT 'Gestion des usernames manuelle (1) ou automatique (0)' 
AFTER `chk_mdp_manuel`;

-- Par défaut, on met à 0 (génération automatique) pour toutes les entités existantes
-- Cela permet de garder le comportement actuel par défaut
UPDATE `entites` SET `chk_username_manuel` = 0 WHERE `chk_username_manuel` IS NULL;

-- Ajout d'un index sur encrypted_user_name pour améliorer les performances de vérification d'unicité
ALTER TABLE `users` 
ADD INDEX `idx_encrypted_user_name` (`encrypted_user_name`);

-- Message de confirmation
SELECT CONCAT('Migration effectuée : chk_username_manuel ajouté à la table entites') AS 'Status';