|
@@ -53,22 +53,11 @@ class Wechat extends Core
|
|
|
}
|
|
|
|
|
|
# 退款
|
|
|
- public function refund($order_id)
|
|
|
+ public function refundByOrder($order_id)
|
|
|
{
|
|
|
$info = Dever::db('pay/order')->one(array('order_id' => $order_id));
|
|
|
if ($info && ($info['status'] == 1 || $info['status'] == 2 || $info['status'] == 5)) {
|
|
|
- $out_trade_no = $info['order_id'];
|
|
|
- $info['cash'] = $info['cash'] * 100;
|
|
|
- $total_fee = $info['cash'];
|
|
|
- $refund_fee = $info['cash'];
|
|
|
- $input = new \WxPayRefund();
|
|
|
- $input->SetOut_trade_no($out_trade_no);
|
|
|
- $input->SetTotal_fee($total_fee);
|
|
|
- $input->SetRefund_fee($refund_fee);
|
|
|
-
|
|
|
- $input->SetOut_refund_no($out_trade_no . '_' . time());
|
|
|
- $input->SetOp_user_id($this->config->GetMerchantId());
|
|
|
- $result = \WxPayApi::refund($this->config, $input);
|
|
|
+ $this->refund($info['order_id'], $info['cash']);
|
|
|
|
|
|
Dever::db('pay/order')->update(array('where_id' => $info['id'], 'status' => 5));
|
|
|
|
|
@@ -78,6 +67,25 @@ class Wechat extends Core
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ # 退款
|
|
|
+ public function refund($order_id, $cash)
|
|
|
+ {
|
|
|
+ $out_trade_no = $order_id;
|
|
|
+ $info['cash'] = $cash * 100;
|
|
|
+ $total_fee = $cash;
|
|
|
+ $refund_fee = $cash;
|
|
|
+ $input = new \WxPayRefund();
|
|
|
+ $input->SetOut_trade_no($out_trade_no);
|
|
|
+ $input->SetTotal_fee($total_fee);
|
|
|
+ $input->SetRefund_fee($refund_fee);
|
|
|
+
|
|
|
+ $input->SetOut_refund_no($out_trade_no . '_' . time());
|
|
|
+ $input->SetOp_user_id($this->config->GetMerchantId());
|
|
|
+ $result = \WxPayApi::refund($this->config, $input);
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 获取统一下单的基本信息
|
|
|
*/
|