Skip to content

Commit 8c367ec

Browse files
committed
银联退款处理
1 parent fcc6579 commit 8c367ec

File tree

1 file changed

+23
-7
lines changed

1 file changed

+23
-7
lines changed

src/App/Models/Order.php

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -92,13 +92,14 @@ public function refund($order)
9292
$gatewayNmae = $order['gateway'];
9393
$gateway = resolve('omnipay')->gateway($gatewayNmae);
9494
switch ($gatewayNmae) {
95-
case 'alipay':
96-
$response = $this->alipayRefund($order, $gateway);
97-
break;
98-
default:
99-
# code...
100-
break;
95+
case 'alipay':
96+
$response = $this->alipayRefund($order, $gateway);
97+
break;
98+
case 'unionpay':
99+
$response = $this->unionpayRefund($order, $gateway);
100+
break;
101101
}
102+
dd($response->getData());
102103
if ($response->isSuccessful()) {
103104
$this->where('order_id', $order['order_id'])->update(['status' => 'refund']);
104105
}
@@ -119,7 +120,22 @@ protected function alipayRefund($order, $gateway)
119120
'out_trade_no' => $order['order_id'],
120121
'refund_amount' => $order['fee']
121122
];
122-
ksort($biz);
123123
return $gateway->refund()->setBizContent($biz)->send();
124124
}
125+
/**
126+
* [unionpayRefund 银联退款]
127+
* @param [type] $order [description]
128+
* @param [type] $gateway [description]
129+
* @return [type] [description]
130+
*/
131+
protected function unionpayRefund($order, $gateway)
132+
{
133+
$biz = [
134+
'orderId' => $order['order_id'],
135+
'txnTime' => date('YmdHis', strtotime($order['created_at']['date'])),
136+
'txnAmt' => $order['fee'] * 100,
137+
'queryId' => $order['query_id'],
138+
];
139+
return $gateway->refund($biz)->send();
140+
}
125141
}

0 commit comments

Comments
 (0)