[*] BO : Partial refund now handle quantity

git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@11624 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
fSerny
2011-12-22 15:57:30 +00:00
parent 99007ec463
commit 71f2f43ca6
5 changed files with 36 additions and 6 deletions
+23 -2
View File
@@ -206,8 +206,29 @@ class OrderSlipCore extends ObjectModel
public function addPartialSlipDetail($order_detail_list)
{
foreach ($order_detail_list as $id_order_detail => $amount)
Db::getInstance()->AutoExecute(_DB_PREFIX_.'order_slip_detail', array('id_order_slip' => (int)($this->id), 'id_order_detail' => (int)($id_order_detail), 'product_quantity' => 0, 'amount' => (float)($amount)), 'INSERT');
foreach ($order_detail_list as $id_order_detail => $tab)
{
$tab['amount_tax_excl'] = $tab['amount_tax_incl'] = $tab['amount'];
$id_tax = (int)Db::getInstance()->getValue('SELECT `id_tax` FROM `'._DB_PREFIX_.'order_detail_tax` WHERE `id_order_detail` = '.(int)$id_order_detail);
if ($id_tax > 0)
{
$rate = (float)Db::getInstance()->getValue('SELECT `rate` FROM `'._DB_PREFIX_.'tax` WHERE `id_tax` = '.(int)$id_tax);
if ($rate > 0)
{
$rate = 1 + ($rate / 100);
$tab['amount_tax_excl'] = $tab['amount_tax_excl'] / $rate;
}
}
$insertOrderSlip = array(
'id_order_slip' => (int)($this->id),
'id_order_detail' => (int)($id_order_detail),
'product_quantity' => (int)($tab['quantity']),
'amount_tax_excl' => (float)($tab['amount_tax_excl']),
'amount_tax_incl' => (float)($tab['amount_tax_incl']),
);
Db::getInstance()->autoExecute(_DB_PREFIX_.'order_slip_detail', $insertOrderSlip, 'INSERT');
}
}
}