<?php 
require_once __DIR__ . "/../../config/db.php";
require_once __DIR__ . "/../../includes/check_auth.php";

// Récupération du paramètre id
$commande_id = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);

if (!$commande_id) {
    echo '<div class="alert alert-warning">Aucune commande sélectionnée.</div>';
    return;
}

// Récupérer la commande fournisseur
$stmt = $conn->prepare("
    SELECT cf.*, f.nom AS fournisseur
    FROM commandes_fournisseurs cf
    LEFT JOIN fournisseurs f ON f.id = cf.fournisseur_id
    WHERE cf.id = ?
");
$stmt->execute([$commande_id]);
$commande = $stmt->fetch(PDO::FETCH_ASSOC);

if (!$commande) {
    echo '<div class="alert alert-warning">Commande fournisseur introuvable.</div>';
    return;
}

// Vérifier le statut de la commande
if ($commande['statut'] === 'annulee') {
    echo '<div class="alert alert-danger">Cette commande a été annulée.</div>';
    return;
}

// Récupérer les produits restants à réceptionner
$stmt = $conn->prepare("
    SELECT 
        d.id,
        d.produit_id,
        p.nom,
        d.quantite_commandee,
        d.quantite_livree,
        COALESCE(
            (
                SELECT ad.prix_unitaire
                FROM achats_details ad
                JOIN achats a ON a.id = ad.achat_id
                WHERE ad.produit_id = d.produit_id
                AND a.fournisseur_id = ?
                ORDER BY a.date_achat DESC
                LIMIT 1
            ),
            p.prix_achat,
            0
        ) AS prix_achat
    FROM commandes_fournisseurs_details d
    JOIN produits p ON p.id = d.produit_id
    WHERE d.commande_id = ?
");
$stmt->execute([$commande['fournisseur_id'], $commande_id]);
$details = $stmt->fetchAll(PDO::FETCH_ASSOC);

// Dépôts (optionnels)
$depots = $conn->query("SELECT id, nom FROM depots ORDER BY nom")->fetchAll(PDO::FETCH_ASSOC);

?>

<div class="container-fluid px-2">

    <h1 class="mt-4"> Nouvelle Réception Fournisseur</h1>
    <ol class="breadcrumb mb-4">
        <li class="breadcrumb-item"><a href="/eagle_client_istanbulcups/index.php?page=dashboard">Tableau de bord</a></li>
        <li class="breadcrumb-item active">Nouvelle Réception</li>
    </ol>

<?php if (!$commande): ?>
    <div class="alert alert-warning">
        Commande fournisseur invalide ou introuvable.
    </div>
<?php else: ?>

<form method="POST" action="/eagle_client_istanbulcups/api/achats/reception_fournisseur_save.php">
    <input type="hidden" name="commande_id" value="<?= $commande_id ?>">

    <div class="mb-3 row">
        <div class="col-md-6">
            <label>Commande :</label>
            <input type="text" class="form-control" value="<?= htmlspecialchars($commande['numero']) ?>" disabled>
        </div>
        <div class="col-md-6">
            <label>Fournisseur :</label>
            <input type="text" class="form-control" value="<?= htmlspecialchars($commande['fournisseur']) ?>" disabled>
        </div>
    </div>

    <div class="mb-3 row">
        <div class="col-md-6">
            <label>Date de réception :</label>
            <input type="datetime-local" name="date_reception" 
                   value="<?= date('Y-m-d\TH:i') ?>" class="form-control" required>
        </div>
        <div class="col-md-6">
            <label>Dépôt (optionnel) :</label>
            <select name="depot_id" class="form-control">
                <option value="">-- Aucun dépôt --</option>
                <?php foreach ($depots as $d): ?>
                    <option value="<?= $d['id'] ?>"><?= htmlspecialchars($d['nom']) ?></option>
                <?php endforeach; ?>
            </select>
        </div>
    </div>

    <hr>
    <table class="table table-bordered">
        <thead class="table-dark">
            <tr>
                <th>Produit</th>
                <th>Commandé</th>
                <th>Déjà livré</th>
                <th>Livré maintenant</th>
            </tr>
        </thead>
        <tbody>
        <?php foreach ($details as $d):
            $reste = $d['quantite_commandee'] - $d['quantite_livree'];
            if ($reste <= 0) continue;
        ?>
            <tr>
                <td><?= htmlspecialchars($d['nom']) ?></td>
                <td class="text-center"><?= $d['quantite_commandee'] ?></td>
                <td class="text-center"><?= $d['quantite_livree'] ?></td>
                <td>
                    <input type="number" name="produits[<?= $d['produit_id'] ?>]"
                           class="form-control" min="0" max="<?= $reste ?>" value="<?= $reste ?>" required>
                </td>
            </tr>
        <?php endforeach; ?>
        </tbody>
    </table>

    <button class="btn btn-success"><i class="fa fa-check"></i> Valider réception</button>
</form>

<?php endif; ?>
</div>
<?php include __DIR__ . "/../../includes/layout_end.php"; ?>