【发布时间】:2019-09-15 02:37:39
【问题描述】:
如果在 opencart 结帐页面中选中该复选框,想要在 Total 中添加一些费用
以下是我要更改的代码。如果选择付款方式“COD”,此代码会添加费用。
<?php
class ModelExtensionTotalCashonDeliveryFee extends Model {
public function getTotal($total) {
if ($this->config->get('cashon_delivery_fee_status') && isset($this->session->data['payment_method']) && $this->session->data['payment_method']['code'] == 'cod') {
$this->load->language('extension/total/cashon_delivery_fee');
$fee_amount = 0;
$sub_total = $this->cart->getSubTotal();
if($this->config->get('cashon_delivery_fee_type') == 'P') {
$fee_amount = round((($sub_total * $this->config->get('cashon_delivery_fee_fee')) / 100), 2);
} else {
$fee_amount = $this->config->get('cashon_delivery_fee_fee');
}
$tax_rates = $this->tax->getRates($fee_amount, $this->config->get('cashon_delivery_fee_tax_class_id'));
foreach ($tax_rates as $tax_rate) {
if (!isset($taxes[$tax_rate['tax_rate_id']])) {
$taxes[$tax_rate['tax_rate_id']] = $tax_rate['amount'];
} else {
$taxes[$tax_rate['tax_rate_id']] += $tax_rate['amount'];
}
}
$total['totals'][] = array(
'code' => 'cashon_delivery_fee',
'title' => $this->language->get('text_cashon_delivery_fee'),
'value' => $fee_amount,
'sort_order' => $this->config->get('cashon_delivery_fee_sort_order')
);
$total['total'] += $fee_amount;
}
}
}
我希望它在 .tpl 中选中输入复选框 <input type="checkbox" name="checkbox">COD Charges 时添加费用
而不是在选择付款方式“cod”时。
【问题讨论】: