WxPay.PayNotifyCallBack.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. /**
  3. *
  4. * 重写回调
  5. * @author widyhu
  6. *
  7. */
  8. include("../../../config/conn.php");
  9. include("../../../config/function.php");
  10. ini_set('date.timezone','Asia/Shanghai');
  11. class PayNotifyCallBack extends WxPayNotify
  12. {
  13. public $data;
  14. //查询订单
  15. public function Queryorder($transaction_id)
  16. {
  17. $input = new WxPayOrderQuery();
  18. $input->SetTransaction_id($transaction_id);
  19. $result = WxPayApi::orderQuery($input);
  20. Log::DEBUG("query:" . json_encode($result));
  21. if(array_key_exists("return_code", $result)
  22. && array_key_exists("result_code", $result)
  23. && $result["return_code"] == "SUCCESS"
  24. && $result["result_code"] == "SUCCESS")
  25. {
  26. return true;
  27. }
  28. return false;
  29. }
  30. //重写回调处理函数
  31. public function NotifyProcess($data, &$msg)
  32. {
  33. Log::DEBUG("call back:" . json_encode($data));
  34. $this->data = $data;
  35. $notfiyOutput = array();
  36. if(!array_key_exists("transaction_id", $data)){
  37. $msg = "输入参数不正确";
  38. return false;
  39. }
  40. //查询订单,判断订单真实性
  41. if(!$this->Queryorder($data["transaction_id"])){
  42. $msg = "订单查询失败";
  43. return false;
  44. }
  45. return true;
  46. }
  47. }