Completed
Push — master ( 8dc288...a1dc62 )
by wannanbigpig
15:20
created

Fund::fundAuthUnfreeze()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
ccs 2
cts 2
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * Fund.php
4
 *
5
 * Created by PhpStorm.
6
 *
7
 * author: liuml  <[email protected]>
8
 * DateTime: 2019-04-20  10:28
9
 */
10
11
namespace WannanBigPig\Alipay\Payment\Trade;
12
13
use Symfony\Component\HttpFoundation\Response;
14
use WannanBigPig\Alipay\Kernel\Support\Support;
15
use WannanBigPig\Supports\AccessData;
16
17
class Fund
18
{
19
20
    /**
21
     * alipay.fund.trans.toaccount.transfer (单笔转账到支付宝账户接口)
22
     * 单笔转账到支付宝账户接口是基于支付宝的资金处理能力,为了满足支付宝商家向其他支付宝账户转账的需求,针对有部分开发能力的商家,
23
     * 提供通过 API 接口完成支付宝账户间的转账的功能。 该接口适用行业较广,比如商家间的货款结算,商家给个人用户发放佣金等。
24
     *
25
     * @param $params
26
     *
27
     * @return \WannanBigPig\Supports\AccessData
28
     *
29
     * @throws \WannanBigPig\Alipay\Kernel\Exceptions\SignException
30
     * @throws \WannanBigPig\Supports\Exceptions\BusinessException
31
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
32
     */
33 1
    public function transfer($params): AccessData
34
    {
35 1
        return Support::executeApi($params, 'alipay.fund.trans.toaccount.transfer');
36
    }
37
38
    /**
39
     * alipay.fund.auth.order.voucher.create (资金授权发码接口) 在线调试(沙箱环境)
40
     * 收银员通过收银台或商户后台调用支付宝接口,生成二维码后,展示给用户,由用户扫描二维码完成资金冻结。
41
     *
42
     * @param $params
43
     *
44
     * @return \WannanBigPig\Supports\AccessData
45
     *
46
     * @throws \WannanBigPig\Alipay\Kernel\Exceptions\SignException
47
     * @throws \WannanBigPig\Supports\Exceptions\BusinessException
48
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
49
     */
50 1
    public function fundAuthOrderVoucherCreate($params): AccessData
51
    {
52 1
        return Support::executeApi($params, 'alipay.fund.auth.order.voucher.create');
53
    }
54
55
    /**
56
     * alipay.fund.auth.operation.cancel (资金授权撤销接口)
57
     * 只有商户由于业务系统处理超时需要终止后续业务处理或者授权结果未知时可调用撤销,其他正常授权冻结的操作如需实现相同功能请调用资金授权解冻服务。提交资金授权后调用【资金授权操作查询】,没有明确的授权结果再调用【资金授权撤销】
58
     *
59
     * @param $params
60
     *
61
     * @return \WannanBigPig\Supports\AccessData
62
     *
63
     * @throws \WannanBigPig\Alipay\Kernel\Exceptions\SignException
64
     * @throws \WannanBigPig\Supports\Exceptions\BusinessException
65
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
66
     */
67 1
    public function fundAuthOperationCancel($params)
68
    {
69 1
        return Support::executeApi($params, 'alipay.fund.auth.order.voucher.create');
70
    }
71
72
    /**
73
     * alipay.fund.auth.order.unfreeze (资金授权解冻接口) 在线调试(沙箱环境)
74
     * 当资金授权发生之后一段时间内,由于买家或者商家等其他原因需要要解冻资金,商家可通过资金授权解冻接口将授权资金进行解冻,支付宝将在收到解冻请求并验证成功后,按解冻规则将冻结资金按原路进行解冻
75
     *
76
     * @param $params
77
     *
78
     * @return \WannanBigPig\Supports\AccessData
79
     *
80
     * @throws \WannanBigPig\Alipay\Kernel\Exceptions\SignException
81
     * @throws \WannanBigPig\Supports\Exceptions\BusinessException
82
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
83
     */
84 1
    public function fundAuthUnfreeze($params)
85
    {
86 1
        return Support::executeApi($params, 'alipay.fund.auth.order.unfreeze');
87
    }
88
89
    /**
90
     * alipay.fund.auth.order.freeze (资金授权冻结接口) 在线调试(沙箱环境)
91
     * 收银员使用扫码设备读取用户支付宝钱包 “付款码” 后,将条码信息和订单信息通过本接口上送至支付宝发起资金冻结。
92
     *
93
     * @param $params
94
     *
95
     * @return \WannanBigPig\Supports\AccessData
96
     *
97
     * @throws \WannanBigPig\Alipay\Kernel\Exceptions\SignException
98
     * @throws \WannanBigPig\Supports\Exceptions\BusinessException
99
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
100
     */
101 1
    public function fundAuthFreeze($params)
102
    {
103 1
        return Support::executeApi($params, 'alipay.fund.auth.order.freeze');
104
    }
105
106
    /**
107
     * alipay.fund.auth.order.app.freeze (线上资金授权冻结接口) 在线调试(沙箱环境)
108
     * 创建支付宝授权订单并完成资金冻结。适用于线上场景完成资金授权,例如从商户 APP 端拉起支付宝收银台完成冻结。
109
     *
110
     * @param $params
111
     *
112
     * @return \Symfony\Component\HttpFoundation\Response
113
     * @throws \WannanBigPig\Supports\Exceptions\InvalidArgumentException
114
     *
115
     */
116 1
    public function fundAuthAppFreeze($params):Response
117
    {
118 1
        return Support::executeSdk($params, 'alipay.fund.auth.order.app.freeze');
119
    }
120
}
121