|
- <?php
- require_once __DIR__.'/../../../config/Mysql.php';
- require_once __DIR__.'/../../api/common.php';
- require_once __DIR__.'/../../api/create_order.php';
-
- $pdo = conn();
-
- $sql ="select order_id from order_main where order_id in (SELECT parent_order_id FROM `order_main` where PARENT_PROD_ID in (449860,449865) and RUN_DATE>'2016-09-14')";
- $result=$pdo->query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
-
- foreach ($rowset as $key => $value) {
- $list_d = Find($value['order_id'],$pdo);
- if($value['order_id'] == 464259 || $value['order_id'] ==464331){
- $startx_y = '31.991326,120.892807';
- $endx_y ='32.116818,118.784015';
- $line_id = $list_d['line_id'] ;
- $run_id = $list_d['run_id'];
- $tic_num = $list_d['tic_num'] ;
- $start_name =$list_d['start_res_name'];
- $end_name = $list_d['end_res_name'];
- $run_date_time = $list_d['run_time'];
- }else{
- $startx_y = '32.116818,118.784015';
- $endx_y ='31.991326,120.892807';
- $line_id = $list_d['line_id'] ;
- $run_id = $list_d['run_id'];
- $tic_num = $list_d['tic_num'] ;
- $start_name =$list_d['start_res_name'];
- $end_name = $list_d['end_res_name'];
- $run_date_time = $list_d['run_time'];
- }
- echo 1;
- //$order_result = check_order($startx_y, $endx_y, $line_id, $run_id, $tic_num, $start_name, $end_name,$run_date_time);
- //echo $value['order_id']."->".$order_result['result']['order_id'];
- //writeLog("check_order:".json_encode($order_result));
- }
- //检验订单
- function check_order($startx_y, $endx_y, $line_id, $run_id, $tic_num, $start_name, $end_name,$run_date_time)
- {
- $co = new createOrder();
- $time = commonUtils::baiduShortTime($startx_y, $endx_y);
- if (!$startx_y || !$endx_y) {
- $result['status'] = 111; //状态码:111为经纬度不能为空)
- $result['info'] = "经纬度不能为空";
- echo json_encode($result);
- exit();
- }
- if ($time > 270) //总时长不能超过270分钟
- {
- $result['status'] = 101; //状态码:101为总时长不符合要求(超过270分钟)
- $result['info'] = "总时长不能超过270分钟";
- echo json_encode($result);
- exit();
- }
- if ($tic_num > 6) {
- $result['status'] = 108; //状态码:人数不能超过6人
- $result['info'] = "每个订单人数不能超过6人";
- echo json_encode($result);
- exit();
- }
-
- //先判断是否属于规定的市区
- $start_area = commonUtils::GeocodingAPI($startx_y);
- $end_area = commonUtils::GeocodingAPI($endx_y);
- if (($line_id == "449860" && $start_area == "南京市" && $end_area == "南通市") || ($line_id == "449865" && $start_area == "南通市" && $end_area == "南京市")) {
- if ($line_id && $run_id && $tic_num && $startx_y && $endx_y && $run_date_time) {
- $orderID = commonUtils::produceOrderId($tic_num); //获取订单号
- $res = $co->calShortTime($line_id, $run_id, $orderID, $tic_num, $startx_y, $start_name, $endx_y, $end_name, $run_date_time);
- return $res;
- }else{
- $result['code'] = '1';
- $result['info'] = "订单提交信息不全";
- echo json_encode($result);
- exit();
- }
- } else {
- $result['code'] = '1';
- $result['info'] = "所选地点不在规划范围内";
- echo json_encode($result);
- exit();
- }
- }
-
- function Find($order_id,$pdo){
- $sql = "select order_description,order_price,order_pay_main_id "
- . "from order_main "
- . "where order_id=".$order_id;
- $result=$pdo->query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- $order_price = $rowset[0];//订单总价格 订单票的数量
- $sql = "SELECT DISTINCT
- order_description,parent_order_id,run_date,run_id,run_time,run_bus_order_id,prod_id,parent_prod_id,PROD_START_STATION_AREA_NAME,PROD_START_STATION_RES_NAME,PROD_END_STATION_AREA_NAME,PROD_END_STATION_RES_NAME
- FROM `order_main`
- where PARENT_ORDER_ID=".$order_id;
- $result=$pdo->query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- $order_station = $rowset[0];//订单来往地址 订单时间 订单好
- if(empty($order_station))
- return false;
- $array_order_desc=array();
-
- $arr_temp = explode('|',$order_price['order_description']);
- $arr=array();
- foreach ($arr_temp as $k=>$v2) {
- if(!empty($v2))
- $array_order_desc[]= explode (',', $v2); //订单票 * 数量
- }
- $list = array();
- //上海(黄浦旅游集散站) - 乌镇(西栅1号停车场)//反的数组
- $list['station'] = $order_station['PROD_START_STATION_AREA_NAME'].'('.$order_station['PROD_START_STATION_RES_NAME'].')'
- .'-'.$order_station['PROD_END_STATION_AREA_NAME'].'('.$order_station['PROD_END_STATION_RES_NAME'].')';
- $list['start_station']=$order_station['PROD_START_STATION_AREA_NAME'];
- $list['end_station']=$order_station['PROD_END_STATION_AREA_NAME'];
- $list['start_res_name'] = $order_station['PROD_START_STATION_RES_NAME'];
- $list['end_res_name'] = $order_station['PROD_END_STATION_RES_NAME'];
- $list['run_date'] = $order_station['run_date'];
- $list['run_time'] = $order_station['run_date'].' '.$order_station['run_time'];
- $list['count']='';
- $list['tic_num'] = 0;
- foreach ($array_order_desc as $v){
- $list['count'] .= ' '.$v[0].' × '.$v[2];
- $list['tic_num'] +=$v[2] ;
- }
-
- $list['order_price'] = $order_price['order_price'];
- $sql = "select pay_serial_number from order_pay_detail where pay_main_id =".$order_price['order_pay_main_id'];
- $result=$pdo->query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- $list['pay_num'] = $rowset[0]['pay_serial_number'];
- $list['line_id'] = $order_station['parent_prod_id'];
- $list['run_id'] = $order_station['run_id'];//run_bus_order_id
- $list['run_bus_order_id'] = $order_station['run_bus_order_id'];//parent_order_id
- $list['parent_order_id'] = $order_station['parent_order_id'];
- $list['prod_id'] = $order_station['prod_id'];
- return $list;
- }
-
- ?>
|