-- Phoenix P3.3.1 - Factures fournisseurs
-- À importer uniquement après Beta 2 / Phoenix P3.2.8

CREATE TABLE IF NOT EXISTS factures_fournisseurs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    fournisseur_id INT NOT NULL,
    commande_fournisseur_id INT NULL,
    numero_interne VARCHAR(30) NOT NULL UNIQUE,
    numero_facture_fournisseur VARCHAR(100) NOT NULL,
    date_facture DATE NOT NULL,
    date_echeance DATE NULL,
    montant_ht DECIMAL(12,2) NOT NULL DEFAULT 0,
    montant_tva DECIMAL(12,2) NOT NULL DEFAULT 0,
    montant_ttc DECIMAL(12,2) NOT NULL DEFAULT 0,
    montant_regle DECIMAL(12,2) NOT NULL DEFAULT 0,
    reste_du DECIMAL(12,2) NOT NULL DEFAULT 0,
    statut VARCHAR(30) NOT NULL DEFAULT 'non_reglee',
    observations TEXT NULL,
    actif TINYINT(1) NOT NULL DEFAULT 1,
    date_creation DATETIME DEFAULT CURRENT_TIMESTAMP,
    date_modification DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_ff_fournisseur (fournisseur_id),
    INDEX idx_ff_commande (commande_fournisseur_id),
    INDEX idx_ff_date (date_facture),
    INDEX idx_ff_echeance (date_echeance),
    INDEX idx_ff_statut (statut)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

CREATE TABLE IF NOT EXISTS reglements_fournisseurs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    facture_fournisseur_id INT NOT NULL,
    date_reglement DATE NOT NULL,
    montant DECIMAL(12,2) NOT NULL DEFAULT 0,
    mode_reglement VARCHAR(50) NULL,
    reference_reglement VARCHAR(100) NULL,
    observations TEXT NULL,
    actif TINYINT(1) NOT NULL DEFAULT 1,
    date_creation DATETIME DEFAULT CURRENT_TIMESTAMP,
    INDEX idx_rf_facture (facture_fournisseur_id),
    INDEX idx_rf_date (date_reglement)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
