37 lines
1.5 KiB
SQL
37 lines
1.5 KiB
SQL
-- ============================================
|
|
-- 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;
|