getContent(); $data = json_decode($jsonData, true); $crypto = new Crypto(); $res = $crypto->processResponse(['header'=>$headers,'encryptData'=>$data]); // 检查 JSON 解码是否成功 if (!$res) { return json(['code' => '03', 'message' => '报文解密异常']); } // 此处可以根据业务逻辑处理接收到的数据 switch ($headers['method']) { case "syb.notify.pay.result": // 二维码交易结果通知 $where = array( ['oilCardNo', '=', $res['oilCardNo']], ['amount', '=', $res['amount']], ); $field['qrCode'] = $res['qrCode']; if($res['status'] == 'success'){ $field['order_status'] = 30; $field['use_status'] = 1; }else{ $field['use_text'] = $res['errMessage']; } OrderModel::orderUpdate($where, $field); break; case "syb.notify.oilCard.change": // 油卡变动通知 $order = OrderModel::detail(['oilCardNo'=>$res['oilCardNo'], 'amount'=>$res['amount']]); $res['order_id'] = $order['order_id']; $res['user_id'] = $order['user_id']; $RecordModel = new RecordModel(); $RecordModel->add($res); break; case "syb.notify.oilCard.share": // 分油结果通知 $where = array( ['oilCardNo', '=', $res['oilCardNo']], ['amount', '=', $res['amount']], ); $field = ['oil_time' => time()]; if($res['status'] == 'success'){ $field['order_status'] = 20; $field['oil_status'] = 1; }else{ $field['order_status'] = 60; $field['oil_status'] = 0; $field['oil_text'] = $res['msg']; } OrderModel::orderUpdate($where, $field); break; default: return json(['code' => '03', 'message' => '报文解密异常']); } // 记录日志等 $this->saveLog($headers['method'].":".json_encode($res,320)); // 返回成功的 JSON 响应 return json(['code' => '00', 'message' => '请求成功']); } }