sign($input)) { return true; } else { return false; } } private function sign($params) { ksort($params); $body = ""; foreach ($params as $key => $val){ $body .= "{$key}={$val}&"; } $body .= "key=".config::KEY; return md5($body); } public function notify($params) { $status = intval($params['status']); $order_sn = $params['onlystr']; $order_info = Model('vr_order')->getOrderInfo(['order_sn' => $order_sn]); if(empty($order_info)) { return false; } $order_id = $order_info['order_id']; if($status === 2) { $logic_vr_order = Logic("vr_order"); $logic_vr_order->changeOrderStateSuccess($order_id); QueueClient::push("NotifyMerchantComplete",['order_id' => $order_id]); } else { $logic_vr_order = Logic("vr_order"); $logic_vr_order->changeOrderStateCancel($order_id); QueueClient::push("NotifyMerchantComplete",['order_id' => $order_id]); } return true; } }