应用优惠券价值时的Opencart计算?
我使用的是opencart版本2.3.0.2 在这里,我得到了所有的值,除了我的息票值,税值出错,显示值也出错 我要在申请优惠券和 应用票面价值后的单位折扣 我在下面编码了一些东西,但无法获得单位折扣的正确值。。 通过使用下面的代码,我得到了总的折扣金额,我想要个人折扣税和折扣金额时,应用优惠券价值应用优惠券价值时的Opencart计算?,opencart,tax,Opencart,Tax,我使用的是opencart版本2.3.0.2 在这里,我得到了所有的值,除了我的息票值,税值出错,显示值也出错 我要在申请优惠券和 应用票面价值后的单位折扣 我在下面编码了一些东西,但无法获得单位折扣的正确值。。 通过使用下面的代码,我得到了总的折扣金额,我想要个人折扣税和折扣金额时,应用优惠券价值 $this->load->model('extension/total/coupon'); $coupon_info = $this->model_ext
$this->load->model('extension/total/coupon');
$coupon_info = $this->model_extension_total_coupon->getCoupon($this->session->data['coupon']);
if(isset($coupon_info) && !empty($coupon_info))
{
foreach($product as $taxpro) {
if($coupon_info['type'] == 'F')
{
$discount = $coupon_info['discount'] * ($taxpro['total'] / $sub_total);
} else
if ($coupon_info['type'] == 'P')
{
$discount = $taxpro['total'] / 100 * $coupon_info['discount'];
}
$tax_rates = $this->tax->getRates($taxpro['total'] - ($taxpro['total'] - $discount), $taxpro['tax_class_id']);
foreach ($tax_rates as $tax_rate)
{
echo "<pre>"; print_r($total_data['taxes'][$tax_rate['tax_rate_id']]);echo "<pre>";
if ($tax_rate['type'] == 'P')
{
$total_data['taxes'][$tax_rate['tax_rate_id']] -= $tax_rate['amount'];
}
echo "<pre>"; print_r($total_data['taxes'][$tax_rate['tax_rate_id']]);
}
foreach($tax_rates as $tax_coupon)
{
$protax = $tax_coupon['amount'];
$protax_unit = round($protax*$taxpro['quantity'],2);
$total_unit_tax += $protax_unit;
$coupon_tax += $tax_coupon['amount'];
}
}
}
$this->load->model('extension/total/优惠券');
$coupon\u info=$this->model\u extension\u total\u-coupon->getCoupon($this->session->data['coupon']);
如果(isset($优惠券信息)&&!空($优惠券信息))
{
foreach($taxpro形式的产品){
如果($优惠券信息['type']='F')
{
$折扣=$优惠券信息['折扣]]*($taxpro['total']/$sub total);
}否则
如果($优惠券信息['type']='P')
{
$折扣=$taxpro['total']/100*$优惠券信息['折扣'];
}
$tax_rates=$this->tax->getRates($taxpro['total']-($taxpro['total']-$discount),$taxpro['tax_class_id');
foreach($税率为$税率)
{
echo“”;打印($total_data['taxes'][$tax_rate['tax_rate\u id']);echo“”;
<?php
$prepareDiscount = array();
foreach ($products as $product){
$prepareDiscount[$taxRateForProduct] = $productTotal;
}
如果($tax_rate['type']='P')
{
$total_data['taxes'][$tax_rate['tax_rate_id']-=$tax_rate['amount'];
}
echo”“;打印($total_data['taxes'][$tax_rate['tax_rate\u id']);
<?php
$prepareDiscount = array();
foreach ($products as $product){
$prepareDiscount[$taxRateForProduct] = $productTotal;
}
}
foreach($tax_利率为$tax_息票)
{
$protax=$tax_息票['金额];
$protax_单位=整数($protax*$taxpro[‘数量’],2);
$total_unit_tax+=$protax_unit;
$tax_tax+=$tax_tax息票['金额];
}
}
}
您需要保存所有含税产品。我省略了很多代码,以便更清楚地了解如何思考
例如:
这是一个示例代码。如果您对更深入的内容感兴趣,只需查看支付网关是如何做到这一点的。使所有这些工作正常进行的关键是在迭代产品时准备折扣