Просмотр исходного кода

Merge branch 'goods' of 121.43.114.153:/home/git/repositories/shopnc into goods

root 9 лет назад
Родитель
Сommit
96e9a8569d
1 измененных файлов с 7 добавлено и 5 удалено
  1. 7 5
      data/logic/payment.logic.php

+ 7 - 5
data/logic/payment.logic.php

@@ -52,13 +52,15 @@ class paymentLogic
                 $change_type = '';
                 // 计算运费+订单总额
                 $total_amount = floatval($order_info['order_amount']) + floatval($order_info['shipping_fee']);
-                if (floatval($pd_amount) > floatval($total_amount))  {
-                    $order_info['pd_amount'] = floatval($total_amount); // 余额大于订单金额的情况
-                    $pd_amount = floatval($pd_amount) - floatval($order_info['pd_amount']);
+                if ((floatval($pd_amount) + floatval($order_info['pd_amount'])) > floatval($total_amount))  {
+                    // 预存款增量, 当二次付款并使用红包的时候, 需要进行二次计算预存款
+                    $increment_amount = floatval($total_amount) - floatval($order_info['pd_amount']);
+                    $order_info['pd_amount'] += $increment_amount; // 余额大于订单金额的情况
+                    $pd_amount = floatval($pd_amount) - floatval($increment_amount);
                     $change_type = 'order_pay';
                 } else {    // 余额小于等于订单金额的情况, $pd_amount不能等于0
-                    $order_info['pd_amount'] = floatval($pd_amount);
-                    $pd_amount = 0;
+                    $order_info['pd_amount'] += floatval($pd_amount);
+                    $pd_amount = 0.0;
                     $change_type = 'order_freeze';
                 }