From b7fdf7d03f1d7a3a5ea7fafdd95a2be825a8956e Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Sat, 30 Apr 2016 20:05:51 +0200 Subject: [PATCH] api/client/vidange --- api/client/payer.php | 3 ++- api/client/vidange.php | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 api/client/vidange.php diff --git a/api/client/payer.php b/api/client/payer.php index ed0cf8f..10bffb1 100644 --- a/api/client/payer.php +++ b/api/client/payer.php @@ -25,6 +25,7 @@ if (donne("quantite")) { $montant = $prixItem * $quantite; } else { $montant = floatval($_POST["montant"]); + $quantite = 0; } if ($montant <= 0) { @@ -52,7 +53,7 @@ if (!$requete->execute()) { retour("erreur_bdd", ["message" => $requete->error]); } $requete->close(); -$id = transaction(TRANSACTION_PAIEMENT, $_POST["idCarte"], $montant); +$id = transaction(TRANSACTION_PAIEMENT, $_POST["idCarte"], $montant, $quantite); retour("ok", ["id" => $id, "soldeAncien" => $soldeAncien, "soldeNouveau" => $soldeNouveau]); diff --git a/api/client/vidange.php b/api/client/vidange.php new file mode 100644 index 0000000..3b14803 --- /dev/null +++ b/api/client/vidange.php @@ -0,0 +1,39 @@ +prepare("SELECT solde FROM Clients WHERE idCarte=?"); +$requete->bind_param("s", $_POST["idCarte"]); +$requete->bind_result($soldeAncien); +if (!$requete->execute()) { + retour("erreur_bdd", ["message" => $requete->error]); +} +$requete->fetch(); +$requete->close(); + +if ($soldeAncien <= 0) { + retour("solde_negatif"); +} + +$requete = $db->prepare("UPDATE Clients SET solde=0 WHERE idCarte=?"); +$requete->bind_param("s", $_POST["idCarte"]); +if (!$requete->execute()) { + retour("erreur_bdd", ["message" => $requete->error]); +} +$requete->close(); +$id = transaction(TRANSACTION_VIDANGE, $_POST["idCarte"], $soldeAncien); + + +retour("ok", ["id" => $id, "soldeAncien" => $soldeAncien]); + +?> -- libgit2 0.21.2