services->setting->mall->get($form['mall_id'], 'freight'); if (!empty($config['is_open'])) { $arr = json_decode($config['full_reduce'], true); $arr = ArrayHelper::arraySort($arr, 'full', 'desc'); foreach ($arr as $val) { if ($val['full'] <= $shipping_fee) { $reduce = $val['reduce']; break; } } if ($reduce > $shipping_fee) $reduce = $shipping_fee; } if ($reduce) { $item['mch_order_info']['reduce_shipping_money'] = $reduce; $item['mch_order_info']['pay_money'] = $item['mch_order_info']['pay_money'] - $reduce; $prev_freight_reduce = $form->marketing['deduct']['freight_reduce']['money'] ?? 0; $form->marketing['deduct']['freight_reduce'] = ['name' => "满邮减免", 'money' => $reduce + $prev_freight_reduce]; // $form['total_pay_money'] = round($form['total_pay_money'] - $reduce,2);// 计算总额 } } return $item; } }