parent
45f11579fb
commit
56e949aca7
@ -0,0 +1,118 @@ |
||||
<?php |
||||
|
||||
namespace Tansilu\HfPayLib\factory\object\trade; |
||||
|
||||
use Tansilu\HfPayLib\exception\ParamsException; |
||||
use Tansilu\HfPayLib\factory\object\RequestObj; |
||||
use Tansilu\HfPayLib\utils\StrFilterHelper; |
||||
|
||||
/** |
||||
* 取现请求参数 |
||||
* |
||||
* @property string $user_cust_id 用户客户号(付款人汇付客户号)必选 |
||||
* @property string $order_date 订单日期 必选 |
||||
* @property string $order_id 订单号 必选 |
||||
* @property string $trans_amt 交易金额 必选,金额格式必须保留两位小数,例如2.00 |
||||
* @property string $cash_type 取现方式 必选 |
||||
* @property string $transaction_addr 交易发生地 必选 |
||||
* @property string $purpose 用途 必选 |
||||
* @property string $user_ip_addr 对手方IP 必选 |
||||
* @property string $bind_card_id 取现绑卡ID 可选 |
||||
* @property string $out_acct_id 出账账户号 可选 |
||||
* @property string $fee_acct_id 手续费扣款子账户号 可选 |
||||
* @property string $fee_cust_id 手续费扣款客户号 可选 |
||||
* @property string $serv_amt 服务费 可选 |
||||
* @property string $serv_cust_id 服务费收取方客户号 可选 |
||||
* @property string $serv_acct_id 服务费账户号 可选 |
||||
* @property string $bg_ret_url 商户后台应答地址 可选 |
||||
* @property string $mer_priv 商户私有域 可选 |
||||
* @property string $extension 扩展域 可选 |
||||
* @property DeviceInfo $dev_info_json 设备静态信息 可选 |
||||
*/ |
||||
class WithdrawCashRequest |
||||
{ |
||||
|
||||
use RequestObj; |
||||
|
||||
public function toParams(): array |
||||
{ |
||||
$params = []; |
||||
|
||||
if(empty($this->data['user_cust_id'])) { |
||||
throw new ParamsException('付款人汇付客户号不能为空', 'user_cust_id'); |
||||
} |
||||
$params['user_cust_id'] = $this->data['user_cust_id']; |
||||
|
||||
if(empty($this->data['order_date'])) { |
||||
throw new ParamsException('订单日期不能为空', 'order_date'); |
||||
} |
||||
$params['order_date'] = $this->data['order_date']; |
||||
|
||||
if(empty($this->data['order_id'])) { |
||||
throw new ParamsException('订单号不能为空', 'order_id'); |
||||
} |
||||
$params['order_id'] = $this->data['order_id']; |
||||
|
||||
if(empty($this->data['trans_amt'])) { |
||||
throw new ParamsException('取现金额不能为空', 'trans_amt'); |
||||
} |
||||
$params['trans_amt'] = $this->data['trans_amt']; |
||||
|
||||
if(empty($this->data['cash_type'])) { |
||||
throw new ParamsException('取现方式不能为空', 'cash_type'); |
||||
} |
||||
$params['cash_type'] = $this->data['cash_type']; |
||||
|
||||
if(empty($this->data['transaction_addr'])) { |
||||
throw new ParamsException('交易发生地不能为空', 'transaction_addr'); |
||||
} |
||||
$params['transaction_addr'] = $this->data['transaction_addr']; |
||||
|
||||
if(empty($this->data['purpose'])) { |
||||
throw new ParamsException('用途不能为空', 'purpose'); |
||||
} |
||||
$params['purpose'] = $this->data['purpose']; |
||||
|
||||
if(empty($this->data['user_ip_addr'])) { |
||||
throw new ParamsException('IP不能为空', 'user_ip_addr'); |
||||
} |
||||
$params['user_ip_addr'] = $this->data['user_ip_addr']; |
||||
|
||||
//以下为可选参数 |
||||
if(!empty($this->data['bind_card_id'])) { |
||||
$params['bind_card_id'] = $this->data['bind_card_id']; |
||||
} |
||||
if(!empty($this->data['out_acct_id'])) { |
||||
$params['out_acct_id'] = $this->data['out_acct_id']; |
||||
} |
||||
if(!empty($this->data['fee_acct_id'])) { |
||||
$params['fee_acct_id'] = $this->data['fee_acct_id']; |
||||
} |
||||
if(!empty($this->data['fee_cust_id'])) { |
||||
$params['fee_cust_id'] = $this->data['fee_cust_id']; |
||||
} |
||||
if(!empty($this->data['serv_amt'])) { |
||||
$params['serv_amt'] = $this->data['serv_amt']; |
||||
} |
||||
if(!empty($this->data['serv_cust_id'])) { |
||||
$params['serv_cust_id'] = $this->data['serv_cust_id']; |
||||
} |
||||
if(!empty($this->data['serv_acct_id'])) { |
||||
$params['serv_acct_id'] = $this->data['serv_acct_id']; |
||||
} |
||||
if(!empty($this->data['bg_ret_url'])) { |
||||
$params['bg_ret_url'] = StrFilterHelper::fileUrl($this->data['bg_ret_url']); |
||||
} |
||||
if(!empty($this->data['mer_priv'])) { |
||||
$params['mer_priv'] = $this->data['mer_priv']; |
||||
} |
||||
if(!empty($this->data['extension'])) { |
||||
$params['extension'] = $this->data['extension']; |
||||
} |
||||
if(!empty($this->data['dev_info_json'])) { |
||||
$params['dev_info_json'] = $this->data['dev_info_json']->toJSON(); |
||||
} |
||||
|
||||
return $params; |
||||
} |
||||
} |
||||
@ -0,0 +1,33 @@ |
||||
<?php |
||||
|
||||
namespace Tansilu\HfPayLib\factory\object\trade; |
||||
|
||||
use Tansilu\HfPayLib\factory\object\ResponseObj; |
||||
|
||||
/** |
||||
* @property-read $resp_code 应答返回码 |
||||
* @property-read $resp_desc 应答返回描述 |
||||
* @property-read $mer_cust_id 商户客户号 |
||||
* @property-read $user_cust_id 用户客户号(付款人汇付客户号) |
||||
* @property-read $order_date 订单日期 |
||||
* @property-read $order_id 订单号 |
||||
* @property-read $platform_seq_id 本平台交易唯一标识号 |
||||
* @property-read $trans_amt 交易金额 |
||||
* @property-read $real_trans_amt 实际到账金额(取现失败则不传) |
||||
* @property-read $bind_card_id 取现绑卡ID |
||||
* @property-read $out_acct_id 出账账户号 |
||||
* @property-read $bank_id 开户银行代号 |
||||
* @property-read $fee_amt 手续费金额 |
||||
* @property-read $fee_cust_id 手续费扣款客户号 |
||||
* @property-read $fee_acct_id 手续费扣款子账户号 |
||||
* @property-read $serv_amt 服务费 |
||||
* @property-read $serv_cust_id 服务费收取方客户号 |
||||
* @property-read $serv_acct_id 服务费账户号 |
||||
* @property-read $bg_ret_url 商户后台应答地址 |
||||
* @property-read $mer_priv 商户私有域 |
||||
* @property-read $extension 扩展域 |
||||
*/ |
||||
class WithdrawCashResponse |
||||
{ |
||||
use ResponseObj; |
||||
} |
||||
Loading…
Reference in new issue