V2TradePayscoreServiceorderCompleteRequestDemo.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?php
  2. /**
  3. * 完结支付分订单 - 示例
  4. *
  5. * @author sdk-generator
  6. * @Description
  7. */
  8. namespace BsPayDemo;
  9. // 1. 资源及配置加载
  10. require_once dirname(__FILE__) . "/loader.php";
  11. require_once dirname(__FILE__). "/../BsPaySdk/request/V2TradePayscoreServiceorderCompleteRequest.php";
  12. use BsPaySdk\core\BsPayClient;
  13. use BsPaySdk\request\V2TradePayscoreServiceorderCompleteRequest;
  14. // 2.组装请求参数
  15. $request = new V2TradePayscoreServiceorderCompleteRequest();
  16. // 汇付商户号
  17. $request->setHuifuId("6666000108854952");
  18. // 汇付订单号
  19. // $request->setOutOrderNo("test");
  20. // 完结金额
  21. // $request->setOrdAmt("test");
  22. // 服务时间
  23. // $request->setTimeRange(getTimeRange());
  24. // 设置非必填字段
  25. $extendInfoMap = getExtendInfos();
  26. $request->setExtendInfo($extendInfoMap);
  27. // 3. 发起API调用
  28. $client = new BsPayClient();
  29. $result = $client->postRequest($request);
  30. if (!$result || $result->isError()) { //失败处理
  31. var_dump($result -> getErrorInfo());
  32. } else { //成功处理
  33. var_dump($result);
  34. }
  35. /**
  36. * 非必填字段
  37. *
  38. */
  39. function getExtendInfos() {
  40. // 设置非必填字段
  41. $extendInfoMap = array();
  42. // 创建服务订单返回的汇付全局流水号
  43. // $extendInfoMap["org_hf_seq_id"]= "";
  44. // 服务订单创建请求流水号
  45. // $extendInfoMap["org_req_seq_id"]= "";
  46. // 后付费项目
  47. // $extendInfoMap["post_payments"]= getPostPayments();
  48. // 商户优惠
  49. // $extendInfoMap["post_discounts"]= getPostDiscounts();
  50. // 服务位置
  51. // $extendInfoMap["location"]= getLocation();
  52. // 完结服务时间
  53. // $extendInfoMap["complete_time"]= "";
  54. return $extendInfoMap;
  55. }
  56. function getPostPayments() {
  57. $dto = array();
  58. // 付费名称
  59. // $dto["name"] = "";
  60. // 付费金额
  61. // $dto["amount"] = "";
  62. // 付费说明
  63. // $dto["description"] = "";
  64. // 付费数量
  65. // $dto["count"] = "";
  66. $dtoList = array();
  67. array_push($dtoList, $dto);
  68. return json_encode($dtoList,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  69. }
  70. function getPostDiscounts() {
  71. $dto = array();
  72. // 优惠名称
  73. // $dto["name"] = "";
  74. // 优惠金额
  75. // $dto["amount"] = "";
  76. // 优惠说明
  77. // $dto["description"] = "";
  78. // 优惠数量
  79. // $dto["count"] = "";
  80. $dtoList = array();
  81. array_push($dtoList, $dto);
  82. return json_encode($dtoList,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  83. }
  84. function getTimeRange() {
  85. $dto = array();
  86. // 服务开始时间
  87. // $dto["start_time"] = "";
  88. // 服务结束时间
  89. // $dto["end_time"] = "";
  90. // 服务开始时间备注
  91. // $dto["start_time_remark"] = "";
  92. // 服务结束时间备注
  93. // $dto["end_time_remark"] = "";
  94. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  95. }
  96. function getLocation() {
  97. $dto = array();
  98. // 服务开始地点
  99. // $dto["start_location"] = "";
  100. // 服务结束地点
  101. // $dto["end_location"] = "";
  102. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  103. }