QuickbuckleConfirm.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <?php
  2. /**
  3. * 快捷绑卡确认接口 - 示例
  4. *
  5. * @author sdk-generator
  6. * @Description
  7. */
  8. namespace BsPayClassify;
  9. use BsPaySdk\core\BsPayClient;
  10. use BsPaySdk\request\V2QuickbuckleConfirmRequest;
  11. class QuickbuckleConfirm extends BaseInfo
  12. {
  13. function confirm($data=array())
  14. {
  15. $huifuid=config('HFConfig.huifu_id');
  16. // 2.组装请求参数
  17. $request = new V2QuickbuckleConfirmRequest();
  18. // 请求日期
  19. $request->setReqDate(date("Ymd"));
  20. // 请求流水号
  21. $request->setReqSeqId($data['ReqId']);
  22. // 汇付商户Id
  23. $request->setHuifuId($huifuid);
  24. // 用户id
  25. $request->setOutCustId($data['OutId']);
  26. // 订单号
  27. $request->setOrderId($data['orderID']);
  28. // 订单日期
  29. $request->setOrderDate(date('Ymd'));
  30. // 银行卡号
  31. $request->setCardId($data['CardID']);
  32. // 银行卡开户姓名
  33. $request->setCardName($data['CardName']);
  34. // 银行卡绑定证件类型
  35. $request->setCertType("00");
  36. // 银行卡绑定身份证
  37. $request->setCertId($data['CertID']);
  38. // 银行卡绑定手机号
  39. $request->setCardMp($data['mobile']);
  40. // 验证码
  41. $request->setVerifyCode($data['sms_code']);
  42. // CVV2信用卡代扣专用需要密文传输,使用汇付RSA公钥加密(加密前3位,加密后最长2048位),[参见参考文档](https://paas.huifu.com/partners/guide/#/api_jiami_jiemi);&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:Ly+fnExeyPOTzf……rGq0l0NTebfc6XJXZss&#x3D;&lt;/font&gt;
  43. // $request->setVipCode();
  44. // 卡有效期信用卡代扣专用,格式:MMYY,需要密文传输。&lt;br/&gt;使用汇付RSA公钥加密(加密前4位,加密后最长2048位),[参见参考文档](https://paas.huifu.com/partners/guide/#/api_jiami_jiemi);&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:Ly+fnExeyPO……ebfc6XJXZss&#x3D;&lt;/font&gt;
  45. // $request->setExpiration("test");
  46. // 设备信息域 
  47. // $request->setTrxDeviceInf(getTrxDeviceInf());
  48. // 设置非必填字段
  49. $extendInfoMap = $this->getExtendInfos($data);
  50. $request->setExtendInfo($extendInfoMap);
  51. // 3. 发起API调用
  52. $client = new BsPayClient();
  53. $result = $client->postRequest($request);
  54. return $result;
  55. }
  56. /**
  57. * 非必填字段
  58. *
  59. */
  60. function getExtendInfos($data)
  61. {
  62. // 设置非必填字段
  63. $extendInfoMap = array();
  64. // 商户名称
  65. // $extendInfoMap["merch_name"] = "测试";
  66. // 验卡流水号
  67. $extendInfoMap["trans_id"] = $data['trans_id'];
  68. // 卡的借贷类型
  69. // $extendInfoMap["dc_type"]= "";
  70. // 风控信息
  71. // $extendInfoMap["risk_info"]= getRiskInfo();
  72. return $extendInfoMap;
  73. }
  74. function getTrxDeviceInf()
  75. {
  76. $dto = array();
  77. // 银行预留手机号
  78. // $dto["trx_mobile_num"] = "test";
  79. // 设备类型
  80. // $dto["trx_device_type"] = "test";
  81. // 交易设备IP
  82. // $dto["trx_device_ip"] = "test";
  83. // 交易设备MAC
  84. // $dto["trx_device_mac"] = "";
  85. // 交易设备IMEI
  86. // $dto["trx_device_imei"] = "";
  87. // 交易设备IMSI
  88. // $dto["trx_device_imsi"] = "";
  89. // 交易设备ICCID
  90. // $dto["trx_device_icc_id"] = "";
  91. // 交易设备WIFIMAC
  92. // $dto["trx_device_wfifi_mac"] = "";
  93. // 交易设备GPS
  94. // $dto["trx_device_gps"] = "";
  95. return json_encode($dto, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
  96. }
  97. function getRiskInfo()
  98. {
  99. $dto = array();
  100. // IP类型
  101. // $dto["ip_type"] = "test";
  102. // IP值
  103. // $dto["source_ip"] = "test";
  104. // 设备标识
  105. // $dto["device_id"] = "";
  106. // 设备类型
  107. // $dto["device_type"] = "";
  108. // 银行预留手机号
  109. // $dto["mobile"] = "";
  110. return json_encode($dto, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
  111. }
  112. }