From 6ff6a370fa7e2d3f684d53083041daa73399dcd8 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Wed, 5 Sep 2007 09:18:06 +0000 Subject: [PATCH] =?UTF-8?q?Ajout=20liste=20d=E9roulante=20des=20tarifs=20f?= =?UTF-8?q?ournisseurs=20pour=20un=20produit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/comm/propal.php | 2 +- htdocs/html.form.class.php | 88 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+), 1 deletion(-) diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index 856003a03e0..cd1fa6e2663 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -1129,7 +1129,7 @@ if ($_GET['propalid'] > 0) if ($conf->global->PRODUIT_USE_MARKUP && $conf->use_ajax && $conf->global->MAIN_CONFIRM_AJAX) { print ''."\n"; print ''; diff --git a/htdocs/html.form.class.php b/htdocs/html.form.class.php index 2a44da64a10..dab8369e725 100644 --- a/htdocs/html.form.class.php +++ b/htdocs/html.form.class.php @@ -1232,6 +1232,94 @@ class Form dolibarr_print_error($db); } } + + /** + \brief Retourne la liste des tarifs fournisseurs pour un produit + \param productid Id du produit + */ + function select_product_fourn_price($productid) + { + global $langs,$conf; + + $langs->load('stocks'); + + $sql = "SELECT p.rowid, p.label, p.ref, p.price, p.duration,"; + $sql.= " pf.ref_fourn,"; + $sql.= " pfp.rowid as idprodfournprice, pfp.price as fprice, pfp.quantity, pfp.unitprice,"; + $sql.= " s.nom"; + $sql.= " FROM ".MAIN_DB_PREFIX."product as p"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_fournisseur as pf ON p.rowid = pf.fk_product"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON s.rowid = pf.fk_soc"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_fournisseur_price as pfp ON pf.rowid = pfp.fk_product_fournisseur"; + $sql.= " WHERE p.envente = 1"; + $sql.= " AND s.fournisseur = 1"; + $sql.= " AND p.rowid = ".$productid; + $sql.= " ORDER BY s.nom, pf.ref_fourn DESC"; + + dolibarr_syslog("Form::select_product_fourn_price sql=$sql",LOG_DEBUG); + + $result=$this->db->query($sql); + + if ($result) + { + $num = $this->db->num_rows($result); + + print ''; + + $this->db->free($result); + } + } + else + { + dolibarr_print_error($db); + } + } /** * \brief Retourne la liste déroulante des adresses de livraison