|
- <?php
- /*
- Author:XM
- Compeny:Spiders Travel
- */
- //酒店订单状态修改 ,确认、支付、通知、安排
- require_once __DIR__ . '/../Common/Mysql.php';
- if (ALLOW_ORIGIN)
- header("Access-Control-Allow-Origin:*");
- $order_id = isset($_GET['order_id']) ? $_GET['order_id'] : '';
- $method = isset($_GET['method']) ? $_GET['method'] : '';
- $comment_code = isset($_GET['comment_code']) ? $_GET['comment_code'] : '';
- $comment_text = isset($_GET['comment_text']) ? $_GET['comment_text'] : '';
- $pay_type = isset($_GET['pay_type']) ? (empty($_GET['pay_type']) ? 0 : $_GET['pay_type']) : 0;
- $serial_number = isset($_GET['serial_number']) ? $_GET['serial_number'] : '';
-
- $comment_type = isset($_GET['comment_type']) ? (empty($_GET['comment_type']) ? 0 : $_GET['comment_type']) : 0;
- if ($order_id == '' || $method == '') {
- echo json_encode(array("errcode" => 2, "errinfo" => "参数不能为空"));
- exit ;
- }
- if ($method == 'pay' && $pay_type == 0) {
- echo json_encode(array("errcode" => 2, "errinfo" => "参数不能为空"));
- exit ;
- } else if ($method == 'confirmnum' && ($comment_code == '' || $comment_text == '')) {
-
- echo json_encode(array("errcode" => 2, "errinfo" => "参数不能为空"));
- exit ;
- } else if ($method == 'addcomment' && ($comment_text == '')) {
- echo json_encode(array("errcode" => 2, "errinfo" => "参数不能为空"));
- exit ;
- }
- $userid = getUserId();
- if ($userid === false) {
- echo json_encode(array("errcode" => 1, "errinfo" => "用户未登录"));
- exit ;
- }
- $pdo = conn();
- if (is_object($pdo)) {
- if ($method == 'addcomment') {
- $sql = "CALL HT_ADD_MSG_COMMENT(" . $userid . ",'" . $method . "'," . $order_id . "," . $comment_type . ",'" . $comment_text . "','','','',0)";
- $result = $pdo -> query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- writeLog("hotel_order_status.php HT_ADD_MSG_COMMENT()::" . $sql);
- } else {
- $sql = "CALL HT_ORDER_STATUS_MODIFY(" . $userid . ",'" . $method . "'," . $order_id . ",'" . $comment_code . "','" . $comment_text . "'," . $pay_type . ",'" . $serial_number . "')";
- writeLog('hotel_order_status.php ::' . $sql);
- $result = $pdo -> query($sql);
- $rowset = $result -> fetchAll(PDO::FETCH_ASSOC);
- $result -> closeCursor();
- writeLog(json_encode($rowset));
- if (is_array($rowset[0]) && $rowset[0]['code'] == 0 && SEND_MESSAGE == true) {
- $rowset_order_status=$rowset[0]['ORDER_STATUS'];
- if($rowset_order_status==145 || $rowset_order_status==198 || $rowset_order_status==199 || $rowset_order_status==201 ||$rowset_order_status==238 || $rowset_order_status==148){
-
- $res_content=get_msg_info($order_id);
- $name=$res_content[0];
- $tel=$res_content[1];
- $content=$res_content[2];
- // $content = "单号:" . $order_id . ',订单状态变更为' . $order_status . "随机数" . rand(1, 10000);
- writeLog("短信模板内容:【" . $content . "】");
- $response = sendTelMessage($tel, $name, $content, $order_id);
- writeLog(json_encode($response));
- $send_success = (int)$response;
- $sql1 = "CALL HT_ADD_MSG_COMMENT(" . $userid . ",'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("hotel_order_status.php HT_ADD_MSG_COMMENT()::" . $sql1);
- }
-
- }
- //unset($rowset[0]['CUSTOMER_NAME']);
- //unset($rowset[0]['CUSTOMER_MOBILE']);
- writeLog("hotel_order_status.php HT_ORDER_STATUS_MODIFY()::" . $sql);
- }
- }
- function get_msg_info($order_id) {
- $msg_sql = "CALL HT_GET_MESSAGE_TEMPLATE(" . $order_id . ");";
- $msg_pdo = conn();
- $msg_result = $msg_pdo -> query($msg_sql);
- $msg_re_da = array();
- do {
- $msg_rowset = $msg_result -> fetchAll(PDO::FETCH_ASSOC);
- if ($msg_rowset) {
- $msg_re_da[] = $msg_rowset;
- }
- } while($msg_result->nextRowset());
- $data['code'] = "0";
- $data['info'] = "";
-
- if (!$msg_re_da) {
- $data['code'] = "-1";
- $data['info'] = "没有查询到结果";
- if (is_array($data)) {
- echo json_encode($data);
- exit();
- }
- }
- $data['message_info'] = isset($msg_re_da[1]) ? $msg_re_da[1] : array();
- if (!isset($msg_re_da[1])) {
- $data['code'] = "-1";
- $data['info'] = "失败";
- if (is_array($data)) {
- echo json_encode($data);
- exit();
- }
- }
- $data['days'] = $msg_re_da[0][0]['days'];
- $data['all_price'] = $msg_re_da[0][0]['all_price'];
- $data['message_info'] = $msg_re_da[1];
- writeLog("get_msg_info:::".json_encode($data));
- $json_obj = json_decode(json_encode($data), TRUE);
- $message_info = $json_obj['message_info'];
- //$msg_customer_name=$message_info[0]['customer_name'];//用户姓名
- $name = $message_info[0]['customer_name'];
- $tel = $message_info[0]['customer_mobile'];
- $order_status = $message_info[0]['order_status'];
- //入住日期-主订单的入住日期=子订单第一个的日期
- $check_in_date = $message_info[0]['check_in_date'];
-
- //产品名称-所有日期的产品名称相同
- $prod_name = $message_info[0]['prod_name'];
- $ht_rooms = $message_info[0]['ht_rooms'];
- //酒店间数 -1表示没有
- for ($i = 0, $m = count($message_info); $i < $m; $i++) {
- $tm_day = $message_info[$i]['ht_rooms'];
- if ($ht_rooms == $tm_day) {
- continue;
- } else {
- $ht_rooms = "-1";
- break;
- }
- }
-
- $days = $json_obj['days'];
- //预订天数
- $all_price = $json_obj['all_price'];
- //总价格
- $breakfast = $message_info[0]['breakfast'];
- //早餐
- for ($i = 0, $m = count($message_info); $i < $m; $i++) {
- $tm_breakfast = $message_info[$i]['breakfast'];
-
- if ($breakfast == $tm_breakfast) {
- continue;
- } else {
- $breakfast = "-1";
- break;
- }
- }
-
- $content = "";
- //判断order_status的值
- if ($order_status == "145") {//待支付
- $content = "{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),订单已生成,请尽快支付以免影响您的出行。";
- } else if ($order_status == "198") {//待确定
- $content = "已支付,待确认:{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),房间将在2小时内确认,请耐心等待确认信息。";
- } else if ($order_status == "199") {//待通知
- $content = "已确认:{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),已安排房间。";
- } else if ($order_status == "201") {//退改中
- $content = "{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),酒店方确认当日无房,正在安排退款,请耐心等待。联系客服:021-33280578。";
- } else if ($order_status == "238") {//已退单
- $content = "退款成功:{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),酒店方确认当日无房,已成功退款,请留意银行相关退款信息。联系客服:021-33280578。";
- } else if ($order_status == "148") {
- $content = "已取消:{customer_name}预订的{check_in_date}{prod_name},{ht_rooms}间{days}晚,总价{order_price}({breakfast}),已取消。联系客服:021-33280578。";
- } else {
- $content = "短信模板错误---严重错误:500当前状态".$order_status;
- writeLog($content);
- exit();
- }
- $content = str_replace("{customer_name}", $name, $content);
- $content = str_replace("{check_in_date}", $check_in_date, $content);
- $content = str_replace("{prod_name}", $prod_name, $content);
- //判断房间数是否该显示
- if ($ht_rooms != "-1") {
- $content = str_replace("{ht_rooms}", $ht_rooms, $content);
- } else {
- $content = str_replace("{ht_rooms}间", "", $content);
- }
- $content = str_replace("{days}", $days, $content);
- $content = str_replace("{order_price}", $all_price, $content);
- //判断早餐是否该显示
- if ($breakfast != "-1") {
- $content = str_replace("{breakfast}", $breakfast, $content);
- } else {
- $content = str_replace("({breakfast})", "", $content);
- }
- return array($name,$tel,$content);
- }
-
- if (is_array($rowset[0])) {
- writeLog("hotel_order_status.php HT_ORDER_STATUS_MODIFY()::" . json_encode($rowset[0]));
- echo json_encode($rowset[0]);
- }
- exit ;
|