|
|
@ -36,7 +36,7 @@ class returnorders extends CI_Controller{
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|
exit('{"reason":"传参错误","status":"404"}');
|
|
|
|
exit('{"reason":"传参错误","status":"404"}');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//网前提交的姓名没有做处理
|
|
|
|
//网前提交的姓名没有做处理
|
|
|
|
$passportname = chk_sp_name($passportname);
|
|
|
|
$passportname = chk_sp_name($passportname);
|
|
|
|
|
|
|
|
|
|
|
@ -46,6 +46,7 @@ class returnorders extends CI_Controller{
|
|
|
|
if(empty($passenger_data)){
|
|
|
|
if(empty($passenger_data)){
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|
exit('{"reason":"乘客信息为空无法退票","status":"404"}');
|
|
|
|
exit('{"reason":"乘客信息为空无法退票","status":"404"}');
|
|
|
|
|
|
|
|
//exit('{"reason":"'.$ordernumber.",".$passportname.",".$passportno.'","status":"404"}');
|
|
|
|
exit('');
|
|
|
|
exit('');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -129,31 +130,55 @@ class returnorders extends CI_Controller{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function ctripModel($ticket_data,$passenger_data){
|
|
|
|
function ctripModel($ticket_data,$passenger_data){
|
|
|
|
$PostData = array();
|
|
|
|
|
|
|
|
$TimeStamp = time();
|
|
|
|
|
|
|
|
$time = date('Y-m-d H:i:s',$TimeStamp);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$PostData['Authentication'] = new stdClass();
|
|
|
|
|
|
|
|
$PostData['Authentication']->TimeStamp = $time;
|
|
|
|
|
|
|
|
$PostData['Authentication']->ServiceName = 'order.ticketReturn';
|
|
|
|
|
|
|
|
$PostData['Authentication']->PartnerName = ORDERUSER;
|
|
|
|
|
|
|
|
$MessageIdentity = md5($time.'order.ticketReturn'.ORDERKEY);
|
|
|
|
|
|
|
|
$PostData['Authentication']->MessageIdentity = $MessageIdentity;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$PostData['TrainOrderService'] = new stdClass();
|
|
|
|
//生成接口请求头参数
|
|
|
|
$PostData['TrainOrderService']->contactName = '陈宇超';
|
|
|
|
$TimeStamp = date("Y-m-d H:i:s");
|
|
|
|
$PostData['TrainOrderService']->contactMobile = '18877381547';
|
|
|
|
$serviceName = "train.artificialTicketReturn"; //每个接口都有自己名称
|
|
|
|
$PostData['TrainOrderService']->OrderNumber = $ticket_data->ts_ordernumber;
|
|
|
|
$companyId = COMPANYID;
|
|
|
|
$PostData['TrainOrderService']->OperatorType = '0';
|
|
|
|
$key = CTRIPKEY;
|
|
|
|
$PostData['TrainOrderService']->LongElecNums = array();
|
|
|
|
$strSign = $TimeStamp.$serviceName.$companyId.$key; //加密前的令牌
|
|
|
|
$PostData['TrainOrderService']->LongElecNums['0'] = $passenger_data->tst_LongTrainNo;
|
|
|
|
$Sign = md5($strSign);
|
|
|
|
|
|
|
|
$url = CTRIPURL."/artificialTicketReturn";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$PostData = new stdClass();
|
|
|
|
|
|
|
|
$PostData->authentication = new stdClass();
|
|
|
|
|
|
|
|
$PostData->authentication->timeStamp = $TimeStamp;
|
|
|
|
|
|
|
|
$PostData->authentication->serviceName = $serviceName;
|
|
|
|
|
|
|
|
$PostData->authentication->companyId = $companyId;
|
|
|
|
|
|
|
|
$PostData->authentication->messageIdentity = $Sign;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$PostData->companyOrderId = $ticket_data->ts_ordernumber;
|
|
|
|
|
|
|
|
$PostData->operator = "vivi";
|
|
|
|
|
|
|
|
$PostData->returnServiceFee = "15"; //退票服务费
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0'] = new stdClass();
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->trainNo = $passenger_data->ts_checi;
|
|
|
|
|
|
|
|
//车厢及座位分解
|
|
|
|
|
|
|
|
$tst_seatdetail = $passenger_data->tst_seatdetail;
|
|
|
|
|
|
|
|
$carriageNo = "";
|
|
|
|
|
|
|
|
$seatNo = "";
|
|
|
|
|
|
|
|
if (strpos($tst_seatdetail,"车厢")!=false){
|
|
|
|
|
|
|
|
$arrSeat = explode("车厢",$tst_seatdetail);
|
|
|
|
|
|
|
|
$carriageNo = $arrSeat[0];
|
|
|
|
|
|
|
|
$seatNo = $arrSeat[1];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->carriageNo = $carriageNo;
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->seatNo = $seatNo;
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->longElecNo = $passenger_data->tst_LongTrainNo;
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->cardFirstImage = "";
|
|
|
|
|
|
|
|
$PostData->returnTicketList['0']->cardSecondImage ="";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// print_r(json_encode($PostData));
|
|
|
|
|
|
|
|
// die();
|
|
|
|
|
|
|
|
|
|
|
|
//发起退票请求
|
|
|
|
//发起退票请求
|
|
|
|
$Url = 'http://apiproxy.ctrip.com/apiproxy/soa2/13680/PartnerReturnTicket';
|
|
|
|
$ResponseJson = GetPost_http($url,json_encode($PostData),'json');
|
|
|
|
$ResponseJson = GetPost_http($Url,json_encode($PostData),'json');
|
|
|
|
log_message('error','退票返回信息:'.$ResponseJson);
|
|
|
|
$ResponseData = json_decode($ResponseJson);
|
|
|
|
$ResponseData = json_decode($ResponseJson);
|
|
|
|
|
|
|
|
|
|
|
|
if($ResponseData->Status == 'SUCCESS'){
|
|
|
|
if($ResponseData->returnCode == 1){
|
|
|
|
echo '{"reason":"退票成功","status":"200"}';
|
|
|
|
echo '{"reason":"退票成功","status":"200"}';
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|
header("HTTP/1.1 404 Not Found");
|
|
|
|