|
|
|
|
@ -59,19 +59,23 @@ class WxMicroPay extends WxPayCommon
|
|
|
|
|
$query_times = 10;
|
|
|
|
|
while ($query_times > 0) {
|
|
|
|
|
$query_result = $this->orderQuery($out_trade_no);
|
|
|
|
|
if ($query_result["return_code"] == "SUCCESS" && $result["result_code"] == "FAIL" && $result["err_code"] == "SYSTEMERROR") {
|
|
|
|
|
if ($query_result["return_code"] != "SUCCESS" && $result["result_code"] != "SUCCESS") {
|
|
|
|
|
\Log::info($query_result);
|
|
|
|
|
sleep(2);
|
|
|
|
|
$query_times--;
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
if ($query_result["return_code"] == "SUCCESS" && $result["result_code"] == "SUCCESS" && $result["trade_state"] == "USERPAYING") {
|
|
|
|
|
\Log::info($query_result);
|
|
|
|
|
if (!isset($query_result["trade_state"])) {
|
|
|
|
|
sleep(2);
|
|
|
|
|
$query_times--;
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
if ($query_result["trade_state"] == "USERPAYING") {
|
|
|
|
|
sleep(2);
|
|
|
|
|
$query_times--;
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
if ($query_result["return_code"] == "SUCCESS" && $result["result_code"] == "SUCCESS" && $result["trade_state"] == "SUCCESS") {
|
|
|
|
|
if ($result["trade_state"] == "SUCCESS") {
|
|
|
|
|
$transaction_id = $query_result["transaction_id"];
|
|
|
|
|
$update = [
|
|
|
|
|
"paid_at" => date("Y-m-d H:i:s"),
|
|
|
|
|
@ -84,6 +88,7 @@ class WxMicroPay extends WxPayCommon
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
$query_times--;
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception $exception) {
|
|
|
|
|
return $exception;
|
|
|
|
|
|