extend/alipay/RefundQuery.php

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace alipay;

use think\Loader;
Loader::import('alipay.Config');
Loader::import('alipay.pay.service.AlipayTradeService');
loader::import('alipay.pay.buildermodel.AlipayTradeFastpayRefundQueryContentBuilder');

/**
* 退款统一订单查询
*
* 用法:
* 调用 \alipay\RefundQuery::exec($params) 即可
*
*/
class RefundQuery
{
    /**
     * 主入口
     * @param  array $params 退款查询参数, 具体如下:
     * @param string $params['trade_no']/$params['out_trade_no'] 商户订单号或支付宝单号其中之一
     * @param string $params['out_request_no'] 可空, 为空时, 退款号为订单号
     */
    public static function exec($params)
    {
        // 1.校检参数
         if (self::check_empty(trim($params['out_trade_no']))==false && self::check_empty(trim($params['trade_no']))==false) {
              throw new \think\Exception('商户订单号(out_trade_no)和支付宝单号(trade_no)不可同时为空');
        }

        // 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->refundQuery($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;
    }
  /**
	 * 校验$value是否非空
	 *  if not null ,return true;
	 *    if is  set, return true;
	 **/
	private static function check_empty($value) {
		if (!isset($value))

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。