-- ============================================
-- WebVal - Configuration provider par défaut
-- Table pour stocker le choix de l'enseignant
-- ============================================

-- Table de configuration par défaut par enseignant
CREATE TABLE IF NOT EXISTS chatbot_default_provider (
    id INT AUTO_INCREMENT PRIMARY KEY,
    id_enseignant INT NOT NULL,
    provider VARCHAR(50) NOT NULL,
    model_default VARCHAR(100) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    FOREIGN KEY (id_enseignant) REFERENCES utilisateurs(id_utilisateur) ON DELETE CASCADE,
    UNIQUE KEY unique_enseignant (id_enseignant)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Initialiser Ollama comme défaut pour les enseignants existants
INSERT IGNORE INTO chatbot_default_provider (id_enseignant, provider, model_default)
SELECT DISTINCT id_utilisateur, 'ollama', 'ministral-3:3b'
FROM utilisateurs 
WHERE id_type = 1; -- Type enseignant

-- Mettre à jour pour ceux qui ont déjà une clé cloud active
UPDATE chatbot_default_provider cdp
JOIN (
    SELECT id_enseignant, provider, model_default
    FROM api_keys
    WHERE is_active = 1
    ORDER BY created_at ASC
    LIMIT 1
) ak ON cdp.id_enseignant = ak.id_enseignant
SET cdp.provider = ak.provider,
    cdp.model_default = ak.model_default;

SELECT '✅ Table chatbot_default_provider créée et initialisée' as Status;
