CREATE TABLE IF NOT EXISTS document_actions (
    id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    document_type VARCHAR(30) NOT NULL,
    document_id INT NOT NULL,
    action_code VARCHAR(50) NOT NULL,
    libelle VARCHAR(255) NOT NULL,
    document_lie_type VARCHAR(30) NULL,
    document_lie_id INT NULL,
    utilisateur_id INT NULL,
    date_action DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    INDEX idx_document_actions_document (document_type, document_id, date_action),
    INDEX idx_document_actions_lie (document_lie_type, document_lie_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Statuts métier normalisés sans casser les valeurs historiques.
UPDATE devis SET statut = 'En cours' WHERE statut IN ('brouillon', 'émis', 'emise', 'émise');
UPDATE bons_livraison SET statut = 'Préparé' WHERE statut = 'préparé';
