From c1d014915bf780549d448a0d997b74543c3938cb Mon Sep 17 00:00:00 2001 From: cyc Date: Fri, 15 May 2020 15:51:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trainsystem/controllers/addorders.php | 18 ++- .../trainsystem/controllers/api.php | 9 +- .../controllers/innerTrainSearch.php | 31 ++--- .../trainsystem/controllers/pages.php | 2 +- .../trainsystem/models/BIZ_train_model.php | 106 ++++++------------ .../trainsystem/views/homepage.php | 42 +++---- 6 files changed, 89 insertions(+), 119 deletions(-) diff --git a/application/third_party/trainsystem/controllers/addorders.php b/application/third_party/trainsystem/controllers/addorders.php index 4937f1a9..2c6c94e2 100644 --- a/application/third_party/trainsystem/controllers/addorders.php +++ b/application/third_party/trainsystem/controllers/addorders.php @@ -22,7 +22,6 @@ class addorders extends CI_Controller{ //问题订单处理 public function error_orders_submit(){ - die(); $this->isauto = 4; //获取所有问题订单 $errorOrdersList = $this->BIZ_train_model->getErrorOrdersList(); @@ -42,7 +41,6 @@ class addorders extends CI_Controller{ //自动出票 public function auto_pay_ticket(){ - die(); //log_message('error','auto ticket'); date_default_timezone_set('Asia/Shanghai'); //判断账户余额,如果小于1000自动退出。 @@ -71,7 +69,7 @@ class addorders extends CI_Controller{ $auto_flag = 1; $people_arr = $this->BIZ_train_model->biz_people($cold_sn); - $train_info = $this->BIZ_train_model->get_biz_foi($cold_sn); + $train_info = $this->BIZ_train_model->biz_order_detail($cold_sn); if($item->COLD_SPFS > 1){ //寄送票 @@ -103,35 +101,35 @@ class addorders extends CI_Controller{ //不是国内支付宝的付款方式的订单需要受到1000元单价限制 if($item->GAI_Type != '15015' && $item->COLI_State != '8'){ - if($train_info[0]->adultcost > 1000){ + if($train_info->adultcost > 1000){ $auto_flag = 0; $back_message .= '-单价大于1000不自动出票'; } } //如果为国际火车票就不出票 - if(in_array($train_info[0]->FlightsNo, $nation_train)){ + if(in_array($train_info->FlightsNo, $nation_train)){ $auto_flag = 0; $back_message .= '-国际火车票不自动出票'; } //无座的订单不做出票 - if($train_info[0]->Aircraft == 'WZ'){ + if($train_info->Aircraft == 'WZ'){ $auto_flag = 0; $back_message .= '-无座不自动出票'; } //香港火车不自动出票 - if($train_info[0]->DepartAirport == 'XJA'){ + if($train_info->DepartAirport == 'XJA'){ $auto_flag = 0; $back_message .= '-香港火车不自动出票'; } - $DepartureDate = strtotime($train_info[0]->DepartureDate); + $DepartureDate = strtotime($train_info->DepartureDate); $time = time(); $depart_diff = ($DepartureDate - $time) / 86400; - if($train_info[0]->ArrivalAirport == 'XJA' && $train_info[0]->adultcost > 500 && $depart_diff > 5){ + if($train_info->ArrivalAirport == 'XJA' && $train_info->adultcost > 500 && $depart_diff > 5){ $auto_flag = 0; $back_message .= '-内地香港火车金额大于500超过五天不自动出票'; } @@ -140,7 +138,7 @@ class addorders extends CI_Controller{ //如果刚好是第三十天的订单 if(($item->COLI_State == '8' || $item->COLI_State == '63')){ $this->isauto = 3; - $time_obj = $this->BIZ_train_model->get_saletime($train_info['0']->DepartAirport_cn); + $time_obj = $this->BIZ_train_model->get_saletime($train_info->DepartAirport_cn); //print_r($time_obj); if(!empty($time_obj)){ $saletime = strtotime($time_obj->TST_saletime); diff --git a/application/third_party/trainsystem/controllers/api.php b/application/third_party/trainsystem/controllers/api.php index d121d6a1..eea8021e 100644 --- a/application/third_party/trainsystem/controllers/api.php +++ b/application/third_party/trainsystem/controllers/api.php @@ -33,9 +33,9 @@ class api extends CI_Controller{ continue; }else{ $data = new stdCLass(); - $htOrderInfo = $this->BIZ_train_model->get_biz_foi($coldSn); + $htOrderInfo = $this->BIZ_train_model->biz_order_detail($coldSn); $data->coldSn = $coldSn; - $data->htDepartureTime = date('Y-m-d H:i:s',strtotime($htOrderInfo['0']->DepartureTime)); + $data->htDepartureTime = date('Y-m-d H:i:s',strtotime($htOrderInfo->DepartureTime)); if($trainOrderInfo->ts_channel == 'juhe'){ $post_data=array( "key"=>"79f03107b921ef31310bd40a1415c1cb", @@ -94,6 +94,7 @@ class api extends CI_Controller{ $orderInfo->itinerary[$keyColdSn]->departureTime = date('H:i',strtotime($train_info->DepartureTime)); $orderInfo->itinerary[$keyColdSn]->arrivalTime = date('H:i',strtotime($train_info->ArrivalTime)); $orderInfo->itinerary[$keyColdSn]->Cabin = $train_info->Cabin; + $orderInfo->itinerary[$keyColdSn]->price = $train_info->adultprice; $ticketinfo = $this->train_system_model->get_tickets_info($itemColdSn->cold_sn); if(!empty($ticketinfo)){ @@ -154,8 +155,8 @@ class api extends CI_Controller{ $data['price']->GAI_SQJECurrency == 'RMB'; } $data['allpeople'] = $this->BIZ_train_model->biz_people($info->COLD_SN); - $data['train_info'] = $this->BIZ_train_model->get_biz_foi($info->COLD_SN); - $differtime = (strtotime($data['train_info'][0]->DepartureTime) - time()) / 3600; + $data['train_info'] = $this->BIZ_train_model->biz_order_detail($info->COLD_SN); + $differtime = (strtotime($data['train_info']->DepartureTime) - time()) / 3600; $obj = $this->BIZ_train_model->get_biz_jol_info($info->COLD_SN,$jh_order); $data['elecnumber'] = $obj->ts_elecnumber; $status = $obj->ts_status; diff --git a/application/third_party/trainsystem/controllers/innerTrainSearch.php b/application/third_party/trainsystem/controllers/innerTrainSearch.php index 9729b99e..af1f1cd7 100644 --- a/application/third_party/trainsystem/controllers/innerTrainSearch.php +++ b/application/third_party/trainsystem/controllers/innerTrainSearch.php @@ -248,6 +248,7 @@ class innerTrainSearch extends CI_Controller{ $api_end_time = microtime(true); $ResponseData = json_decode($ResponseJson); + $api_responsive_time = $api_end_time - $api_start_time; if(empty($ResponseData->Trains)){ @@ -357,22 +358,24 @@ class innerTrainSearch extends CI_Controller{ } $PriceStr = $SeaType.'"train_no":'.'"'.$TrainInfo->TrainNo.'"'; - //对返回的数据进行容错处理 - $gjrwNum = isset($gjrwNum) ? ticket_exchange($Seats->Price,$gjrwNum,$iseven) : ''; - $rwNum = isset($rwNum) ? ticket_exchange($Seats->Price,$rwNum,$iseven) : ''; - $rzNum = isset($rzNum) ? ticket_exchange($Seats->Price,$rzNum,$iseven) : ''; - $tdzNum = isset($tdzNum) ? ticket_exchange($Seats->Price,$tdzNum,$iseven) : ''; - $wzNum = isset($wzNum) ? ticket_exchange($Seats->Price,$wzNum,$iseven) : ''; - $ywNum = isset($ywNum) ? ticket_exchange($Seats->Price,$ywNum,$iseven) : ''; - $yzNum = isset($yzNum) ? ticket_exchange($Seats->Price,$yzNum,$iseven) : ''; - $edzNum = isset($edzNum) ? ticket_exchange($Seats->Price,$edzNum,$iseven) : ''; - $ydzNum = isset($ydzNum) ? ticket_exchange($Seats->Price,$ydzNum,$iseven) : ''; - $swzNum = isset($swzNum) ? ticket_exchange($Seats->Price,$swzNum,$iseven) : ''; - $dwNum = isset($dwNum) ? ticket_exchange($Seats->Price,$dwNum,$iseven) : ''; - $ydwNum = isset($ydwNum) ? ticket_exchange($Seats->Price,$ydwNum,$iseven) : ''; - $erwNum = isset($erwNum) ? ticket_exchange($Seats->Price,$erwNum,$iseven) : ''; + } + //对返回的数据进行容错处理 + $gjrwNum = isset($gjrwNum) ? ticket_exchange($Seats->Price,$gjrwNum,$iseven) : ''; + $rwNum = isset($rwNum) ? ticket_exchange($Seats->Price,$rwNum,$iseven) : ''; + $rzNum = isset($rzNum) ? ticket_exchange($Seats->Price,$rzNum,$iseven) : ''; + $tdzNum = isset($tdzNum) ? ticket_exchange($Seats->Price,$tdzNum,$iseven) : ''; + $wzNum = isset($wzNum) ? ticket_exchange($Seats->Price,$wzNum,$iseven) : ''; + $ywNum = isset($ywNum) ? ticket_exchange($Seats->Price,$ywNum,$iseven) : ''; + $yzNum = isset($yzNum) ? ticket_exchange($Seats->Price,$yzNum,$iseven) : ''; + $edzNum = isset($edzNum) ? ticket_exchange($Seats->Price,$edzNum,$iseven) : ''; + $ydzNum = isset($ydzNum) ? ticket_exchange($Seats->Price,$ydzNum,$iseven) : ''; + $swzNum = isset($swzNum) ? ticket_exchange($Seats->Price,$swzNum,$iseven) : ''; + $dwNum = isset($dwNum) ? ticket_exchange($Seats->Price,$dwNum,$iseven) : ''; + $ydwNum = isset($ydwNum) ? ticket_exchange($Seats->Price,$ydwNum,$iseven) : ''; + $erwNum = isset($erwNum) ? ticket_exchange($Seats->Price,$erwNum,$iseven) : ''; + $runMin = $TrainInfo->DurationMinutes % 60; $runHour = ($TrainInfo->DurationMinutes - $runMin) / 60; diff --git a/application/third_party/trainsystem/controllers/pages.php b/application/third_party/trainsystem/controllers/pages.php index 5792dc4d..c6cc9850 100644 --- a/application/third_party/trainsystem/controllers/pages.php +++ b/application/third_party/trainsystem/controllers/pages.php @@ -34,7 +34,7 @@ class pages extends CI_Controller{ foreach ($cold_sn as $v) { $list->info[$i] = new StdClass; $list->info[$i]->people = $this->BIZ_train_model->biz_people($v->COLD_SN); - $list->info[$i]->train = $this->BIZ_train_model->get_biz_foi($v->COLD_SN); + $list->info[$i]->train = $this->BIZ_train_model->biz_order_detail($v->COLD_SN); $list->info[$i]->status = $this->BIZ_train_model->get_biz_jol($v->COLD_SN); $i++; } diff --git a/application/third_party/trainsystem/models/BIZ_train_model.php b/application/third_party/trainsystem/models/BIZ_train_model.php index 87cea5be..041e4d98 100644 --- a/application/third_party/trainsystem/models/BIZ_train_model.php +++ b/application/third_party/trainsystem/models/BIZ_train_model.php @@ -8,48 +8,6 @@ class BIZ_train_model extends CI_Model { $this->INFO = $this->load->database('INFO', TRUE); } - //获取订单信息 - function biz_order_detail($cold_sn) { - $sql = " - SELECT TOP 1 bfoi.FOI_SN - ,bfoi.DepartureCity - ,bfoi.ArrivalCity - ,bfoi.FOI_COLD_SN - ,bfoi.DepartAirport - ,bfoi.ArrivalAirport - ,bfoi.FlightsNo - ,bfoi.Aircraft - ,bfoi.Cabin - ,bfoi.DepartureDate - ,bfoi.FOI_SelectedSeat - ,( - SELECT TOP 1 TRS_StationCN - FROM TrainStation - WHERE TRS_Code = DepartAirport - and ISNULL(TRS_StationCN,'')<>'' - ) AS DepartAirport_cn - ,( - SELECT TOP 1 TRS_StationCN - FROM TrainStation - WHERE TRS_Code = ArrivalAirport - and ISNULL(TRS_StationCN,'')<>'' - ) AS ArrivalAirport_cn, - FOI_TrainNetOrderNo, - bfoi.adultcost, - bfoi.childcost, - ArrivalTime, - DepartureTime - FROM BIZ_FlightsOrderInfo bfoi - WHERE bfoi.FOI_COLD_SN = ? - "; - $query = $this->HT->query($sql, $cold_sn); - if ($query->num_rows() > 0) { - return $query->row(); - } else { - return false; - } - } - //传入一组BPE_SN获取乘客信息 function in_bpesn_people_info($bpe_sn){ $sql = " @@ -103,39 +61,49 @@ class BIZ_train_model extends CI_Model { return $query->result(); } - //传入COLD_SN,获取火车车次等信息 - function get_biz_foi($cold_sn) { - $sql = " - SELECT FOI_COLD_SN, - FlightsNo, - Cabin, - Aircraft, - DepartureCity, - DepartAirport, - ArrivalAirport, - ArrivalCity, - DepartureDate, - DepartureTime, - ArrivalTime, - adultcost, - FOI_SelectedSeat, - FOI_TrainNetOrderNo, - FOI_SaleDate, - ( + //获取订单信息 + function biz_order_detail($cold_sn) { + $sql = " + SELECT TOP 1 bfoi.FOI_SN + ,bfoi.DepartureCity + ,bfoi.ArrivalCity + ,bfoi.FOI_COLD_SN + ,bfoi.DepartAirport + ,bfoi.ArrivalAirport + ,bfoi.FlightsNo + ,bfoi.Aircraft + ,bfoi.Cabin + ,bfoi.DepartureDate + ,bfoi.FOI_SelectedSeat + ,( SELECT TOP 1 TRS_StationCN FROM TrainStation WHERE TRS_Code = DepartAirport + and ISNULL(TRS_StationCN,'')<>'' ) AS DepartAirport_cn ,( SELECT TOP 1 TRS_StationCN FROM TrainStation WHERE TRS_Code = ArrivalAirport - ) AS ArrivalAirport_cn - FROM BIZ_FlightsOrderInfo - WHERE FOI_COLD_SN = ? - "; + and ISNULL(TRS_StationCN,'')<>'' + ) AS ArrivalAirport_cn, + FOI_TrainNetOrderNo, + bfoi.adultcost, + bfoi.childcost, + bfoi.adultprice, + bfoi.childprice, + bfoi.ArrivalTime, + bfoi.DepartureTime, + bfoi.FOI_SaleDate + FROM BIZ_FlightsOrderInfo bfoi + WHERE bfoi.FOI_COLD_SN = ? + "; $query = $this->HT->query($sql, $cold_sn); - return $query->result(); + if ($query->num_rows() > 0) { + return $query->row(); + } else { + return false; + } } //传入COLD_SN,获取BIZ_JuheOrderList是否存在此子订单,用来判断是否提交过给聚合 @@ -490,9 +458,9 @@ class BIZ_train_model extends CI_Model { //根据订单号获取所有子订单号 public function getAllColdSn($coliId){ - $sql = "select cold_sn from BIZ_ConfirmLineInfo left join BIZ_ConfirmLineDetail on coli_sn = cold_coli_sn where coli_id = ? and COLI_servicetype = '2'"; - $query = $this->HT->query($sql, array($coliId)); - return $query->result(); + $sql = "select cold_sn,coli_price from BIZ_ConfirmLineInfo left join BIZ_ConfirmLineDetail on coli_sn = cold_coli_sn where coli_id = ? and COLI_servicetype = '2'"; + $query = $this->HT->query($sql, array($coliId)); + return $query->result(); } //通过COLI_ID获取团名 即 GroupInfo的GRI_No diff --git a/application/third_party/trainsystem/views/homepage.php b/application/third_party/trainsystem/views/homepage.php index 49127619..953517bf 100644 --- a/application/third_party/trainsystem/views/homepage.php +++ b/application/third_party/trainsystem/views/homepage.php @@ -114,16 +114,16 @@ function selseat(seat){ - train[0]->FlightsNo;?> - train[0]->Cabin;?> - train[0]->DepartureCity;?> - train[0]->ArrivalCity;?> - train[0]->DepartureDate;?> - train[0]->DepartureTime;?> - train[0]->ArrivalTime;?> - train[0]->adultcost;?> + train->FlightsNo;?> + train->Cabin;?> + train->DepartureCity;?> + train->ArrivalCity;?> + train->DepartureDate;?> + train->DepartureTime;?> + train->ArrivalTime;?> + train->adultcost;?> status)?"否":"";?> - + @@ -154,12 +154,12 @@ function selseat(seat){ train[0]->FlightsNo,0,1); + $traintype = substr($v->train->FlightsNo,0,1); $arr = array('C','D','G'); $sel_count = 0; if(in_array($traintype,$arr)){ $selectseat = ''; - $train_select = $v->train[0]->FOI_SelectedSeat; + $train_select = $v->train->FOI_SelectedSeat; $a1=$b1=$c1=$d1=$f1=$a2=$b2=$c2=$d2=$f2=false; if($train_select){ $obj = explode(',',$train_select); @@ -209,7 +209,7 @@ function selseat(seat){ } } $html = ''; - $html .= '
'.$v->train[0]->Cabin.' for '.$v->train[0]->FlightsNo.' ('.$sel_count.' of '.count($v->people).' Seats)
'; + $html .= '
'.$v->train->Cabin.' for '.$v->train->FlightsNo.' ('.$sel_count.' of '.count($v->people).' Seats)
'; $html .= '
'; if($a1){ $html .= ''; @@ -217,7 +217,7 @@ function selseat(seat){ $html .= ''; } - if($v->train[0]->Aircraft == 'O' || $v->train[0]->Aircraft == '8'){ + if($v->train->Aircraft == 'O' || $v->train->Aircraft == '8'){ if($b1){ $html .= ''; }else{ @@ -231,7 +231,7 @@ function selseat(seat){ $html .= ''; } - if($v->train[0]->Aircraft != '9'){ + if($v->train->Aircraft != '9'){ if($d1){ $html .= ''; }else{ @@ -253,7 +253,7 @@ function selseat(seat){ $html .= ''; } - if($v->train[0]->Aircraft == 'O' || $v->train[0]->Aircraft == '8'){ + if($v->train->Aircraft == 'O' || $v->train->Aircraft == '8'){ if($b2){ $html .= ''; }else{ @@ -267,7 +267,7 @@ function selseat(seat){ $html .= ''; } - if($v->train[0]->Aircraft != '9'){ + if($v->train->Aircraft != '9'){ if($d2){ $html .= ''; }else{ @@ -283,7 +283,7 @@ function selseat(seat){ $html .= '
'; - if($v->train[0]->Aircraft != 'F'){ + if($v->train->Aircraft != 'F'){ echo $html; } } @@ -292,21 +292,21 @@ function selseat(seat){ - + - + - + 点击打开配置清单 @@ -323,7 +323,7 @@ function selseat(seat){ - + 快捷订票处理结果: