RefillPhone.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace refill\jiec;
  3. require_once(BASE_HELPER_PATH . '/refill/jiec/config.php');
  4. use refill;
  5. use Log;
  6. class RefillPhone extends refill\IRefillPhone
  7. {
  8. public function __construct($cfgs)
  9. {
  10. parent::__construct($cfgs);
  11. }
  12. private function req_params(int $phone, int $amount ,string $order_sn)
  13. {
  14. $params['phone'] = $phone;
  15. $params['order_no'] = $order_sn;
  16. $params['s_id'] = config::APP_ID;
  17. $params['amount'] = $amount;
  18. $params['notify_url'] = config::NOTIFY_URL;
  19. return $params;
  20. }
  21. public function add($card_no, $card_type,$amount,$params)
  22. {
  23. $params = $this->req_params($card_no,$amount,$params['order_sn']);
  24. $sign = $this->sign($params);
  25. $params['sign'] = $sign;
  26. $resp = http_request(config::ORDER_URL,$params,'GET');
  27. if($resp === false) {
  28. return [false,'系统错误'];
  29. }
  30. else
  31. {
  32. Log::record($resp,Log::DEBUG);
  33. $resp = json_decode($resp,true);
  34. if($resp['result'] == 'SUCCESS') {
  35. return [true,$resp['data']];
  36. }
  37. else {
  38. return [false,$resp['msg']];
  39. }
  40. }
  41. }
  42. public function query($refill_info)
  43. {
  44. $params['orderId'] = $refill_info['order_sn'];
  45. $params['sid'] = config::APP_ID;
  46. $content = $params['orderId'] . $params['sid'] . config::APP_SECRET;
  47. $params['sign'] = strtoupper(md5($content));
  48. $resp = http_request(config::QUERY_URL,$params);
  49. if($resp === false) {
  50. return [false,'系统错误'];
  51. }
  52. else
  53. {
  54. Log::record($resp,Log::DEBUG);
  55. $resp = json_decode($resp , true);
  56. if($resp['result'] == 'SUCCESS') {
  57. }
  58. else {
  59. return [false,$resp['msg']];
  60. }
  61. }
  62. }
  63. private function sign($params)
  64. {
  65. $key = config::APP_SECRET;
  66. $content = $params['amount'] . $params['notify_url'] . $params['order_no'] . $params['phone'] . $params['s_id'] . $key;
  67. return strtoupper(md5($content));
  68. }
  69. }