|
- <?php
- /*
- Author:fuhc
- Compeny:Spiders Travel
- */
- require_once '../Common/Mysql.php';
- require_once '../Common/order_common.php';
- if (ALLOW_ORIGIN)
- header("Access-Control-Allow-Origin:*");
- header("Content-type:text/html;charset=utf-8");
-
-
-
- $method = isset($_GET['method']) ? $_GET['method'] : "";
- $user_id = getUserId();
- //if ($user_id == false) {
- // echo json_encode(array("code" => "1", "info" => "用户未登录"));
- // exit ;
- //}
- //$user_id=1;
- //取消订单原因
- if(isset($_GET['reason'])){
- $reason=$_GET['reason'];
- $order_id=$_GET['order_id'];
- $clock=$_GET['clock'];
- // $return_data = array();
- // $return_data["code"] = 1;
- // $return_data["info"] = $reason;
- $pdo_insert = conn();
- $sql = "insert into order_comment(ORDER_ID,COMMENT_TXT,CREATE_TIME) VALUES ({$order_id},'{$reason}','{$clock}')";
- $result = $pdo_insert->exec($sql);
- }
-
- if ($method == "cancelOrder") {
- $order_id = isset($_GET['order_id']) ? $_GET['order_id'] : "";
- $pdo = conn();
-
- $list_d = Find($order_id);
- if($list_d['prod_id'] == 449862 || $list_d['prod_id'] == 449867 || $list_d['prod_id'] == 450039 || $list_d['prod_id'] == 450043 || $list_d['prod_id'] == 450541 || $list_d['prod_id'] == 450546 ){
- $result = post2('http://wx.zhizhuchuxing.com/ZZDZ2/application/custom_made/control.php',array('type' =>'order_refund','order_id'=>$order_id));
- $result = (array)json_decode($result,true);
- }else{
- // $sql = "CALL SP_CANCEL_ORDER(" . $user_id . "," . $order_id . ")";
- // writeLog('cancelOrder= sql='.$sql);
- // $result = $pdo -> query($sql);
- // if( false != $result ) {
- // $rowset=$result->fetchAll(PDO::FETCH_ASSOC);
- // $result = array();
- // $result['code'] = $rowset[0]['errorcode'];
- // }
-
- $cancel_url = 'http://'.CS1_DOMAIN.'/api/submit-order/cancel-bus-order';
- $send_post_data = array(
- "order_id" => $order_id,
- "user_id" => $user_id,
- "if_link" => 1,
- "cancel_reason" => $reason,
- 'opera_platform' => 'CS系统'
- );
- $temp=httpRequest($cancel_url,$send_post_data);
- $result = json_decode($temp, true);
-
- }
-
- if($result){
- if(isset($result['code']) && $result['code'] == 0){
- $rowset['code'] ='0';
- $rowset['info'] ='退票成功';
- $data['code'] ='0';
- $data['info'] = '退票成功';
- // $pdo_insert = conn();
- // $current_time = date("Y-m-d H:i:s");
- // $cancel_reason = "取消原因:".$reason;
- // $sql = "insert into order_opera_log(order_id,opera_user_id,opera_type,opera_time,opera_detail,opera_platform) VALUES ({$order_id},$user_id,2,'{$current_time}','{$cancel_reason}','CS系统')";
- // $result = $pdo_insert->exec($sql);
-
- // $post_data['order_id'] = "{$order_id}";
- // $post_data['order_status'] = "460";
- // $temp=post2("http://". CS_DOMAIN. "/st-xm/Api/add_order_status_log.php",$post_data);
- // //在这里加入run_x重排,该取消订单所在的车次的run_x数据
- // $re_data=array();
- // $re_data['order_id']=$order_id;
- // $temp2=post2("http://". CS_DOMAIN. "/api1.0/run_x_reorder.php",$re_data);
- // $data['extra']=json_decode($temp2);
- }else{
- $data['code']=isset($result['code'])?$result['code']:"499";
- $data['info']=isset($result['info'])?$result['info']:"未从数据库中获得返回值";
- $rowset['code'] = $data['code'];
- $rowset['info'] = $data['info'];
- echo json_encode($data);exit();
- }
-
- // echo json_encode($data);exit();
- }else{
- $data['code']="500";
- $data['info']="数据库错误";
- echo json_encode($data);exit();
- }
-
-
-
-
- if (is_array($rowset) && $rowset['code'] == 0 && SEND_MESSAGE == true) {
- $res_content = get_msg_info($order_id);
- $name = isset($res_content[0])?$res_content[0]:"";
- $tel = isset($res_content[1])?$res_content[1]:"";
- $content = isset($res_content[2])?$res_content[2]:"";
- // $content = "单号:" . $order_id . ',订单状态变更为' . $order_status . "随机数" . rand(1, 10000);
- writeLog("巴士取消短信模板内容:【" . $content . "】");
-
- //..取消发短信
- // $response=null;
- // $send_success="-100";
- // $response = sendTelMessage($tel, $name, $content, $order_id);
- // writeLog(json_encode($response));
- // $send_success = (int)$response;
- // $comment_type=0;
- // $comment_text="";
- // $sql1 = "CALL HT_ADD_MSG_COMMENT(".$user_id.",'addmsg'," . $order_id . "," . $comment_type . ",'" . $comment_text . "','" . $tel . "','" . $content . "','" . date("Y-m-d H:i:s") . "',{$send_success})";
- // $result1 = $pdo -> query($sql1);
- // $rowset1 = $result1 -> fetchAll(PDO::FETCH_ASSOC);
- // $result1 -> closeCursor();
- // writeLog("order_list.php HT_ADD_MSG_COMMENT()::" . $sql1);
- }
- echo json_encode($data);exit();
- }else if($method=="getOrderORG"){
- $pdo=conn();
- // $sql="SELECT ORG_ID AS org_id ,ORG_NAME as soure FROM base_organization where cancel_flag=0;";
- $sql="SELECT ID AS org_id ,SUPPLIER_NAME as soure FROM base_supplier where cancel_flag=0 AND SUPPLIER_TYPE=301";
- $main_corp_id = isset($_COOKIE["user_main_corp"]) ? $_COOKIE["user_main_corp"] : 0;
- if( $main_corp_id > 0 ) {
- $sql .= " AND MAIN_CORP_ID IN(0,{$main_corp_id}) ";
- }
- if( $main_corp_id != 3 ) {
- $sql .= " AND MAIN_CORP_ID NOT IN(3) ";
- }
- $result=$pdo->query($sql);
-
- $rowset=array("code"=>"0","info"=>"");
- $rowset['order_ORG_List']=$result->fetchAll(PDO::FETCH_ASSOC);
- $result->closeCursor();
- //准备查找运营负责人列表
- $pdo1=conn();
- $sql1="SELECT ID AS run_duty_id ,TRUE_NAME as name FROM base_user where cancel_flag=0 AND IS_RUN_DUTY=1";
- $main_corp_id = isset($_COOKIE["user_main_corp"]) ? $_COOKIE["user_main_corp"] : 0;
- if( $main_corp_id > 0 ) {
- $sql1 .= " AND MAIN_CORP_ID = {$main_corp_id} ";
- }
-
- $res=$pdo1->query($sql1);
-
- $rowset['run_duty_list']=$res->fetchAll(PDO::FETCH_ASSOC);
- $res->closeCursor();
- echo json_encode($rowset);exit();
- }
- else {
- $timelimit = isset($_GET['timelimit']) ? $_GET['timelimit'] : '';
- $starttime = isset($_GET['starttime']) ? $_GET['starttime'] : '';
- $endtime = isset($_GET['endtime']) ? $_GET['endtime'] : '';
- $ordersource = isset($_GET['ordersource']) ? (empty($_GET['ordersource']) ? 0 : $_GET['ordersource']) : 0;
- $orderstatus = isset($_GET['orderstatus']) ? (empty($_GET['orderstatus']) ? 0 : $_GET['orderstatus']) : 0;
- $paystatus = isset($_GET['paystatus']) ? (empty($_GET['paystatus']) ? -1 : $_GET['paystatus']) : -1;
- $bus_type= isset($_GET['bus_type']) ? (empty($_GET['bus_type']) ? -1 : $_GET['bus_type']) : -1;
- $billingstatus = isset($_GET['billingstatus']) ? $_GET['billingstatus'] : '';
- $mealbounce = isset($_GET['mealbounce']) ? $_GET['mealbounce'] : '';
- $refund = isset($_GET['refund']) ? $_GET['refund'] : '';
- $moresearch = isset($_GET['moresearch']) ? trim($_GET['moresearch']) : '';
- $export = isset($_GET['export']) ? $_GET['export'] : '';
- $run_time = isset($_GET['run_time'])?$_GET['run_time']:'';
- $search_bus_no = isset($_GET['search_bus_no'])?$_GET['search_bus_no']:'';
-
-
- //2016-07-15新增
- $start_area=isset($_GET['start_area']) ? $_GET['start_area'] : '';
- $end_area=isset($_GET['end_area']) ? $_GET['end_area'] : '';
- $line=isset($_GET['line']) ? $_GET['line'] : '';
- //..暂未加入存储过程
- //运营负责人
- $run_duty=isset($_GET['run_duty']) ? $_GET['run_duty'] : '-1';
-
- $currpage = isset($_GET['currpage']) ? (empty($_GET['currpage']) ? 1 : $_GET['currpage']) : 1;
- $pagesize = isset($_GET['pagesize']) ? (empty($_GET['pagesize']) ? 10 : $_GET['pagesize']) : 10;
- $pdo = conn();
- // $sql = "CALL XM_ORDER_GET_LIST(".$user_id.",'" . $timelimit . "','" . $starttime . "','" . $endtime . "'," . $ordersource . "," . $orderstatus . "," . $paystatus . ",'" . $billingstatus . "','" . $mealbounce . "','" . $refund . "','" . $moresearch . "','" . $export . "'," . $currpage . "," . $pagesize . ",'".$line."','".$start_area."','".$end_area."','".$bus_type."')";
- // writeLog('order_list.php -- sql== '.$sql);
- //
- // $result = $pdo -> query($sql);
- // if( false == $result ) {
- // echo json_encode(array("code" => "0", "info" => "", "searchInfo" => array()));exit();
- // }
- // $data = array();
- // do {
- // $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- // if ($rowset) {
- // $data[] = $rowset;
- // }
- // } while ($result->nextRowset());
- // $count = count($data);
- $_GET["main_corp_id"] = isset($_COOKIE["user_main_corp"]) ? $_COOKIE["user_main_corp"] : 0;
- $data = get_order_list( $pdo, $_GET );
- if( false == $data ) {
- echo json_encode(array("code" => "0", "info" => "", "searchInfo" => array()));exit();
- }
- $all_supplier_array = get_memcache("ARY_ALL_SUPPLIER");
- if( false == $all_supplier_array || is_array($all_supplier_array) == false || count($all_supplier_array) <= 0 ) {
- $pdo4=conn();
- $sql = " SELECT id,main_corp_id,supplier_type,supplier_name FROM base_supplier WHERE cancel_flag = 0 ";
- $result=$pdo->query($sql);
- $search_result = $result->fetchAll(PDO::FETCH_ASSOC);
- $all_supplier_array = array();
- foreach( $search_result as $result_info ) {
- $all_supplier_array[$result_info["id"]] = $result_info;
- }
- $result->closeCursor();
- }
-
- //准备查找运营负责人列表
- $pdo5=conn();
- $sql1="SELECT ID AS run_duty_id ,TRUE_NAME as name FROM base_user where MAIN_CORP_ID = {$_GET["main_corp_id"]} ";
- $result=$pdo->query($sql1);
- $search_result = $result->fetchAll(PDO::FETCH_ASSOC);
- $base_user_name_array = array();
- foreach( $search_result as $result_info ) {
- $base_user_name_array[$result_info["run_duty_id"]] = $result_info["name"];
- }
-
- $order_list = $data["order_list"];
- $order_id_array = array();
- $order_paymain_id_array = array();
- foreach($order_list as $k => $v){
- $order_id_array[]=$v['parent_orderNo'];
- $order_paymain_id_array[] = $v['order_pay_main_id'];
- $order_list[$k]['passenger_info']=str_replace(',','</br>',$v['passenger_info']);
- }
- //额外酒店门票价格
- $pdo2 = conn();
- $search_extra_sql = " SELECT id,order_id,hotel_price,gate_price FROM order_extra_info WHERE order_id IN (".implode(",",$order_id_array).") ";
- $result2 = $pdo2->query($search_extra_sql);
- if( false != $result2 ) {
- $order_extra_array = $result2->fetchAll();
- if ($order_extra_array != false && count($order_extra_array) > 0) {
- $order_extra_array2 = array();
- foreach ($order_extra_array as $order_extra_info) {
- $order_extra_array2[$order_extra_info["order_id"]] = $order_extra_info;
- }
- $order_extra_array = $order_extra_array2;
- }
- }
- //支付方式
- $pdo3 = conn();
- $search_extra_sql = " SELECT pay_main_id,pay_type_id_1 FROM order_pay_detail WHERE pay_main_id IN (".implode(",",$order_paymain_id_array).") ";
- $result3 = $pdo2->query($search_extra_sql);
- if( false != $result2 ) {
- $order_pay_array = $result3->fetchAll();
- if ($order_pay_array != false && count($order_pay_array) > 0) {
- $order_pay_array2 = array();
- foreach ($order_pay_array as $order_extra_info) {
- $order_pay_array2[$order_extra_info["pay_main_id"]] = $order_extra_info["pay_type_id_1"];
- }
- $order_pay_array = $order_pay_array2;
- }
- }
- //订单数组的数据重置
- $disp_pay_type = array("221" => "授信支付", "232" => "天猫旗舰店支付", "275" => "授信支付", "278" => "微信支付", "638" => "支付宝支付");
- $order_list2 = array();
- foreach( $order_list as $order_info ) {
- if( isset($all_supplier_array[$order_info["org_id"]]) ) {
- $order_info["org_name"] = $all_supplier_array[$order_info["org_id"]]["supplier_name"];
- } else {
- $order_info["org_name"] = "";
- }
-
- if( isset($all_supplier_array[$order_info["sub_channel_id"]]) ) {
- $order_info["sub_channel_name"] = $all_supplier_array[$order_info["sub_channel_id"]]["supplier_name"];
- } else {
- $order_info["sub_channel_name"] = "";
- }
-
- if( isset($order_pay_array[$order_info["order_pay_main_id"]]) ) {
- $order_info["pay_type"] = isset($disp_pay_type[$order_pay_array[$order_info["order_pay_main_id"]]]) ? $disp_pay_type[$order_pay_array[$order_info["order_pay_main_id"]]] : "授信支付";
- } else {
- $order_info["pay_type"] = "授信支付";
- }
- $order_info["seat"] = "普通座×".$order_info["count"];
- if( isset($order_extra_array[$order_info["M_ID"]]) ) {
- $order_info["hotel_price"] = $order_extra_array[$order_info["M_ID"]]["hotel_price"];
- $order_info["gate_price"] = $order_extra_array[$order_info["M_ID"]]["gate_price"];
- $extra_info_array = array();
- if( isset($order_info["hotel_price"]) && mb_strlen($order_info["hotel_price"]) > 0 ) {
- $extra_info_array[] ="酒店:".$order_info["hotel_price"];
- }
- if( isset($order_info["gate_price"]) && mb_strlen($order_info["gate_price"]) > 0 ) {
- $extra_info_array[] ="门票:".$order_info["gate_price"];
- }
- $order_info["seat"] .= "[br /]".implode(" ", $extra_info_array);
- }
- if( isset($base_user_name_array[$order_info["run_duty_id"]]) ) {
- $order_info["run_duty_name"] = $base_user_name_array[$order_info["run_duty_id"]];
- } else {
- $order_info["run_duty_name"] = "";
- }
- $order_list2[] = $order_info;
- }
- $order_list = $order_list2;
- $json = array("code" => "0", "info" => "");
- $json['totalTickets'] = $data["total_num"];
- $json['totalPages'] = ceil($data["total_num"]/$pagesize);
- $json['currentpage'] = $currpage;
- $json['pagesize'] = $pagesize;
- $json['orderList'] = array_values($order_list);
- $json['orderStatus'][] = $data["status_count"];
-
- $json['totalGmv'] = number_format($data["total_gmv"],2);
- $json['totalPeople'] = number_format($data["total_people"]);
- echo json_encode($json);exit();
- }
-
-
-
-
- function get_msg_info($ORDER_ID) {
- $msg_pdo = conn();
- $msg_sql = "CALL SP_GET_MESSAGE_TEMPLATE('" . $ORDER_ID . "')";
- $content = '';
- if (is_object($msg_pdo)) {
- $msg_result = $msg_pdo -> query($msg_sql);
- $i = 1;
- $data = array();
- if ($msg_result) {
- $data['code'] = "0";
- $data['info'] = "";
- do {
- $row = $msg_result -> fetchAll(PDO::FETCH_ASSOC);
- if ($i == 1) {
- $data['seat'] = isset($row) ? $row : array();
- } else if ($i == 2) {
- $data['run_info'] = isset($row) ? $row : array();
- } else if ($i == 3) {
- $data['driver'] = isset($row) ? $row : array();
- } else {
- }
- $i++;
- } while($msg_result->nextRowset());
- }
- $json_obj = json_decode(json_encode($data), TRUE);
- $seat = isset($json_obj['seat'][0])?$json_obj['seat'][0]:array();
- $run_info = isset($json_obj['run_info'][0])?$json_obj['run_info'][0]:array();
- $driver = isset($json_obj['driver'][0])?$json_obj['driver'][0]:array();
- //取消
- $content = "您预订的{出发日期 出发时间}{出发地}-{目的地}{票种名}{张数}张,已成功退票,期待下次再为您服务!";
- if ($seat) {
- $seat_x = $seat['seat_x'];
- $seat_y = $seat['seat_y'];
- $seat_name = $seat['seat_name'];
- $order_main_id = $seat['order_main_id'];
- }
- if ($run_info) {
- $order_count = $run_info['order_count'];
- $start_date = $run_info['start_date'];
- $start_time = $run_info['start_time'];
- $parent_order_id = $run_info['parent_order_id'];
- $end_date = $run_info['end_date'];
- $start_area = $run_info['start_area'];
- $end_area = $run_info['end_area'];
- $res_name = $run_info['res_name'];
- $prod_name=$run_info['prod_name'];
- $prod_name="标准票";
- $customer_name = $run_info['customer_name'];
- $customer_mobile = $run_info['customer_mobile'];
- $start_end_date = $start_date . "," . $start_time;
- $content = str_replace("{出发地}", $start_area, $content);
- $content = str_replace("{目的地}", $end_area, $content);
- $content = str_replace("{出发日期 出发时间}", $start_end_date, $content);
- $content = str_replace("{票种名}", $prod_name, $content);
- $content = str_replace("{张数}", $order_count, $content);
- }
- if ($driver) {
- $bus_no = $driver['bus_no'];
- $driver_name = $driver['driver_name'];
- $driver_mobile = $driver['driver_mobile'];
- }
- return array(isset($customer_name)?$customer_name:"", isset($customer_mobile)?$customer_mobile:"", isset($content)?$content:"短信错误!!!");
- }
-
- }
-
-
-
- function post2($url, $data){//file_get_content
-
-
-
- $postdata = http_build_query(
-
- $data
-
- );
-
-
-
- $opts = array('http' =>
-
- array(
-
- 'method' => 'POST',
-
- 'header' => 'Content-type: application/x-www-form-urlencoded',
-
- 'content' => $postdata
-
- )
-
- );
-
-
-
- $context = stream_context_create($opts);
-
-
- $result = file_get_contents($url, false, $context);
-
- return $result;
-
-
- }
-
-
- function Find($order_id){
- $pdo= conn();
- $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){
- if( !isset($v[2]) ) { continue; }
- $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;
- }
-
- exit();
|