diff --git a/application/third_party/train/controllers/search.php b/application/third_party/train/controllers/search.php index 4279bfa2..8972f6c2 100644 --- a/application/third_party/train/controllers/search.php +++ b/application/third_party/train/controllers/search.php @@ -391,27 +391,35 @@ class search extends CI_Controller{ $return_json['TrainList'] = array(); $all_stations = $this->BIZ_intel_train_model->ch_allstations(); $i = 0; + //print_r($all_stations); + $data = array(); + foreach($all_stations as $item){ - $rule_arr = array(); - if($item->s_country == 'China'){ - $rule_arr = $this->BIZ_intel_train_model->ch_train_rules($item->station_id); + $todata = new stdClass(); + if($item->fromStationName == 'Beijing West'){ + $item->fromStationName = 'Beijing'; } - - if(!empty($rule_arr)){ - $return_json['TrainList'][$i]['FromStation'] = $item->s_ename; - $return_json['TrainList'][$i]['FromCountry'] = $item->s_country; - $return_json['TrainList'][$i]['ToStations'] = array(); - $j = 0; - foreach($rule_arr as $rule_info){ - $return_json['TrainList'][$i]['ToStations'][$j]['Message'] = $rule_info->tsi_Message; - $return_json['TrainList'][$i]['ToStations'][$j]['Station'] = $rule_info->S_ename; - $return_json['TrainList'][$i]['ToStations'][$j]['StationCountry'] = $rule_info->s_country; - $j++; - } - $i++; + if(isset($data[$item->fromStationName])){ + $todata->Message = $item->tsi_Message; + $todata->Station = $item->toStationName; + $todata->StationCountry = $item->toStationCountry; + array_push($data[$item->fromStationName]->ToStations,$todata); + }else{ + $data[$item->fromStationName] = new stdClass(); + $data[$item->fromStationName]->FromCountry = $item->fromStationName; + $data[$item->fromStationName]->FromStation = $item->fromStationCountry; + $data[$item->fromStationName]->ToStations = array(); + $todata->Message = $item->tsi_Message; + $todata->Station = $item->toStationName; + $todata->StationCountry = $item->toStationCountry; + array_push($data[$item->fromStationName]->ToStations,$todata); } } - //print_r($return_json); + + foreach ($data as $rules){ + array_push($return_json['TrainList'],$rules); + } + header('Content-type: application/json'); print_r(json_encode($return_json)); } diff --git a/application/third_party/train/models/BIZ_intel_train_model.php b/application/third_party/train/models/BIZ_intel_train_model.php index 6442da53..43967162 100644 --- a/application/third_party/train/models/BIZ_intel_train_model.php +++ b/application/third_party/train/models/BIZ_intel_train_model.php @@ -126,7 +126,23 @@ class BIZ_intel_train_model extends CI_Model { } public function ch_allstations(){ - $sql = "SELECT * FROM TrainStation_intel where station_id != 10"; + $sql = "select + tsi1.s_ename as fromStationName, + tsi1.s_country as fromStationCountry, + tsi2.s_ename as toStationName, + tsi2.s_country as toStationCountry, + tsi_Message + from TrainSearch_intel + left join + TrainStation_intel tsi1 + ON + tsi1.station_id = tsi_FromStation + left join + TrainStation_intel tsi2 + ON + tsi2.station_id = tsi_ToStation + where tsi1.s_country = 'china' or tsi2.s_country = 'china' + "; $query = $this->HT->query($sql); return $query->result(); }