extend/alipay/Refund.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace alipay;
use think\Loader;
Loader::import('alipay.Config');
Loader::import('alipay.pay.service.AlipayTradeService');
loader::import('alipay.pay.buildermodel.AlipayTradeRefundContentBuilder');
/**
* 统一收单交易退款接口
*
* 用法:
* 调用 \alipay\Refund::exec($params) 即可
*
*/
class Refund
{
/**
* 主入口
* @param array $params 退款参数, 具体如下
* @param string $params['trade_no']/$params['out_trade_no'] 商户订单号或支付宝单号其中之一
* @param string $params['out_request_no'] 商户退款号(可选, 如同一笔交易多次退款, 则必填)
* @param float $params['refund_amount'] 退款金额
*/
public static function exec($params)
{
// 1.校检参数
self::checkParams($params);
// 2.构造请求参数
$RequestBuilder = self::builderParams($params);
// 3.获取配置
// $config = config('alipay');
$config_obj = new \Config();
$config= $config_obj->get_config();
$aop = new \AlipayTradeService($config);
// 4.发送请求
$response = $aop->Refund($RequestBuilder);
// 5.转为数组格式返回
$response = json_decode(json_encode($response), true);
// 6.进行结果处理
if (!empty($response['code']) && $response['code'] != '10000') {
self::processError('交易退款接口出错, 错误码: '.$response['code'].' 错误原因: '.$response['sub_msg']);
}
return $response;
}
/**
* 校检参数
*/
// private static function checkParams($params)
// {
// if (empty($params['trade_no']) && empty($params['out_trade_no'])) {
// self::processError('商户订单号(out_trade_no)和支付宝单号(trade_no)不得同时为空');
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。