notify_rsa_verify($params)) { # 校验签名 CLog::pay("[notify.金立]" . " 验签失败! "); die('error sign'); # 签名验证不通过 } $order = OrderNotice::Parse_gionee($params); # 将参数归一化到order // var_dump($order); if ($order != null) { if ($order->Check()) { # 订单校验, if ($order->status == 1) { # 订单状态是成功 $order->UpdateOrderStatus(); # 更新订单状态,->已付款 CLog::pay("[notify.金立] [发货] 订单: " . $order->cpOrderId . ", 金额: " . $order->amount); } else if ($order->status == 2) { # status为2(failed)的情况 $order->UpdateOrderStatus(); # 直接更新订单状态,->支付失败 CLog::pay("[notify.金立] [不发货] 订单: " . $order->cpOrderId); } else { CLog::pay("[notify.金立][处理结果]: FAILURE (未知的支付状态)"); # 日志 die('FAILURE'); } CLog::pay("[notify.金立][处理结果]:" . "SUCCESS"); # 日志 exit('success'); # 返回给sdk server的响应内容 } } CLog::pay("[notify.金立][处理结果]:" . "FAILURE"); # 日志 die('FAILURE'); //返回给sdk server的响应内容 ,对于重复多次通知失败的订单,请参考文档中通知机制。 } catch (Exception $e) { CLog::pay("[notify.金立]" . $e->getMessage()); # 日志 throw new exception($e->getMessage()); }