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.
 
 
 
 

110 lines
3.8 KiB

  1. <?php
  2. if (ALLOW_ORIGIN)
  3. header("Access-Control-Allow-Origin:*");
  4. date_default_timezone_set('PRC');
  5. if(isset($_POST['order_id'])){
  6. echo json_encode(array("code" => 1, "info" => '订单号错误'));
  7. exit ;
  8. }
  9. $order_id=$_POST['order_id'];
  10. //单程情况
  11. if ($method == "0") {
  12. $pdo = conn();
  13. $list = Find($order_id);
  14. $cancel_info = cancelOrder($zzUtils,$list['run_date'],$list['run_date'], "",$id_p, '1',"","", "", "", "");
  15. if($cancel_info==0){
  16. $sql = "update order_main set order_status = 148 where order_id = ".$order_id;
  17. $result = $pdo -> query($sql);
  18. $list = Find($order_id);
  19. $code = 0;
  20. $info = 'success';
  21. $massge = '订单已取消';
  22. $list = $list;
  23. $result -> closeCursor();
  24. }else{
  25. $code =$cancel_info;
  26. $info = '取消失败';
  27. $massge = '失败';
  28. $list = "";
  29. }
  30. }else{
  31. if($list = Find($order_id)){
  32. $code = 0;
  33. $info = 'success';
  34. $massge = '成功';
  35. $list = $list;
  36. $time_cut = date('Y-m-d',time())-strtotime($list['run_date']);
  37. if($time_cut<=0){
  38. $code =1;
  39. $info = 'fail';
  40. $massge = '退票时间过期';
  41. $list = "";
  42. }
  43. }else{
  44. $code =1;
  45. $info = '未找到该订单';
  46. $massge = '失败';
  47. $list = "";
  48. }
  49. }
  50. $json['code'] = $code;
  51. $json['info'] = $info;
  52. $json['order_id']=$order_id;
  53. $json['massge'] = $massge;
  54. $json['list'] = $list;
  55. echo json_encode($json);
  56. die;
  57. function Find($order_id){
  58. $pdo= conn();
  59. $sql = "select order_description,order_price "
  60. . "from order_main "
  61. . "where order_id=".$order_id;
  62. $result=$pdo->query($sql);
  63. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  64. $order_price = $rowset[0];//订单总价格 订单票的数量
  65. $sql = "SELECT DISTINCT
  66. order_description,parent_order_id,run_date,run_time,PROD_START_STATION_AREA_NAME,PROD_START_STATION_RES_NAME,PROD_END_STATION_AREA_NAME,PROD_END_STATION_RES_NAME
  67. FROM `order_main`
  68. where PARENT_ORDER_ID=".$order_id;
  69. $result=$pdo->query($sql);
  70. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  71. $order_station = $rowset[0];//订单来往地址 订单时间 订单好
  72. if(empty($order_station))
  73. return false;
  74. $array_order_desc=array();
  75. $arr_temp = explode('|',$order_price['order_description']);
  76. $arr=array();
  77. foreach ($arr_temp as $k=>$v2) {
  78. if(!empty($v2))
  79. $array_order_desc[]= explode (',', $v2); //订单票 * 数量
  80. }
  81. $list = array();
  82. //上海(黄浦旅游集散站) - 乌镇(西栅1号停车场)//反的数组
  83. $list['station'] = $order_station['PROD_START_STATION_AREA_NAME'].'('.$order_station['PROD_START_STATION_RES_NAME'].')'
  84. .'-'.$order_station['PROD_END_STATION_AREA_NAME'].'('.$order_station['PROD_END_STATION_RES_NAME'].')';
  85. $list['start_station']=$order_station['PROD_START_STATION_AREA_NAME'];
  86. $list['end_station']=$order_station['PROD_END_STATION_AREA_NAME'];
  87. $list['start_res_name'] = $order_station['PROD_START_STATION_RES_NAME'];
  88. $list['end_res_name'] = $order_station['PROD_END_STATION_RES_NAME'];
  89. $list['run_date'] = $order_station['run_date'];
  90. $list['run_time'] = $order_station['run_date'].' '.$order_station['run_time'];
  91. $list['count']='';
  92. foreach ($array_order_desc as $v){
  93. $list['count'] .= ' '.$v[0].' × '.$v[2];
  94. }
  95. $list['order_price'] = $order_price['order_price'];
  96. return $list;
  97. }