/** * * 查询订单情况 * @param string $out_trade_no 商户订单号 * @param int $succCode 查询订单结果 * @return 0 订单不成功,1表示订单成功,2表示继续等待 */ public function query($out_trade_no, &$succCode) { $queryOrderInput = new WxPayOrderQuery(); $queryOrderInput->SetOut_trade_no($out_trade_no); $result = WxPayApi::orderQuery($queryOrderInput); 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; }
/** * 查询订单根据out_trade_no */ public function queryByOutTradeNo($out_trade_no) { $input = new WxPayOrderQuery(); $input->setConfig($this->config); $input->SetOut_trade_no($out_trade_no); \Common\Api\Wxpay\WxPayApi::setConfig($this->config); return \Common\Api\Wxpay\WxPayApi::orderQuery($input); }
private function queryOrder($out_trade_no, $inStatus = '') { if (isset($out_trade_no) && $out_trade_no != "") { $input = new WxPayOrderQuery(); $input->SetOut_trade_no($out_trade_no); $info = WxPayApi::orderQuery($input); if ($inStatus == 'code') { return $info['trade_state']; } $status = orderState($info['trade_state']); } return $status; }
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; }
{ foreach ($data as $key => $value) { echo "<font color='#f00;'>{$key}</font> : {$value} <br/>"; } } if (isset($_REQUEST["transaction_id"]) && $_REQUEST["transaction_id"] != "") { $transaction_id = $_REQUEST["transaction_id"]; $input = new WxPayOrderQuery(); $input->SetTransaction_id($transaction_id); printf_info(WxPayApi::orderQuery($input)); exit; } if (isset($_REQUEST["out_trade_no"]) && $_REQUEST["out_trade_no"] != "") { $out_trade_no = $_REQUEST["out_trade_no"]; $input = new WxPayOrderQuery(); $input->SetOut_trade_no($out_trade_no); printf_info(WxPayApi::orderQuery($input)); exit; } ?> <body> <form action="#" method="post"> <div style="margin-left:2%;color:#f00">微信订单号和商户订单号选少填一个,微信订单号优先:</div><br/> <div style="margin-left:2%;">微信订单号:</div><br/> <input type="text" style="width:96%;height:35px;margin-left:2%;" name="transaction_id" /><br /><br /> <div style="margin-left:2%;">商户订单号:</div><br/> <input type="text" style="width:96%;height:35px;margin-left:2%;" name="out_trade_no" /><br /><br /> <div align="center"> <input type="submit" value="查询" style="width:210px; height:50px; border-radius: 15px;background-color:#FE6714; border:0px #FE6714 solid; cursor: pointer; color:white; font-size:16px;" type="button" onclick="callpay()" /> </div> </form>
public function actionOrderQuery() { if (isset($_REQUEST["out_trade_no"]) && $_REQUEST["out_trade_no"] != "") { $out_trade_no = $_REQUEST["out_trade_no"]; $input = new \WxPayOrderQuery(); $input->SetOut_trade_no($out_trade_no); $result = \WxPayApi::orderQuery($input); $this->renderAjax($result); } else { $this->renderAjax('没有订单号你叫我怎么查?'); } }
function wxqueryorderdata($body) { // $data['pay_no'] = isset($body['out_data']['pay_no'])?$body['out_data']['pay_no']:''; // if(!$data['pay_no']){ // $ret1['status'] = 1041; // $ret1['desc'] = '等待支付'; // return $ret1; // } $queryOrderInput = new WxPayOrderQuery(); $queryOrderInput->SetOut_trade_no($body['order_no']); $ret = WxPayApi::orderQuery($queryOrderInput); //数据已经解析为了数组格式 $retexec = array(); if ($ret['return_code'] == 'SUCCESS') { //查询成功 $resp['wx_app_id'] = $ret['appid']; $resp['wx_partner_id'] = $ret['mch_id']; if ($ret['result_code'] == 'SUCCESS') { // switch ($ret['trade_state']) { case 'SUCCESS': //支付成功 $body['pay_result'] = 2; $body['pay_time'] = $ret['time_end']; $retexec = exec_procedure($body, 'p_order_update_result'); $retexec['order_state'] = 2; break; case 'REFUND': //转入退款 //转入退款 case 'NOTPAY': //未支付 //未支付 case 'CLOSED': //已关闭 //已关闭 case 'REVOKED': //已撤销 //已撤销 case 'USERPAYING': //用户支付中 //用户支付中 case 'PAYERROR': //支付失败 $retexec = exec_procedure($body, 'p_order_query_result'); $retexec['out_state'] = isset($retexec['out_data']['out_state']) ? $retexec['out_data']['out_state'] : 0; break; } } return $retexec; } else { $ret['status'] = 1045; return $ret; } }
/** * * 查询订单情况 * @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; }
private function queryOrder($out_trade_no = '', $inStatus = 0) { if ($inStatus == 4) { return $status = '已经申请退款'; } if (isset($out_trade_no) && $out_trade_no != "") { $input = new WxPayOrderQuery(); $input->SetOut_trade_no($out_trade_no); $info = WxPayApi::orderQuery($input); if (isset($info['err_code']) && $info['err_code'] == 'ORDERNOTEXIST') { $trade_state = 'NOTPAY'; } else { $trade_state = $info['trade_state']; } // $status = orderState($trade_state); } return $trade_state; }