app::$accountID, "serviceName" => 'GetOrderList', "digitalSign" => $zzUtils->sign_md5(app::$accountID, app::$accountPassword, $request_time), "reqTime" => $request_time); $result_array = $zzUtils->addXml($base_array, $array_header); $array_info['header'] = $result_array; //组装body $array_info['body'] = array(); $base_array = $array_info['body']; $array_body = array( "startPlayDate" => $startPlayDate, "endPlayDate" => $endPlayDate, "ticketTypeId" => $ticketTypeId, "serialId" => $serialId, "travelerName" => $travelerName, "travelerMobile" => $travelerMobile, "identityCard" => $identityCard, "page" => $page, "pageSize" => $pageSize); $result_array = $zzUtils->addXml($base_array, $array_body); $array_info['body'] = $result_array; $arr_result['request'] = $array_info; $res_xml = $zzUtils->array_to_xml($arr_result); $res = $zzUtils->xml_post_request(app::$url, $res_xml); $arr_res = $zzUtils->xml_to_array($res); $arrOrderList = array(); if ($arr_res['header']['rspCode'] == '0000') { foreach ($arr_res['body'] as $orderList) { $arrOrderList = $orderList; } return $arrOrderList; } else { return false; } } /** 取消订单接口 * @param $startDate 游玩日期(开始) * @param $endPlayDate 游玩日期(结束) * @param $ticketTypeId 票型Id * @param $serialId 订单编号 * @param $sceneryId 景区ID * @param string $travelerName 取票人姓名 * @param string $travelerMobile 取票人手机 * @param string $identityCard 身份证号码 * @param string $page 当前页索引 * @param string $pageSize 分页 * @return array|mixed */ function cancelOrder($startDate, $endPlayDate, $ticketTypeId = "", $serialId, $sceneryId2016/8/20, $travelerName = "", $travelerMobile = "", $identityCard = "", $page = "", $pageSize = "") { $res_status = array(); //先查询订单状态,如果是已取票状态不能取消订单 $res = getOrderInfo($startDate, $endPlayDate, $ticketTypeId, $serialId, $travelerName = "", $travelerMobile = "", $identityCard = "", $page = "", $pageSize = ""); if (!$res) { $res_status['status'] = -2; //订单信息拉取失败 return $res_status; } if ($res['order']['orderStatus'] == "T") { $res_status['status'] = -1; return $res_status; } $zzUtils = new zzUtils(); //组装header $array_info['header'] = array(); $base_array = $array_info['header']; $request_time = date("Y-m-d H:i:s", time()); //请求时间 $array_header = array( "accountID" => app::$accountID, "serviceName" => 'CancelOrder', "digitalSign" => $zzUtils->sign_md5(app::$accountID, app::$accountPassword, $request_time), "reqTime" => $request_time); $result_array = $zzUtils->addXml($base_array, $array_header); $array_info['header'] = $result_array; //组装body $array_info['body'] = array(); $base_array = $array_info['body']; $array_body = array( "serialId" => $serialId, "sceneryId" => $sceneryId ); $result_array = $zzUtils->addXml($base_array, $array_body); $array_info['body'] = $result_array; $arr_result['request'] = $array_info; $res_xml = $zzUtils->array_to_xml($arr_result); //收到返回的数据转化成array $res = $zzUtils->xml_post_request(app::$url, $res_xml); //var_dump($res); $arr_res = $zzUtils->xml_to_array($res); if ($arr_res['header']['rspCode'] == '0000') { return $res_status['0']; } else { return $res_status['1']; //订单取消失败 } }