コード例 #1
0
 public function setTableAttributes()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $json = array();
     $json['status_code'] = 1;
     //        param, table id, table number, availabilty, sama qr(dalam base 64)
     $id_table = isset($_POST['id_table']) ? addslashes($_POST['id_table']) : "";
     //     echo $id_table;
     if (!$id_table) {
         $json['status_code'] = 0;
         $json['status_message'] = "No ID Table Found";
         echo json_encode($json);
         die;
     }
     $table_number = isset($_POST['table_number']) ? addslashes($_POST['table_number']) : "";
     if (!$table_number) {
         $json['status_code'] = 0;
         $json['status_message'] = "No Table number Found";
         echo json_encode($json);
         die;
     }
     $availability = isset($_POST['availability']) ? addslashes($_POST['availability']) : "0";
     if (!$availability) {
         $json['status_code'] = 0;
         $json['status_message'] = "No availability Found";
         echo json_encode($json);
         die;
     }
     $QR = isset($_POST['QR']) ? addslashes($_POST['QR']) : "";
     if (!$QR) {
         $json['status_code'] = 0;
         $json['status_message'] = "No QR Found";
         echo json_encode($json);
         die;
     }
     $objQR = new QRModel();
     $arrQR = $objQR->getWhere("textQR='{$QR}' AND status = '0'");
     Generic::checkCountWithMsg($arrQR, "QR has been used!");
     $objTable = new MasterTableModel();
     $arrTable = $objTable->getWhere("id_table='{$id_table}'");
     Generic::checkCountWithMsg($arrTable, "Table not found!");
     $arrTable[0]->table_number = $table_number;
     $arrTable[0]->QR = $QR;
     $arrTable[0]->availability = "1";
     $arrTable[0]->load = 1;
     $arrTable[0]->save();
     $arrQR[0]->status = "1";
     $arrQR[0]->load = "1";
     $arrQR[0]->save();
     $json['status_code'] = 1;
     $json['results'] = Mastertable::getTableByTableID($arrTable[0]->id_table);
     echo json_encode($json);
     die;
 }
コード例 #2
0
 public static function forceDoneOrder($orderId)
 {
     $order = new MasterOrderModel();
     $order->getByID($orderId);
     $order->status_progress = Keys::$STATUS_PROGRESS_VOID;
     $order->save();
     $o = new OrderDetailModel();
     $orderDetails = $o->getWhere("id_order='{$orderId}'");
     foreach ($orderDetails as $orderDetail) {
         $orderDetail->load = 1;
         $orderDetail->status_progress = Keys::$STATUS_PROGRESS_VOID;
         $orderDetail->save();
     }
     $resto = new MasterRestaurantModel();
     $resto->getByID($order->id_restaurant);
     if ($order->id_table != 0) {
         Mastertable::clearTable($order->id_table);
     }
     if ($order->id_user != 0) {
         Util::pushNotifyOrderVoided($orderId);
         die;
     }
 }
コード例 #3
0
 public function scandinein()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $json = array();
     $json['status_code'] = 1;
     $id_user = isset($_GET['id_user']) ? addslashes($_GET['id_user']) : "";
     if (!$id_user) {
         Generic::errorMsg("Please login!");
     }
     if (!User::checkUserID($id_user)) {
         Generic::errorMsg("ID User not found!");
     }
     $QR = isset($_GET['QR']) ? addslashes($_GET['QR']) : "";
     if (!$QR) {
         Generic::errorMsg("No QR found!");
     }
     $id_order = isset($_GET['id_order']) ? addslashes($_GET['id_order']) : "";
     if (!id_order) {
         Generic::errorMsg("id_order not found!");
     }
     if (!MasterOrder::isIdorderValid($id_order)) {
         Generic::errorMsg("id_order not found!");
     }
     $objTableHlp = Mastertable::getTableBYQR($QR);
     $objTable = new MasterTableModel();
     $objTable->getByID($objTableHlp[0]->id_table);
     $objTable->appOrder = "1";
     $objTable->id_order = $id_order;
     $objTable->status = "0";
     $objTable->waitingOrder = "2";
     $objTable->load = 1;
     $objTable->save();
     $objOrder = new MasterOrderModel();
     $objOrder->getByID($id_order);
     $objOrder->id_table = $objTableHlp[0]->id_table;
     $objOrder->type_order = "1";
     $objOrder->load = 1;
     $objOrder->save();
     $objOrderHlp = new MasterOrderModel();
     $arrOrder = $objOrderHlp->getWhere("id_user='******' AND status_progress < 3 OR status_payment='0'");
     Generic::checkCountWithMsg($arrOrder, "No ID Order from the ID User found");
     $id_order = $arrOrder[0]->id_order;
     $order = MasterOrder::getOrder($id_order);
     $arrOrderDetails = OrderDetail::getOrderDetailsByIDOrderAndUserID($id_order, $id_user);
     $order['Order_Details'] = $arrOrderDetails;
     $order['restaurant'] = User::getRestaurant($order['id_restaurant']);
     $json['results'][] = $order;
     echo json_encode($json);
     die;
 }
コード例 #4
0
 private function forceDoneOrder($orderId)
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $order = new MasterOrderModel();
     $order->getByID($orderId);
     $order->status_progress = 9;
     $order->save();
     $o = new OrderDetailModel();
     $orderDetails = $o->getWhere("id_order='{$orderId}'");
     foreach ($orderDetails as $orderDetail) {
         $orderDetail->load = 1;
         $orderDetail->status_progress = 9;
         $orderDetail->save();
     }
     $resto = new MasterRestaurantModel();
     $resto->getByID($order->id_restaurant);
     if ($order->id_table != 0) {
         Mastertable::clearTable($order->id_table);
     }
     if ($order->id_user != 0) {
         $guestId = $order->id_user;
         if ($order->user_guest_id != "" || $order->user_guest_id != ",") {
             $guestId .= $order->user_guest_id;
         }
         $j["id_order"] = $orderId;
         $j['datetime'] = date('Y-m-d H:i:s');
         $msg = "Your order at restaurant {$resto->name} with order ID {$orderId} has been voided";
         $this->pushToUser($guestId, $msg, $j, Push::$typeUpdateWaiting);
         die;
     }
 }
コード例 #5
0
 public function cancelOrder()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $json = array();
     $json['status_code'] = 1;
     $id_order = isset($_GET['id_order']) ? addslashes($_GET['id_order']) : "";
     if (!$id_order) {
         Generic::errorMsg("No id order found!");
     }
     $objOrder = new MasterOrderModel();
     $objOrder->getByID($id_order);
     Mastertable::clearTable($objOrder->id_table);
     $objOrder->status = "0";
     $objOrder->load = 1;
     $idUpdate = $objOrder->save();
     if (!$idUpdate) {
         $json['status_code'] = 0;
         $json['messages'] = Lang::t('save failed');
     } else {
         $json['status_code'] = 1;
         $json['results']['messages'] = "Success";
     }
     echo json_encode($json);
     die;
 }