Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 

480 Zeilen
25 KiB

  1. <?php
  2. if (ALLOW_ORIGIN)
  3. header("Access-Control-Allow-Origin:*");
  4. date_default_timezone_set('PRC');
  5. //require_once '../../Common/Mysql.php';
  6. //$res_content=get_msg_info(207678);
  7. //echo $res_content[2];exit();
  8. //^1[3,4,5,7,8]\d{9}$/
  9. //echo substr('{m1452p1|r202375}',strpos('{m5421p1|r202375}', 'm')+1, strpos('{m1254p1|r202375}', 'p')-2);
  10. $userid =$_COOKIE['user_id'];//getUserId();
  11. //$sql_user="select ";
  12. if (!$userid) {
  13. echo json_encode(array("code" => 1,"iflogin"=>1, "info" => "未登录"));
  14. exit ;
  15. }
  16. //$userid=1;
  17. $myprod = isset($_POST['prod']) ? $_POST['prod'] : "{m152603p1|r202375}";//{m152603p1|r202375}
  18. $prod_id =substr($myprod,strpos($myprod, 'm')+1, strpos($myprod, 'p')-2);
  19. $run_id = substr(substr($myprod,strpos($myprod, 'r')+1),0,-1);
  20. $sql_time = "select run_date,run_time,prod_id from run_main where run_id =".$run_id;
  21. $result_time= $pdo->query($sql_time);
  22. $row_t = $result_time->fetchAll(PDO::FETCH_ASSOC);
  23. $run_date = $row_t[0]['run_date'];
  24. $run_time = $row_t[0]['run_time'];
  25. //天目湖
  26. $prod_wu=array(448568,448569,/*448778,448779,*/448780,448781);
  27. if(strtotime($run_date.' '.$run_time)- time()<1800){
  28. echo json_encode(array('code'=>1,'info'=>'预定时间已过'));exit();
  29. }
  30. if(in_array($row_t[0]['prod_id'],$prod_wu)){
  31. if(date('Y-m-d', time())>=$run_date){
  32. echo json_encode(array('code'=>1,'info'=>'预定时间已过'));exit();
  33. }elseif(date('Y-m-d', time()+24*60*60)==$run_date && date('H:i', time())>'10:01'){
  34. echo json_encode(array('code'=>1,'info'=>'预定时间已过'));exit();
  35. }
  36. }
  37. $mycustomer = isset($_POST['customer']) ? $_POST['customer'] : "nono";
  38. $order_from_org_id = isset($_COOKIE['org_id']) ? $_COOKIE['org_id'] : 0;
  39. $top_org_id = $_COOKIE['top_org_id'];
  40. $login_type = isset($_COOKIE['login_type']) ? $_COOKIE['login_type'] : "";
  41. if( $login_type == 1 ) {
  42. $order_from_org_id = $top_org_id;
  43. }
  44. $outside_order_id = isset($_POST['outside_order_id']) ? $_POST['outside_order_id'] : '0';
  45. $sql_price = "select cus_price from opera_product_price where prod_id =".$prod_id;
  46. $result_price = $pdo->query($sql_price);
  47. $row_p = $result_price->fetchAll(PDO::FETCH_ASSOC);
  48. $price_list = $prod_id.','.$row_p[0]['cus_price'];//'.$row_p['0']['cus_price'].'
  49. //$u_prod_list=isset($_POST['u_prod_list'])?$_POST['u_prod_list']:"";
  50. //$f_u_prod_list=isset($_POST['f_u_prod_list'])?$_POST['f_u_prod_list']:"";
  51. ///st-xm/Api/add_new_order.php?prod={m152603p1|r202375}&customer={,fuhc_ceshi,1,15821387785,150,511621199502032173,,0,,,}
  52. //&order_from_org_id=5&outside_order_id=9999999999999&tt=20160719195230&price={60.00}&doorPrice=10&hotelPrice=20&ifcheck=1&back_pro_id={m152248p1|r203865}
  53. //.返程 1=true 0=false
  54. $ifcheck = isset($_POST['ifback']) ? $_POST['ifback'] : "";
  55. if($ifcheck){
  56. $back_prod = isset($_POST['back_prod']) ? $_POST['back_prod'] : "";
  57. $prod_id_f =substr($back_prod,strpos($back_prod, 'm')+1, strpos($back_prod, 'p')-2);
  58. $sql_price_f = "select cus_price from opera_product_price where prod_id =".$prod_id_f;
  59. $result_price_f = $pdo->query($sql_price_f);
  60. $row_f = $result_price_f->fetchAll(PDO::FETCH_ASSOC);
  61. $price_list_f =$prod_id_f.','.$row_f['0']['cus_price'];
  62. }
  63. //echo 111;die;
  64. $sql = "call sp_make_order(" . $userid . ",'" . $myprod . "','" . $mycustomer . "'," . $order_from_org_id . ",'" . $outside_order_id . "')";
  65. if ($ifcheck == 0) {//不是含有返程的
  66. writeLog("sp_make_order---san: " . $sql);
  67. $rowset = create_order($sql,$price_list);
  68. if(!isset($rowset[0]['order_id'])){
  69. echo json_encode(array('code'=>1,'info'=>$sql));die;
  70. }
  71. $order_id = $rowset[0]['order_id'];
  72. //更改支付方式为 授信支付
  73. //根据订单号查找订单详情
  74. $sql = "select a.order_id,a.create_time,a.order_price,a.order_pay_main_id,a.customer_name,a.customer_mobile,count(b.order_id) as num,b.PROD_START_STATION_DATE as run_date,b.PROD_START_STATION_TIME as run_time,b.PROD_START_STATION_AREA_NAME AS start_area,b.PROD_END_STATION_AREA_NAME AS end_area,b.PROD_START_STATION_RES_NAME AS start_res,b.PROD_END_STATION_RES_NAME AS end_res from order_main a,order_main b where a.order_id = b.PARENT_ORDER_ID and a.order_id = " . $order_id . " group by a.order_id";
  75. $result = $pdo->query($sql);
  76. $order_info = $result->fetchAll(PDO::FETCH_ASSOC);
  77. if($top_org_id == 0 || ( isset($_COOKIE['login_type']) && $_COOKIE['login_type'] == 1 ) ){
  78. $sql_pay = "update order_pay_detail set pay_type_id_1 =278 where pay_main_id = ".$order_info[0]['order_pay_main_id'];
  79. $sql_order_status = "update order_main set order_status =145 where order_id= ".$order_id." or parent_order_id=".$order_id;
  80. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id." or parent_order_id=".$order_id;
  81. $result=$pdo->exec($sql_cancel);
  82. }else{
  83. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id." or parent_order_id=".$order_id;
  84. $result=$pdo->exec($sql_cancel);
  85. $sql_pay = "update order_pay_detail set pay_type_id_1 =275 where pay_main_id = ".$order_info[0]['order_pay_main_id'];
  86. $sql_order_status = "update order_main set order_status =146,ORDER_PAY_STATUS=1 where order_id= ".$order_id." or parent_order_id=".$order_id;
  87. }
  88. $result=$pdo->exec($sql_order_status);
  89. // var_dump($sql_order_status);die;
  90. //$result->closeCursor();
  91. $result=$pdo->exec($sql_pay);
  92. //$result->closeCursor();
  93. // $result->closeCursor();
  94. if (is_array($rowset) && $rowset[0]['errcode'] == 0 && SEND_MESSAGE == true && $top_org_id !=0) { //单程票订票成功
  95. send_msg($rowset[0]['order_id']);
  96. }
  97. $data['ifback'] =0;
  98. $data['ifdisney'] =0;
  99. $data['code'] = $rowset[0]['errcode'];
  100. $data['info'] = $rowset[0]['errinfo'];
  101. $data['order_id'] = $rowset[0]['order_id'];
  102. $data['go_list'] = $order_info[0];
  103. $data['go_list']['site_type'] = "普通票";
  104. $data['shengyu_time'] = strtotime($order_info[0]['create_time'])+600-time();
  105. echo json_encode($data);
  106. } else {
  107. $rowset = create_order($sql,$price_list);
  108. if(!$rowset){
  109. echo json_encode(array('code'=>1,'info'=>'该站点未开售'));die;
  110. }
  111. if (is_array($rowset) && $rowset[0]['errcode'] == 0 && SEND_MESSAGE == true) {//返程---单程票订票成功
  112. $order_id_go = $rowset[0]['order_id'];
  113. //根据订单号查找订单详情PROD_START_STATION_DATE as run_date,PROD_START_STATION_TIME as run_time,
  114. $sql = "select a.order_id,a.create_time,a.order_price,a.order_pay_main_id,a.customer_name,a.customer_mobile,count(b.order_id) as num,b.PROD_START_STATION_DATE as run_date,b.PROD_START_STATION_TIME as run_time,b.PROD_START_STATION_AREA_NAME AS start_area,b.PROD_END_STATION_AREA_NAME AS end_area,b.PROD_START_STATION_RES_NAME AS start_res,b.PROD_END_STATION_RES_NAME AS end_res from order_main a,order_main b where a.order_id = b.PARENT_ORDER_ID and a.order_id = " . $order_id_go . " group by a.order_id";
  115. $result = $pdo->query($sql);
  116. $order_info_go = $result->fetchAll(PDO::FETCH_ASSOC);
  117. if($top_org_id == 0 || isset($_COOKIE['login_type'])){
  118. $sql_pay = "update order_pay_detail set pay_type_id_1 =278 where pay_main_id = ".$order_info_go[0]['order_pay_main_id'];
  119. $sql_order_status = "update order_main set order_status =145 where order_id= ".$order_id_go." or parent_order_id=".$order_id_go;
  120. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id_go." or parent_order_id=".$order_id_go;
  121. $result=$pdo->exec($sql_cancel);
  122. }else{
  123. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id_go." or parent_order_id=".$order_id_go;
  124. $result=$pdo->exec($sql_cancel);
  125. $sql_pay = "update order_pay_detail set pay_type_id_1 =275 where pay_main_id = ".$order_info_go[0]['order_pay_main_id'];
  126. $sql_order_status = "update order_main set order_status =146,ORDER_PAY_STATUS=1 where order_id= ".$order_id_go." or parent_order_id=".$order_id_go;
  127. }$pdo->exec($sql_pay);
  128. $pdo->exec($sql_order_status);
  129. //当前时间减10分钟
  130. $data['shengyu_time'] = strtotime($order_info_go[0]['create_time'])+600-time();
  131. // $data['code'] = $rowset[0]['errcode'];
  132. // $data['info'] = $rowset[0]['errinfo'];
  133. $data['order_id'] = $rowset[0]['order_id'];
  134. $data['go_list'] = $order_info_go[0];
  135. $data['go_list']['site_type'] = "普通票";
  136. // $data['code_f'] = "";
  137. // $data['info_f'] = "";
  138. // $data['order_id_f'] = "";
  139. $sql_f = "call sp_make_order(" . $userid . ",'" . $back_prod . "','" . $mycustomer . "'," . $order_from_org_id . ",'" . $outside_order_id . "')";
  140. writeLog('fan_dan_success sql_f========'.$sql_f);
  141. $rowset_f = create_order($sql_f,$price_list_f);
  142. //..判断返程票是否成功,若不成功,则去程订单
  143. if (is_array($rowset_f) && $rowset_f[0]['errcode'] == 0 && SEND_MESSAGE == true) {//返程--返程票订票成功
  144. $order_id_back = $rowset_f[0]['order_id'];
  145. //根据订单号查找订单详情
  146. $sql = "select a.order_id,a.create_time,a.order_price,a.order_pay_main_id,a.customer_name,a.customer_mobile,count(b.order_id) as num,b.PROD_START_STATION_DATE as run_date,b.PROD_START_STATION_TIME as run_time,b.PROD_START_STATION_AREA_NAME AS start_area,b.PROD_END_STATION_AREA_NAME AS end_area,b.PROD_START_STATION_RES_NAME AS start_res,b.PROD_END_STATION_RES_NAME AS end_res from order_main a,order_main b where a.order_id = b.PARENT_ORDER_ID and a.order_id = " . $order_id_back . " group by a.order_id";
  147. $result = $pdo->query($sql);
  148. $order_info_back = $result->fetchAll(PDO::FETCH_ASSOC);
  149. if($top_org_id == 0 || ( isset($_COOKIE['login_type']) && $_COOKIE['login_type'] == 1) ){
  150. $sql_pay = "update order_pay_detail set pay_type_id_1 =278 where pay_main_id = ".$order_info_back[0]['order_pay_main_id'];
  151. $sql_order_status = "update order_main set order_status =145 where order_id= ".$order_id_back." or parent_order_id=".$order_id_back;
  152. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id_back." or parent_order_id=".$order_id_back;
  153. $result=$pdo->exec($sql_cancel);
  154. }else{
  155. $sql_cancel = "update order_main set ORDER_BOOK_STATUS =1 where order_id= ".$order_id_back." or parent_order_id=".$order_id_back;
  156. $result=$pdo->exec($sql_cancel);
  157. $sql_pay = "update order_pay_detail set pay_type_id_1 =275 where pay_main_id = ".$order_info_back[0]['order_pay_main_id'];
  158. $sql_order_status = "update order_main set order_status =146,ORDER_PAY_STATUS=1 where order_id= ".$order_id_back." or parent_order_id=".$order_id_back;
  159. }
  160. $pdo->exec($sql_pay);
  161. $pdo->exec($sql_order_status);
  162. $data['ifback'] = 1;
  163. $data['ifdisney'] =0;
  164. $data['code'] = $rowset_f[0]['errcode'];
  165. $data['info'] = $rowset_f[0]['errinfo'];
  166. $data['order_id_f'] = $rowset_f[0]['order_id'] ;
  167. $data['back_list'] = $order_info_back[0];
  168. $data['back_list']['site_type'] = "普通票";
  169. writeLog('fan_fan_success');
  170. //发两条短信
  171. if ($top_org_id !=0) { //单程票订票成功
  172. send_msg($rowset[0]['order_id']);
  173. send_msg($rowset_f[0]['order_id']);
  174. }
  175. //订票成功写入 往返订单关系表
  176. $to_id = $rowset[0]['order_id'];
  177. $back_id = $rowset_f[0]['order_id'];
  178. $sql_conn = "insert into to_from values(NULL,".$to_id.",".$back_id.",'". date('Y-m-d h:i:s', time())."')";
  179. $pdo= conn();
  180. $pdo->exec($sql_conn);
  181. echo json_encode($data);exit();
  182. } else {//如果返程票订票不成功,则取消单程票
  183. $sql_cancel = "CALL SP_CANCEL_ORDER(" . $userid . "," . $rowset[0]['order_id'] . ")";
  184. writeLog('fan_dan_faile_sql_cancel======'.$sql_cancel);
  185. $pdo_cancel = conn();
  186. $result_cancel = $pdo_cancel -> query($sql_cancel);
  187. $rowset_cancel = $result_cancel -> fetchAll(PDO::FETCH_ASSOC);
  188. $result_cancel -> closeCursor();
  189. //取消单程不发短信,但要写入取消订单原因
  190. $res_content = get_msg_info($rowset[0]['order_id']);
  191. // $tel = isset($res_content[1])?$res_content[1]:"";
  192. $content = $rowset_f[0]['errinfo'] . "-订单已取消";
  193. $comment_type = 0;
  194. $comment_text = "";
  195. $sql1 = "CALL HT_ADD_MSG_COMMENT(2,'addmsg'," . $rowset[0]['order_id'] . "," . $comment_type . ",'" . $comment_text . "','" . $tel . "','" . $content . "','" . date("Y-m-d H:i:s") . "',0)";
  196. $result1 = $pdo_cancel -> query($sql1);
  197. $rowset1 = $result1 -> fetchAll(PDO::FETCH_ASSOC);
  198. $result1 -> closeCursor();
  199. writeLog("order_list.php HT_ADD_MSG_COMMENT()::" . $sql1);
  200. $data['code_f'] = $rowset_f[0]['errcode'];
  201. $data['info_f'] = $rowset_f[0]['errinfo'];
  202. $data['order_id_f'] = isset($rowset_f[0]['order_id']) ? $rowset_f[0]['order_id'] : "";
  203. echo json_encode($data);exit();
  204. }
  205. }
  206. }
  207. function create_order($sql,$price_list) {
  208. $pdo = conn();
  209. if (is_object($pdo)) {
  210. $result = $pdo -> query($sql);
  211. if(!$result){
  212. echo json_encode(array('code'=>1,'info'=>'可售资源不足'));die;
  213. }
  214. // echo json_encode(array('aa'=>$sql));die;
  215. $rowset_create = $result -> fetchAll(PDO::FETCH_ASSOC);
  216. $result -> closeCursor();
  217. writeLog('下订单成功');
  218. writeLog(json_encode($rowset_create));
  219. if (is_array($rowset_create) && $rowset_create[0]['errcode'] == 0 && SEND_MESSAGE == true) {
  220. //下订单成功再修改价格
  221. writeLog('change_price.php' . json_encode($_POST));
  222. $sql_up_price = "call SP_CHANGE_PRICE(" . $rowset_create[0]['order_id'] . ",'" . $price_list . "')";
  223. //$sql="update order_main set order_price ='".$price_arr[$k]."' where PROD_ID=".$v." and PARENT_ORDER_ID=".$ordid." and RUN_ID>0";
  224. $result_up_price = $pdo -> query($sql_up_price);
  225. $rowset_up_price = $result_up_price -> fetchAll(PDO::FETCH_ASSOC);
  226. writeLog("change_price.php sql:: " . $sql_up_price . "::rowset ::" . json_encode($rowset_up_price));
  227. $result_up_price -> closeCursor();
  228. }
  229. }
  230. return $rowset_create;
  231. }
  232. //发短信
  233. function send_msg($ORDER_ID) {
  234. $send_pdo=conn();
  235. $order_id = $ORDER_ID;
  236. $url='http://cs1.zhizhuchuxing.com/api/msg/order-send-msg';
  237. $sendInfo=array();
  238. $sendInfo['order_id']=$order_id;
  239. $sendInfo['msg_type']='sfx';
  240. $res_content = httpRequest($url,$sendInfo);
  241. //insert order extra
  242. $hotelPrice = isset($_GET['hotelPrice']) ? $_GET['hotelPrice'] : "";
  243. $doorPrice = isset($_GET["doorPrice"]) ? $_GET["doorPrice"] : "";
  244. if ($hotelPrice != "" || $doorPrice != "") {
  245. $sqlInsert = " INSERT INTO order_extra_info (order_id,hotel_price,gate_price) VALUE(" . $ORDER_ID . ",'" . $hotelPrice . "','" . $doorPrice . "') ";
  246. writeLog("insert extra info: " . $sqlInsert);
  247. $result = $send_pdo -> exec($sqlInsert);
  248. }
  249. }
  250. //..短信模板-改为17:30后OK,当天下单也OK
  251. function get_msg_info($ORDER_ID) { //不需要支付
  252. $msg_pdo = conn();
  253. $msg_sql = "CALL SP_GET_MESSAGE_TEMPLATE('" . $ORDER_ID . "')";
  254. $content = '';
  255. if (is_object($msg_pdo)) {
  256. $msg_result = $msg_pdo -> query($msg_sql);
  257. $i = 1;
  258. $data = array();
  259. if ($msg_result) {
  260. $data['code'] = "0";
  261. $data['info'] = "";
  262. do {
  263. $row = $msg_result -> fetchAll(PDO::FETCH_ASSOC);
  264. if ($i == 1) {
  265. $data['seat'] = isset($row) ? $row : array();
  266. } else if ($i == 2) {
  267. $data['run_info'] = isset($row) ? $row : array();
  268. } else if ($i == 3) {
  269. $data['driver'] = isset($row) ? $row : array();
  270. } else if($i==4){
  271. $data['dsn_prod']=isset($row) ? $row : array();
  272. }else if($i==5){
  273. $data['zhou_su_prod']=isset($row) ? $row : array();
  274. }
  275. $i++;
  276. } while($msg_result->nextRowset());
  277. }
  278. $json_obj = json_decode(json_encode($data), TRUE);
  279. $seat = isset($json_obj['seat'][0]) ? $json_obj['seat'][0] : array();
  280. $run_info = isset($json_obj['run_info'][0]) ? $json_obj['run_info'][0] : array();
  281. $driver = isset($json_obj['driver'][0]) ? $json_obj['driver'][0] : array();
  282. $dsn_prod = isset($json_obj['dsn_prod'])?$json_obj['dsn_prod']:array();
  283. $zhou_su_prod=isset($json_obj['zhou_su_prod'])?$json_obj['zhou_su_prod']:array();
  284. $bus_res_id = isset($json_obj['driver'][0]) ? $json_obj['driver'][0]["bus_res_id"] : 0;
  285. $short_url = false;
  286. $ticket_url = TICKET_QR_URL.$ORDER_ID;
  287. $short_url = sinaShortenUrl($ticket_url);
  288. $extra_message = "";
  289. if( $short_url != false ) {
  290. $extra_message = "点击以下链接获取您的电子票扫码上车:{$short_url}";
  291. }
  292. //出票成功
  293. // $content = "您预订的{出发日期 出发时间}{出发地}-{目的地}{票种名}{张数}张,已购票成功。乘车订单号为{订单号},请凭订单号或绑定微信(微信服务号“蜘蛛出行”)扫码上车,车牌号{车牌号},司机电话{司机姓司机电话}。";
  294. // 得到明天的时间
  295. date_default_timezone_set('PRC');
  296. //解决时区问题
  297. $tomorrow = date("Y-m-d", strtotime("+1 day"));
  298. $now_time = date('H:i:s', time());
  299. //判断当前时间是否在17:30:00之后
  300. $cur_date = date('Y-m-d', time());
  301. //迪士尼特殊情况parent_prod_id
  302. // $dsn_arr_prod = array(152752, 152759, 152763, 152770, 152777, 152784, 152791, 152801, 152808, 152815, 152822, 152832, 152842, 152852, 152859, 152866, 152873, 152877, 152884, 152891, 152898, 152905, 152915, 152922, 152929, 152936, 152946, 152956, 152966, 152973, 152980, 152990, 153003, 153016, 153023, 153033, 153034, 153044, 153057, 153070, 153083, 153090, 153100, 153110);
  303. $dsn_arr_prod = array(); //用来保存迪士尼产品的prod_id
  304. foreach($dsn_prod as $temp){
  305. $dsn_arr_prod[]=$temp['prod_id'];
  306. }
  307. $zhou_su_arr_prod = array();
  308. foreach($zhou_su_prod as $temp){
  309. $zhou_su_arr_prod[]=$temp['prod_id'];
  310. }
  311. $new_message_array = array(448569,448568);
  312. $new_message_array3 = array(450517,450522);
  313. if( in_array( $run_info['parent_prod_id'], $new_message_array ) ) {
  314. $content = "您预订的{出发日期}{出发地}-{目的地}{票种名}{张数}张,已成功出票,请在{出发时间}前十五分钟到达{上车站点}。出行前一天下午的18:00左右将会有导游和您联系,预祝您旅途愉快。";
  315. } else if( in_array( $run_info['parent_prod_id'], $new_message_array3 ) ) {
  316. if( $run_info['parent_prod_id'] == 450517 ) {
  317. $address_txt = "上车地点:吴山广场西侧河坊巷8号(吴山广场旅游集散中心候车室); 上车方式:请至吴山广场旅游集散中心候车室服务台,凭预定姓名和手机号码上车。";
  318. } else {
  319. $address_txt = "上车地点:普陀城北长途客运中心;取票方式:请提前到达(学运路18号)普陀城北长途客运中心候车大厅服务台报预订名字和电话取票。";
  320. }
  321. $content = "您已成功预定{出发日期} {出发时间} {出发地}-{目的地}汽车票{张数}张(请最晚提前10分钟到达)。{$address_txt}紧急电话:15888866564。";
  322. } else if (($now_time > "18:30:00" && $run_info['start_date'] == $tomorrow) || $cur_date == $run_info['start_date']) {//17:30之后的订单或者下单时间为今天出行为今天下午 发送短信模板
  323. // if("18:30:00">"17:30:00" && $run_info['start_date']==$tomorrow){ //17:30之后的订单 发送短信模板
  324. // $content = "您预订的{出发日期 出发时间}{出发地}-{目的地}{票种名}{张数}张,已购票成功。乘车订单号为{订单号},请凭订单号或绑定微信(微信服务号“蜘蛛出行”)扫码上车,车牌号{车牌号},司机电话{司机姓司机电话}。";
  325. $content = "订单号{订单号},{出发地}—{目的地}标准票{张数}张将于{出发日期} {出发时间}准点发车。车牌号{车牌号},司机电话{司机姓司机电话},请提前10分钟抵达上车地点:{上车站点详细地址}并点开电子车票{$short_url}进行验票。如有疑问请拨打客服电话021-33280519。";
  326. } else {
  327. //$content = "您预订的{出发日期}{出发地}-{目的地}{票种名}{张数}张,已成功出票,请在{出发时间}前三十分钟到达{上车站点}。您的乘车订单号为{订单号},请凭短信订单号乘车。出行前一天下午的18:30会将车牌号与司机电话发送给您,预祝您旅途愉快。";
  328. $content = "订单号{订单号},{出发日期} {出发时间}{出发地}—{目的地}标准票{张数}张预定成功。发车前一天19点会短信通知您车牌号及司机电话,如未收到短信请拨打客服电话021-33280519。";
  329. }
  330. $new_message_array4 = array(450588,450589);
  331. if( in_array( $run_info['parent_prod_id'], $new_message_array4 ) ) {
  332. $content .= "紧急联系电话:18100158199。";
  333. }
  334. $new_message_array5 = array(451437,451438);
  335. if( in_array( $run_info['parent_prod_id'], $new_message_array5 ) ) {
  336. $content .= "司机会提前与您联系,如有疑问,请联系021-33280578 。";
  337. }
  338. $new_message_array5 = array(451440,451441);
  339. $new_message_array6 = array(448780,450008,448781);
  340. if( in_array( $run_info['parent_prod_id'], $new_message_array5 ) ) {
  341. $content = "订单号{订单号},{出发日期} {出发时间}{上车站点}—{目的地}标准票{张数}张预定成功。发车前一天19点会短信通知您车牌号及司机电话,如未收到短信请拨打客服电话021-33280519。";
  342. } else if( in_array( $run_info['parent_prod_id'], $new_message_array6 ) ) {
  343. $content = "订单号{订单号},{出发日期} {出发时间}{上车站点}—{目的地}标准票{张数}张预定成功。发车前一天19点会短信通知您乘车信息,如未收到短信请拨打客服电话021-33280519。";
  344. }
  345. // $content = "您预订的{出发日期 出发时间}{出发地}-{目的地}{票种名}{张数}张,已购票成功。乘车订单号为{订单号},请凭订单号或绑定微信(微信服务号“蜘蛛出行”)扫码上车。";
  346. if ($seat) {
  347. $seat_x = isset($seat['seat_x']) ? $seat['seat_x'] : "";
  348. $seat_y = isset($seat['seat_y']) ? $seat['seat_y'] : "";
  349. $seat_name = isset($seat['seat_name']) ? $seat['seat_name'] : "";
  350. $order_main_id = isset($seat['order_main_id']) ? $seat['order_main_id'] : "";
  351. } else {
  352. }
  353. if ($run_info) {
  354. $order_count = $run_info['order_count'];
  355. $start_date = $run_info['start_date'];
  356. $start_time = $run_info['start_time'];
  357. $parent_order_id = $run_info['parent_order_id'];
  358. $end_date = $run_info['end_date'];
  359. $start_area = $run_info['start_area'];
  360. $end_area = $run_info['end_area'];
  361. $res_name = $run_info['res_name'];
  362. $parent_prod_id = $run_info['parent_prod_id'];
  363. $prod_name = $run_info['prod_name'];
  364. $prod_name = "标准票";
  365. $customer_name = $run_info['customer_name'];
  366. $customer_mobile = $run_info['customer_mobile'];
  367. $start_end_date = $start_date . "," . $start_time;
  368. $start_station_address = $run_info['start_station_address'];
  369. if( $parent_prod_id == 450504 && $start_date >= "2017-01-27" && $start_date <= "2017-02-02" ) {
  370. $res_name = "迪士尼唐老鸭P停车场";
  371. $start_station_address = "上海迪士尼度假区迪士尼唐老鸭P停车场";
  372. }
  373. $content = str_replace("{出发日期}", $start_date, $content);
  374. $content = str_replace("{出发时间}", $start_time, $content);
  375. $content = str_replace("{上车站点}", $res_name, $content);
  376. $content = str_replace("{出发地}", $start_area, $content);
  377. $content = str_replace("{目的地}", $end_area, $content);
  378. $content = str_replace("{票种名}", $prod_name, $content);
  379. $content = str_replace("{张数}", $order_count, $content);
  380. $content = str_replace("{订单号}", $ORDER_ID, $content);
  381. $content = str_replace("{上车站点详细地址}", $start_station_address, $content);
  382. } else {
  383. $content = str_replace("{出发日期}", "", $content);
  384. $content = str_replace("{出发时间}", "", $content);
  385. $content = str_replace("{出发地}", "", $content);
  386. $content = str_replace("{目的地}", "", $content);
  387. $content = str_replace("{票种名}", "", $content);
  388. $content = str_replace("{张数}", "", $content);
  389. $content = str_replace("{订单号}", "", $content);
  390. $content = str_replace("{上车站点详细地址}", "", $content);
  391. }
  392. if ($driver) {
  393. $bus_no = isset($driver['bus_no']) ? $driver['bus_no'] : "";
  394. $driver_name = isset($driver['driver_name']) ? $driver['driver_name'] : "";
  395. $driver_mobile = isset($driver['driver_mobile']) ? $driver['driver_mobile'] : "";
  396. if ($bus_no == "") {
  397. $content = str_replace(",车牌号{车牌号}", "", $content);
  398. } else {
  399. $content = str_replace("{车牌号}", $bus_no, $content);
  400. }
  401. if ($driver_name == "") {
  402. $content = str_replace(",司机电话{司机姓司机电话},", "。", $content);
  403. } else {
  404. $driver_xing = mb_substr($driver_name, 0, 1, 'utf-8');
  405. $driver_name_mobile = $driver_xing . $driver_mobile;
  406. $content = str_replace("{司机姓司机电话}", $driver_name_mobile, $content);
  407. }
  408. } else {
  409. $content = str_replace("车牌号{车牌号},", "", $content);
  410. $content = str_replace("司机电话{司机姓司机电话},", "", $content);
  411. }
  412. /*
  413. if( $now_time < "18:30:00" ) {
  414. //判断是不是苏州或周庄
  415. // 判断如果不是迪士尼的票就不发短信
  416. if (!in_array($run_info['parent_prod_id'], $dsn_arr_prod) && !in_array($run_info['parent_prod_id'], $zhou_su_arr_prod)) {
  417. return array("", "-1", "不是迪士尼、苏州、周庄的票,目前不发送短信");
  418. }
  419. }*/
  420. return array(isset($customer_name) ? $customer_name : "", isset($customer_mobile) ? $customer_mobile : "", isset($content) ? $content : "短信错误,联系客服!!!");
  421. }
  422. }