[-] BO: product supplier price should not be converted on product page #PSCFV-9420

This commit is contained in:
Rémi Gaillard
2013-07-02 15:45:12 +02:00
parent 854c16997c
commit 6b71ec8b09
3 changed files with 9 additions and 5 deletions

View File

@@ -208,9 +208,10 @@ class ProductSupplierCore extends ObjectModel
*
* @param int $id_product
* @param int $id_product_attribute Optional
* @param bool $converted_price Optional
* @return Array keys: price_te, id_currency
*/
public static function getProductPrice($id_supplier, $id_product, $id_product_attribute = 0)
public static function getProductPrice($id_supplier, $id_product, $id_product_attribute = 0, $converted_price = false)
{
if (is_null($id_supplier) || is_null($id_product))
return;
@@ -222,6 +223,9 @@ class ProductSupplierCore extends ObjectModel
$query->where('id_supplier = '.(int)$id_supplier);
$row = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow($query);
if ($converted_price)
return Tools::convertPrice($row['price_te'], $row['id_currency']);
return $row['price_te'];
}
}
}

View File

@@ -508,7 +508,7 @@ class OrderDetailCore extends ObjectModel
$this->purchase_supplier_price = (float)$product['wholesale_price'];
if ($product['id_supplier'] > 0)
$this->purchase_supplier_price = (float)ProductSupplier::getProductPrice((int)$product['id_supplier'], $product['id_product'], $product['id_product_attribute']);
$this->purchase_supplier_price = (float)ProductSupplier::getProductPrice((int)$product['id_supplier'], $product['id_product'], $product['id_product_attribute'], true);
$this->setSpecificPrice($order, $product);

View File

@@ -2717,7 +2717,7 @@ class AdminProductsControllerCore extends AdminController
if (!$product_supplier_id)
{
$product->addSupplierReference($supplier->id_supplier, (int)$attribute['id_product_attribute'], $reference, (float)Tools::convertPrice($price, $id_currency), (int)$id_currency);
$product->addSupplierReference($supplier->id_supplier, (int)$attribute['id_product_attribute'], $reference, (float)$price, (int)$id_currency);
if ($product->id_supplier == $supplier->id_supplier)
{
if ((int)$attribute['id_product_attribute'] > 0)
@@ -2743,7 +2743,7 @@ class AdminProductsControllerCore extends AdminController
{
$product_supplier = new ProductSupplier($product_supplier_id);
$product_supplier->id_currency = (int)$id_currency;
$product_supplier->product_supplier_price_te = (float)Tools::convertPrice($price, $id_currency); //converted in the default currency
$product_supplier->product_supplier_price_te = (float)$price;
$product_supplier->product_supplier_reference = pSQL($reference);
$product_supplier->update();