public function Queryorder($transaction_id)
 {
     $input = new \WxPayOrderQuery();
     $input->setWxPayApi($this->wxPayApi);
     $input->SetTransaction_id($transaction_id);
     $result = $this->wxPayApi->orderQuery($input);
     //        if ($this->logger) {
     //            $logContent = static::log_tag . " query:" . json_encode($result);
     //            $this->logger->log($logContent);
     //        }
     if (array_key_exists("return_code", $result) && array_key_exists("result_code", $result) && array_key_exists('trade_state', $result) && $result["return_code"] == "SUCCESS" && $result["result_code"] == "SUCCESS" && $result['trade_state'] == "SUCCESS") {
         return true;
     }
     return false;
 }
 public function queryOrder($out_trade_no)
 {
     $input = new \WxPayOrderQuery();
     $input->setWxPayApi($this->wxPayApi);
     $input->SetOut_trade_no($out_trade_no);
     $result = \WxPayApi::orderQuery($input);
     /*
     if(array_key_exists("return_code", $result)
         && array_key_exists("result_code", $result)
         && $result["return_code"] == "SUCCESS"
         && $result["result_code"] == "SUCCESS")
     {
         return true;
     }
     */
     return $result;
 }
 /**
  * 
  * 查询订单情况
  * @param string $out_trade_no  商户订单号
  * @param int $succCode         查询订单结果
  * @return 0 订单不成功,1表示订单成功,2表示继续等待
  */
 public function query($out_trade_no, &$succCode)
 {
     $queryOrderInput = new \WxPayOrderQuery();
     $queryOrderInput->setWxPayApi($this->wxPayApi);
     \Log::info('curl timeout :' . $this->wxPayConfig['CURL_TIMEOUT']);
     $queryOrderInput->SetOut_trade_no($out_trade_no);
     $result = $this->wxPayApi->orderQuery($queryOrderInput, $this->wxPayConfig['CURL_TIMEOUT']);
     if ($result["return_code"] == "SUCCESS" && $result["result_code"] == "SUCCESS") {
         //支付成功
         if ($result["trade_state"] == "SUCCESS") {
             $succCode = 1;
             return $result;
         } else {
             if ($result["trade_state"] == "USERPAYING") {
                 $succCode = 2;
                 return false;
             }
         }
     }
     //如果返回错误码为“此交易订单号不存在”则直接认定失败
     if ($result["err_code"] == "ORDERNOTEXIST") {
         $succCode = 0;
     } else {
         //如果是系统错误,则后续继续
         $succCode = 2;
     }
     return false;
 }