-- Fix: Créer les comptes dans plan_comptable pour id_copro = 2
-- Le problème: Les comptes sont dans plan_comptable avec id_copro=1 seulement
-- Les écritures utilisent id_copro=2, donc le LEFT JOIN échoue

-- 1. Vérifier les comptes manquants
SELECT DISTINCT l.numero_compte, e.id_copro
FROM lignes_ecritures l
INNER JOIN ecritures_comptables e ON l.id_ecriture = e.id
LEFT JOIN plan_comptable p ON l.numero_compte = p.numero_compte AND p.id_copro = e.id_copro
WHERE p.id IS NULL
ORDER BY l.numero_compte;

-- 2. Copier les comptes de template (id_copro=1) vers toutes les copros actives
INSERT INTO plan_comptable (numero_compte, libelle, description, type_compte, classe, id_copro, id_entite, type_entite)
SELECT 
    p.numero_compte,
    p.libelle,
    p.description,
    p.type_compte,
    p.classe,
    c.id_copro, -- ID de la copro cible
    NULL, -- Pas d'entité spécifique pour les comptes généraux
    NULL
FROM plan_comptable p
CROSS JOIN (SELECT DISTINCT id_copro FROM ecritures_comptables WHERE id_copro != 1) c
WHERE p.id_copro = 1 -- Template
    AND p.id_entite IS NULL -- Seulement les comptes généraux (pas les 401XXX, 450XXX, etc.)
    AND NOT EXISTS (
        SELECT 1 
        FROM plan_comptable p2 
        WHERE p2.numero_compte = p.numero_compte 
        AND p2.id_copro = c.id_copro
    );

-- 3. Vérifier le résultat
SELECT numero_compte, libelle, id_copro
FROM plan_comptable
WHERE numero_compte IN ('706001', '628000', '791000')
ORDER BY numero_compte, id_copro;
