public static function getRestaurantUserName($id_user)
 {
     $objRestoUser = new RestaurantUserModel();
     $arrRestoUser = $objRestoUser->getWhere("id_user='******'");
     if (count($arrRestoUser) == 0) {
         return "";
     } else {
         return $arrRestoUser[0]->name;
     }
 }
 public function restoUserLogin()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $id_restaurant = isset($_POST['id_restaurant']) ? addslashes($_POST['id_restaurant']) : "";
     if (!$id_restaurant) {
         $json['status_code'] = 0;
         $json['status_message'] = "No ID Found";
         echo json_encode($json);
         die;
     }
     $pin = isset($_POST['pin']) ? addslashes($_POST['pin']) : "";
     if (!$pin) {
         $json['status_code'] = 0;
         $json['status_message'] = "No ID Found";
         echo json_encode($json);
         die;
     }
     $json = array();
     $json['status_code'] = 1;
     $objRestoUsers = new RestaurantUserModel();
     $arrRestoUsers = $objRestoUsers->getWhere("id_restaurant = '{$id_restaurant}' AND pin_password='******' AND status='1'");
     MasterDish::checkCount($arrRestoUsers);
     $sem = array();
     foreach ($arrRestoUsers as $val) {
         $sem['user'] = RestaurantUser::getRestaurantUser($val->id_user);
     }
     $json['results'] = $sem;
     echo json_encode($json);
     die;
 }
 public function emailExcelReportDayByDayOrder()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $idResto = $this->mustCheck($_GET['id_restaurant'], "NO ID Restaurant");
     $range = $_GET['range'] == null || $_GET['range'] == "" ? 30 : $_GET['range'];
     $extraQ = $this->selectTypeOrder($_GET['type_order']);
     $idServer = $_GET['id_user'];
     $extraQ .= $idServer == null || $idServer == "" || $idServer == "0" ? "" : "AND id_server='{$idServer}'";
     $extraQ .= $_GET['voided'] == null || $_GET['voided'] == "" || $_GET['voided'] == "0" ? " AND status_progress='4' " : "AND status_progress='9' AND voided='1'";
     $extraQ .= $_GET['status_payment'] == null || $_GET['status_payment'] == "" || $_GET['status_payment'] == "999" ? "" : "AND status_payment='" . $_GET['status_payment'] . "'";
     ///EXCEL
     $ex = array();
     $resto = new MasterRestaurantModel();
     $resto->getByID($idResto);
     $text = "Report\t" . $resto->name . "\t" . date('Y-m-d H:i:s') . "\n";
     $text .= "Interval\t{$range} day(s)\n";
     $text .= "Server\t";
     if ($idServer == null || $idServer == "" || $idServer == "0") {
         $text .= "All Server\n";
     } else {
         $sr = new RestaurantUserModel();
         $sr->getByID($idServer);
         $text .= $sr->name . "\n";
     }
     $text .= "Type Order\t" . Generic::selectStringTypeOrder($_GET['type_order']) . "\n";
     $text .= "Order Status\t";
     $text .= $_GET['voided'] == null || $_GET['voided'] == "" || $_GET['voided'] == "0" ? "Finished Order\n" : "Voided Order\n";
     $text .= "Payment Method\t" . $this->selectTypePayment($_GET['status_payment']) . "\n\n";
     for ($i = 0; $i <= $range; $i++) {
         $date = date('Y-m-d', strtotime("-{$i} days"));
         $o = new MasterOrderModel();
         if ($range == 999) {
             $arrO = $o->getWhere("id_restaurant='{$idResto}' {$extraQ}");
         } else {
             $arrO = $o->getWhere("id_restaurant='{$idResto}' AND DATE(datetime_order)='{$date}' {$extraQ}");
         }
         if (count($arrO) == 0) {
             continue;
         }
         $text .= "Order ID " . $arrO[0]->id_order . "\n";
         if ($arrO[0]->id_server != null || $arrO[0]->id_server != "" || $arrO[0]->id_server != "0") {
             unset($sr);
             $sr = new RestaurantUserModel();
             $sr->getByID($idServer);
             $text .= "Server\t" . $sr->name . "\n";
         }
         $text .= "Time Order\t" . leap_mysqldate_isi($arrO[0]->id_server) . "\n";
         $text .= "Total\t" . $arrO[0]->total_cost . "\n";
         $text .= $arrO[0]->disc_mr == 0 ? "" : "Disc MR\t" . $arrO[0]->disc_mr . "\n";
         $text .= $arrO[0]->disc_resto == 0 ? "" : "Disc Resto\t" . $arrO[0]->disc_resto . "\n";
         $text .= $arrO[0]->disc_bank == 0 ? "" : "Disc Bank\t" . $arrO[0]->disc_bank . "\n";
         $text .= $arrO[0]->disc_other == 0 ? "" : "Disc Other\t" . $arrO[0]->disc_other . "\n";
         $text .= $arrO[0]->tax_pb1 == 0 ? "" : "Tax PB 1\t" . $arrO[0]->tax_pb1 . "\n";
         $text .= $arrO[0]->service_charge == 0 ? "" : "Service Charge\t" . $arrO[0]->service_charge . "\n";
         $text .= $arrO[0]->other_charge == 0 ? "" : "Other Charge\t" . $arrO[0]->other_charge . "\n";
         $text .= "Grand Total\t" . $arrO[0]->grand_total . "\n";
         $text .= "ID Details\tDish Name\tQuantity\tPrice\tVoided\tNote\n";
         foreach ($arrO as $or) {
             $ex[] = $or;
             $detailsOrder = OrderDetail::getOrderDetailsByIDOrder($or->id_order);
             foreach ($detailsOrder as $dor) {
                 $text .= $dor['id_order_detail'] . "\t";
                 $text .= $dor['name'] . "\t";
                 $text .= $dor['quantity'] . "\t";
                 $text .= $dor['price'] . "\t";
                 $text .= $dor['voided'] == "1" ? "YES\t" : "NO\t";
                 $text .= $dor['note'] . "\t";
                 $text .= "\n";
             }
         }
         $text .= "\n\n";
     }
     if (count($ex) <= 0) {
         //            Generic::errorMsg("Empty Record");
         $text .= "EMPTY RECORD\n\n";
     }
     $title = "Report_" . $resto->name . "_" . 1000 * strtotime(date('Y-m-d H:i:s'));
     header("Content-Disposition: attachment; filename=\"{$title}\".xls");
     header("Content-Type: application/vnd.ms-excel");
     $file = fopen($title, "w+");
     fwrite($file, $text);
     fclose($file);
     die;
 }
 public function checkRestoaktiv()
 {
     if (Efiwebsetting::getData('checkOAuth') == 'yes') {
         IMBAuth::checkOAuth();
     }
     $json = array();
     $json['status_code'] = 1;
     $id_restaurant = isset($_POST['id_restaurant']) ? addslashes($_POST['id_restaurant']) : "";
     if (!$id_restaurant) {
         $json['status_code'] = 0;
         $json['status_message'] = "No ID Found";
         echo json_encode($json);
         die;
     }
     $pwd = isset($_POST['pwd']) ? addslashes($_POST['pwd']) : "";
     if (!$pwd) {
         $json['status_code'] = 0;
         $json['status_message'] = "No ID Found";
         echo json_encode($json);
         die;
     }
     $objUsr = new RestaurantUserModel();
     $arrUsr = $objUsr->getWhere("role = 'Supervisor' AND id_restaurant='{$id_restaurant}' AND pin_password='******' AND status='1'");
     if (count($arrUsr) == 0) {
         $json['status_code'] = 0;
         $json['status_message'] = "Username or Password unmatch";
         echo json_encode($json);
         die;
     }
     $rd = new RegDevice();
     $_POST['acc_id'] = $id_restaurant;
     $json['regDevice'] = $rd->saveOnly();
     $objRestaurant = new MasterRestaurantModel();
     $arrResto = $objRestaurant->getWhere("id_restaurant='{$id_restaurant}' AND aktiv ='1'");
     $sem = array();
     if (count($arrResto) == 0) {
         $sem['status'] = false;
     } else {
         $sem['status'] = true;
         $sem['new_set_table'] = $arrResto[0]->new_set_table == "1" && $arrResto[0]->table_column != "0" && $arrResto[0]->table_quantity != "0";
         $sem['has_categories'] = isset($arrResto[0]->id_categories) && $arrResto[0]->id_categories != "0";
         $dish = new MasterDishModel();
         $arrDish = $dish->getWhere("id_restaurant = '{$id_restaurant}' AND status = '1'");
         $sem['has_dish'] = count($arrDish) > 0;
     }
     $json['results'] = $sem;
     echo json_encode($json);
     die;
 }