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.

cancel_outtime_order.php.bak 4.5 KiB

3 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <?php
  2. //载入配置文件和连接数据库
  3. date_default_timezone_set('PRC');
  4. require_once '/usr/share/nginx/XMWX/ZZDZ2/config/Mysql.php';
  5. require_once '/usr/share/nginx/XMWX/ZZDZ2/application/api/cancelOrder.php';
  6. require_once '/usr/share/nginx/XMWX/ZZDZ2/application/custom_made/dictionary.php';
  7. $pdo=conn();
  8. $time = date('Y-m-d H:i:s', time()-600);
  9. $sql="select order_id,create_time from order_main where create_time<'".$time."' and order_status = 145 and cancel_flag=0 and parent_order_id =0 and ORDER_BOOK_STATUS =1 and order_prod_type in (81,82)";
  10. $result=$pdo->query($sql);
  11. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  12. if(false == $rowset) {die;}
  13. foreach ($rowset as $v) {
  14. $list[] =$v['order_id'];
  15. }
  16. foreach ($list as $v) {
  17. $sql = "CALL SP_CANCEL_ORDER(" . 0 . "," . $v . ")";
  18. $result = $pdo -> query($sql);
  19. $list_d = Find($v);
  20. if($list_d['prod_id'] == 449862 ||$list_d['prod_id'] == 449867 || $list_d['prod_id'] == 450039 ||$list_d['prod_id'] == 450043 ){
  21. foreach ($array_line_info[$list_d['line_id']]['start'] as $v) {
  22. if($v['name']==$list_d['start_res_name']){
  23. $start_id = $v['id'];
  24. }
  25. }
  26. foreach ($array_line_info[$list_d['line_id']]['end'] as $v) {
  27. if($v['name']==$list_d['end_res_name']){
  28. $end_id = $v['id'];
  29. }
  30. }
  31. $cancel_order = new cancelOrder();
  32. $res = $cancel_order ->cancel_order($list['run_id'], $list['run_bus_order_id'],$start_id,$end_id,$order_id, $list['tic_num']);
  33. }
  34. //exit();
  35. }
  36. function Find($order_id){
  37. $pdo= conn();
  38. $sql = "select order_description,order_price,order_pay_main_id "
  39. . "from order_main "
  40. . "where order_id=".$order_id;
  41. $result=$pdo->query($sql);
  42. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  43. $order_price = $rowset[0];//订单总价格 订单票的数量
  44. $sql = "SELECT DISTINCT
  45. 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
  46. FROM `order_main`
  47. where PARENT_ORDER_ID=".$order_id;
  48. $result=$pdo->query($sql);
  49. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  50. $order_station = $rowset[0];//订单来往地址 订单时间 订单好
  51. if(empty($order_station))
  52. return false;
  53. $array_order_desc=array();
  54. $arr_temp = explode('|',$order_price['order_description']);
  55. $arr=array();
  56. foreach ($arr_temp as $k=>$v2) {
  57. if(!empty($v2))
  58. $array_order_desc[]= explode (',', $v2); //订单票 * 数量
  59. }
  60. $list = array();
  61. //上海(黄浦旅游集散站) - 乌镇(西栅1号停车场)//反的数组
  62. $list['station'] = $order_station['PROD_START_STATION_AREA_NAME'].'('.$order_station['PROD_START_STATION_RES_NAME'].')'
  63. .'-'.$order_station['PROD_END_STATION_AREA_NAME'].'('.$order_station['PROD_END_STATION_RES_NAME'].')';
  64. $list['start_station']=$order_station['PROD_START_STATION_AREA_NAME'];
  65. $list['end_station']=$order_station['PROD_END_STATION_AREA_NAME'];
  66. $list['start_res_name'] = $order_station['PROD_START_STATION_RES_NAME'];
  67. $list['end_res_name'] = $order_station['PROD_END_STATION_RES_NAME'];
  68. $list['run_date'] = $order_station['run_date'];
  69. $list['run_time'] = $order_station['run_date'].' '.$order_station['run_time'];
  70. $list['count']='';
  71. $list['tic_num'] = 0;
  72. foreach ($array_order_desc as $v){
  73. $list['count'] .= ' '.$v[0].' × '.$v[2];
  74. $list['tic_num'] +=$v[2] ;
  75. }
  76. $list['order_price'] = $order_price['order_price'];
  77. $sql = "select pay_serial_number from order_pay_detail where pay_main_id =".$order_price['order_pay_main_id'];
  78. $result=$pdo->query($sql);
  79. $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
  80. $list['pay_num'] = $rowset[0]['pay_serial_number'];
  81. $list['line_id'] = $order_station['parent_prod_id'];
  82. $list['run_id'] = $order_station['run_id'];//run_bus_order_id
  83. $list['run_bus_order_id'] = $order_station['run_bus_order_id'];//parent_order_id
  84. $list['parent_order_id'] = $order_station['parent_order_id'];
  85. $list['prod_id'] = $order_station['prod_id'];
  86. return $list;
  87. }