Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- require_once 'alipay/f2fpay/config/config.php';
- class QRpay
- {
- public static function createPay($params)
- {
- require_once 'alipay/f2fpay/model/builder/AlipayTradePrecreateContentBuilder.php';
- require_once 'alipay/f2fpay/service/AlipayTradeService.php';
- // 获取订单参数,订单号需要保证唯一
- $outTradeNo = $params['out_trade_no'];
- // 交易主题,会在付款对话框中显示
- $subject = $params['subject'];
- // 交易总价
- $totalAmount = $params['total_amount'];
- $body = $params['body'];
- // 交易过期时间
- $timeExpress = "5m";
- // 支付订单参数构建
- $qrPayRequestBuilder = new \AlipayTradePrecreateContentBuilder();
- $qrPayRequestBuilder->setOutTradeNo($outTradeNo);
- $qrPayRequestBuilder->setTotalAmount($totalAmount);
- $qrPayRequestBuilder->setTimeExpress($timeExpress);
- $qrPayRequestBuilder->setSubject($subject);
- $qrPayRequestBuilder->setBody($body);
- // 调用qrPay方法获取当面付应答
- $qrPay = new \AlipayTradeService($config);
- $qrPayResult = $qrPay->qrPay($qrPayRequestBuilder);
- // 根据状态值进行业务处理
- $response = "";
- switch ($qrPayResult->getTradeStatus()){
- case "SUCCESS":
- case "FAILED":
- case "UNKNOWN":
- $response = $qrPayResult->getResponse();
- break;
- default:
- $response = "不支持的返回状态,创建订单二维码返回异常!!!";
- break;
- }
- return $response;
- }
- public static function queryPay($payId)
- {
- require_once 'alipay/f2fpay/service/AlipayTradeService.php';
- // 就是生成订单的订单号
- $out_trade_no = $payId;
- //构造查询业务请求参数对象
- $queryContentBuilder = new \AlipayTradeQueryContentBuilder();
- $queryContentBuilder->setOutTradeNo($out_trade_no);
- //初始化类对象,调用queryTradeResult方法获取查询应答
- $queryResponse = new \AlipayTradeService($config);
- $queryResult = $queryResponse->queryTradeResult($queryContentBuilder);
- // 根据状态值进行业务处理
- $response = "";
- switch ($queryResult->getTradeStatus()){
- case "SUCCESS":
- case "FAILED":
- case "UNKNOWN":
- $response = $queryResult->getResponse();
- break;
- default:
- $response = "不支持的查询状态,交易返回异常!!!";
- break;
- }
- return $response;
- }
- /**
- * 退款请求
- */
- public static function refundPay($params)
- {
- require_once 'alipay/f2fpay/model/builder/AlipayTradeRefundContentBuilder.php';
- require_once 'alipay/f2fpay/service/AlipayTradeService.php';
- // 获取退款参数
- $out_trade_no = $params['out_trade_no'];
- $refund_amount = $params['refund_amount'];
- $out_request_no = $params['out_request_no'];
- //创建退款请求builder,设置参数
- $refundRequestBuilder = new AlipayTradeRefundContentBuilder();
- $refundRequestBuilder->setOutTradeNo($out_trade_no);
- $refundRequestBuilder->setRefundAmount($refund_amount);
- $refundRequestBuilder->setOutRequestNo($out_request_no);
- //初始化类对象,调用refund获取退款应答
- $refundResponse = new AlipayTradeService($config);
- $refundResult = $refundResponse->refund($refundRequestBuilder);
- // 根据状态值进行业务处理
- $response = "";
- switch ($refundResult->getTradeStatus()){
- case "SUCCESS":
- case "FAILED":
- case "UNKNOWN":
- $response = $refundResult->getResponse();
- break;
- default:
- $response = "不支持的交易状态,交易返回异常!!!";
- break;
- }
- return $response;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement