You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

168 lines
6.8 KiB

  1. <?php
  2. /*
  3. Author:XM
  4. Compeny:Spiders Travel
  5. */
  6. require_once '../Common/Mysql.php';
  7. if (ALLOW_ORIGIN)
  8. header("Access-Control-Allow-Origin:*");
  9. $pdo=conn();
  10. $orderid=isset($_GET['order_id'])?intval($_GET['order_id']):0;
  11. $userid=getUserId();
  12. if ($userid ===false){
  13. echo json_encode(array("code"=>1,"info"=>"用户未登录"));
  14. exit;
  15. }
  16. //$userid=1;
  17. $method=isset($_GET['method'])?$_GET['method']:"";
  18. if($method=="get_msg"){
  19. // $sql="CALL HT_GET_ORDER_SEND_MESSAGE(".$userid.",".$orderid.")";
  20. $sql = " SELECT o.SEND_MOBILE as send_mobile ,o.SEND_MESSAGE as message,o.SEND_TIME as send_time,u.USER_NAME as user_name FROM order_send_message as o, base_user as u WHERE o.ORDER_ID={$orderid} AND o.CANCEL_FLAG=0 AND u.ID=o.CREATE_USER_ID ";
  21. writeLog("get_msg sql=".$sql);
  22. $result=$pdo->query($sql);
  23. $rowset=$result->fetchAll();
  24. $data=array();
  25. if($rowset){
  26. $data['code']="0";
  27. $data['info']="";
  28. if(count($rowset)>0){
  29. $data['message']=$rowset;
  30. }else{
  31. $data['message']=array();
  32. }
  33. }else{
  34. $data['code']="0";
  35. $data['info']="";
  36. $data['message']=array();
  37. }
  38. echo json_encode($data);exit();
  39. }
  40. $sql="CALL XM_ORDER_GET_DETAILS(".$userid.",".$orderid.")";
  41. writeLog('GET_DETAILS sql='.$sql);
  42. $result=$pdo->query($sql);
  43. if($result){
  44. $data=array();
  45. do{
  46. $rowset=$result->fetchAll(PDO::FETCH_ASSOC);
  47. if($rowset){
  48. $data[]=$rowset;
  49. }
  50. }while ($result->nextRowset());
  51. }else{
  52. $data['code']="500";
  53. $data['info']="数据库错误";
  54. echo json_encode($data);
  55. exit();
  56. }
  57. $count=count($data);
  58. if (!isset($data[0][0]['ORDER_STATUS'])){
  59. echo json_encode(array("code"=>2,"info"=>"单号错误"));
  60. exit;
  61. }
  62. if ($count==1 && isset($data[0][0]['totalprice'])){
  63. echo json_encode(array("code"=>3,"info"=>"查询为空"));
  64. exit;
  65. }
  66. $status=$data[0][0]['ORDER_STATUS_NAME'];
  67. $status_id=$data[0][0]['ORDER_STATUS'];
  68. $order_sub_date=date("Y-m-d",strtotime($data[0][0]['ORDER_CREATE_TIME']));
  69. $order_sub_time=date("H:i",strtotime($data[0][0]['ORDER_CREATE_TIME']));
  70. $json=array("code"=>0,"info"=>"","order_no"=>$data[0][0]['ORDER_ID'],"order_status_id"=>$status_id,"order_status"=>$status,"order_source"=>$data[0][0]['SAL_ORG_NAME'],"sales"=>$data[0][0]['SAL_WAY'],"order_sub"=>array("order_sub_date"=>$order_sub_date,"order_sub_time"=>$order_sub_time));
  71. if ($status_id=="145"){
  72. $json['pay_second']=$data[0][0]['KEEP_END_TIME'];
  73. }else if($status_id=="146"){
  74. $order_pay_date=date("Y-m-d",strtotime($data[0][0]['ORDER_PAY_TIME']));
  75. $order_pay_time=date("H:i",strtotime($data[0][0]['ORDER_PAY_TIME']));
  76. $order_ticket_date=date("Y-m-d",strtotime($data[0][0]['ORDER_TICKETS_TIME']));
  77. $order_ticket_time=date("H:i",strtotime($data[0][0]['ORDER_TICKETS_TIME']));
  78. $json['order_pay_success']=array("order_pay_success_date"=>$order_pay_date,"order_pay_success_time"=>$order_pay_time);
  79. $json['order_ticket_success']=array("order_ticket_success_date"=>$order_ticket_date,"order_ticket_success_time"=>$order_ticket_time);
  80. }else if($status_id=="147"){
  81. $order_pay_date=date("Y-m-d",strtotime($data[0][0]['ORDER_PAY_TIME']));
  82. $order_pay_time=date("H:i",strtotime($data[0][0]['ORDER_PAY_TIME']));
  83. $order_ticket_date=date("Y-m-d",strtotime($data[0][0]['ORDER_TICKETS_TIME']));
  84. $order_ticket_time=date("H:i",strtotime($data[0][0]['ORDER_TICKETS_TIME']));
  85. $json['order_pay_success']=array("order_pay_success_date"=>$order_pay_date,"order_pay_success_time"=>$order_pay_time);
  86. $json['order_ticket_success']=array("order_ticket_success_date"=>$order_ticket_date,"order_ticket_success_time"=>$order_ticket_time);
  87. $json['order_travel_success']=array("order_travel_success_date"=>$data[0][0]['ORDER_TRAVEL_TIME']);
  88. }else if ($status_id=="148"){
  89. // $order_cancel_date=$data[0][0]['ORDER_CANCEL_TIME']?date("Y-m-d",strtotime($data[0][0]['ORDER_CANCEL_TIME']));
  90. // $order_cancel_time=date("H:i",strtotime($data[0][0]['ORDER_CANCEL_TIME']));
  91. $order_real_date_time=$data[0][0]['ORDER_CANCEL_TIME'];
  92. $ttt=explode(" ",$data[0][0]['ORDER_CANCEL_TIME']);
  93. $order_cancel_date=isset($ttt[0])?$ttt[0]:'';
  94. $order_cancel_time=isset($ttt[1])?$ttt[1]:'';
  95. $reson=$data[0][0]['ORDER_CANCEL_REASON'];
  96. $json['order_cancel']=array("order_cancel_reason"=>"取消订单(".$reson.")","order_real_date_time"=>$order_real_date_time,"order_cancel_date"=>$order_cancel_date,"order_cancel_time"=>$order_cancel_time);
  97. }
  98. $seat_array = array();
  99. $total_price = 0;
  100. $data1=array();
  101. foreach ( $data[1] as $k=>$v){
  102. $data1[$v['PARENT_PROD_ID']]['prod_id']=$v['PARENT_PROD_ID'];
  103. $data1[$v['PARENT_PROD_ID']]['line_code']=$v['LINE_CODE'];
  104. $data1[$v['PARENT_PROD_ID']]['line_name']="(".$v['PARENT_PROD_NAME'].")";
  105. $data1[$v['PARENT_PROD_ID']]['start_area']=$v['START_AREA'];
  106. $data1[$v['PARENT_PROD_ID']]['end_area']=$v['END_AREA'];
  107. $data3['start_time']=$v['START_TIME'];
  108. $data3['car_number']=sprintf("%02d",$v['CAR_NO']);
  109. $data3['seat']=$v['SEAT_TYPE'];
  110. $data3['seat_number']=$v['SEAT_NAME'];
  111. $data3['ticket_name']=$v['CROWD'];
  112. $data3['if_print']=intval($v['PRINT']);
  113. $data3['if_meal']= intval($v['MEAL']);
  114. $data3['if_bounce']=intval($v['BOUNCE']);
  115. $data3['price']=$v['PRICE'];
  116. //$data3['if_ticket_left']=$v['START_TIME'];
  117. //$data2[$v['PARENT_PROD_ID']][]=$data3;
  118. // 将根据车号过滤去掉 比如 1-N53 2-N53 两个车
  119. // if( !in_array($v['SEAT_NAME'],$seat_array) ) {
  120. $data1[$v['PARENT_PROD_ID']]['tickets'][] = $data3;
  121. $seat_array[] = $v['SEAT_NAME'];
  122. $total_price+=$v['PRICE'];
  123. // }
  124. }
  125. $json['line_info']=array_values($data1);
  126. //$json['total_rmb']=$data[2][0]['totalprice'];
  127. $json['total_rmb']=$total_price;
  128. $json['customer_info']=$data[3];
  129. //$json['customer_info']=array('customer_name'=>$data[3][0]['CUSTOMER_NAME'],'customer_mobile'=>$data[3][0]['CUSTOMER_MOBILE'],'customer_type_name'=>$data[3][0]['TYPE_NAME'],'customer_id'=>$data[3][0]['CUSTOMER_ID_NO']);
  130. $msg_pdo = conn();
  131. $msg_sql = "CALL SP_GET_MESSAGE_TEMPLATE('" . $orderid . "')";
  132. $msg_result = $msg_pdo->query($msg_sql);
  133. $i = 1;
  134. $data2 = array();
  135. if ($msg_result) {
  136. do {
  137. $row = $msg_result->fetchAll(PDO::FETCH_ASSOC);
  138. if ($i == 1) {
  139. $data2['seat'] = isset($row) ? $row : array();
  140. } else if ($i == 2) {
  141. $data2['run_info'] = isset($row) ? $row : array();
  142. } else if ($i == 3) {
  143. $data2['driver'] = (isset($row) && $row != false && isset($row[0]) )? $row : array( "0" => array( "bus_no" => "", "driver_name" => "", "driver_mobile" => "" ) );
  144. } else {
  145. }
  146. $i++;
  147. } while ($msg_result->nextRowset());
  148. $json['driver']=$data2['driver'];
  149. // $driver = isset($data2['driver'][0]) ? $data2['driver'][0] : array("bus_no" => "-", "driver_name" => "-", "driver_mobile" => "-");
  150. // $json['driver'] = array("send_bus_no" => $driver['bus_no'], "send_driver_name" => $driver['driver_name'], "send_driver_mobile" => $driver['driver_mobile']);
  151. } else {
  152. $json['driver'] = array("send_bus_no" => "-", "send_driver_name" => "-", "send_driver_mobile" => "-");
  153. }
  154. if (is_array($json)){
  155. echo json_encode($json);
  156. }
  157. exit;
  158. //require_once '../Common/Config.php';