[-] BO: product supplier price should not be converted on product page #PSCFV-9420
This commit is contained in:
@@ -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'];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user