From 185728023443a0ace18b58ec16184a0a9dac38db Mon Sep 17 00:00:00 2001 From: Florian HENRY Date: Sun, 29 Jun 2014 17:39:54 +0200 Subject: [PATCH 1/2] Fix [ bug #1516 ] PRODUIT_CUSTOMER_PRICES don't take default price if not defined for customer --- htdocs/comm/propal.php | 19 +++++++++++++------ htdocs/commande/fiche.php | 17 ++++++++++++----- htdocs/compta/facture.php | 17 ++++++++++++----- 3 files changed, 37 insertions(+), 16 deletions(-) diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index 63220ce415e8b..eaf4f0031eb1d 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -625,17 +625,24 @@ $prodcustprice = new Productcustomerprice($db); - $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); + $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id); $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); - if ($result) { + if ($result >= 0) { if (count($prodcustprice->lines) > 0) { $found = true; - $pu_ht = price($prodcustprice->lines [0]->price); - $pu_ttc = price($prodcustprice->lines [0]->price_ttc); - $price_base_type = $prodcustprice->lines [0]->price_base_type; - $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + $pu_ht = price($prodcustprice->lines[0]->price); + $pu_ttc = price($prodcustprice->lines[0]->price_ttc); + $price_base_type = $prodcustprice->lines[0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines[0]->tva_tx; + }else { + $pu_ht = $prod->price; + $pu_ttc = $prod->price_ttc; + $price_min = $prod->price_min; + $price_base_type = $prod->price_base_type; } + }else { + setEventMessage($prodcustprice->error,'errors'); } } else diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php index f327eb0252d64..ed8084d18dc4c 100644 --- a/htdocs/commande/fiche.php +++ b/htdocs/commande/fiche.php @@ -593,14 +593,21 @@ $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); - if ($result) { + if ($result >= 0) { if (count($prodcustprice->lines) > 0) { $found = true; - $pu_ht = price($prodcustprice->lines [0]->price); - $pu_ttc = price($prodcustprice->lines [0]->price_ttc); - $price_base_type = $prodcustprice->lines [0]->price_base_type; - $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + $pu_ht = price($prodcustprice->lines[0]->price); + $pu_ttc = price($prodcustprice->lines[0]->price_ttc); + $price_base_type = $prodcustprice->lines[0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines[0]->tva_tx; + } else { + $pu_ht = $prod->price; + $pu_ttc = $prod->price_ttc; + $price_min = $prod->price_min; + $price_base_type = $prod->price_base_type; } + } else { + setEventMessage($prodcustprice->error,'errors'); } } else diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 5c359b718642b..d81ee394fbf26 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1159,14 +1159,21 @@ $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); - if ($result) { + if ($result >= 0) { if (count($prodcustprice->lines) > 0) { $found = true; - $pu_ht = price($prodcustprice->lines [0]->price); - $pu_ttc = price($prodcustprice->lines [0]->price_ttc); - $price_base_type = $prodcustprice->lines [0]->price_base_type; - $prod->tva_tx = $prodcustprice->lines [0]->tva_tx; + $pu_ht = price($prodcustprice->lines[0]->price); + $pu_ttc = price($prodcustprice->lines[0]->price_ttc); + $price_base_type = $prodcustprice->lines[0]->price_base_type; + $prod->tva_tx = $prodcustprice->lines[0]->tva_tx; + }else { + $pu_ht = $prod->price; + $pu_ttc = $prod->price_ttc; + $price_min = $prod->price_min; + $price_base_type = $prod->price_base_type; } + } else { + setEventMessage($prodcustprice->error,'errors'); } } else From e8bb5d5cc0f3f5f5d45ab5ccdb90f5c02586281e Mon Sep 17 00:00:00 2001 From: Florian HENRY Date: Sun, 29 Jun 2014 17:43:22 +0200 Subject: [PATCH 2/2] Syntax --- htdocs/commande/fiche.php | 2 +- htdocs/compta/facture.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php index ed8084d18dc4c..8f6df3135066f 100644 --- a/htdocs/commande/fiche.php +++ b/htdocs/commande/fiche.php @@ -590,7 +590,7 @@ $prodcustprice = new Productcustomerprice($db); - $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); + $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id); $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); if ($result >= 0) { diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index d81ee394fbf26..26c777f788dd7 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1156,7 +1156,7 @@ $prodcustprice = new Productcustomerprice($db); - $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->client->id); + $filter = array('t.fk_product' => $prod->id,'t.fk_soc' => $object->thirdparty->id); $result = $prodcustprice->fetch_all('', '', 0, 0, $filter); if ($result >= 0) {