diff --git a/README.md b/README.md
index e19f7a51..bbbd539a 100755
--- a/README.md
+++ b/README.md
@@ -178,6 +178,9 @@ For MoveTablePdf in print settings
/* Tax Profile Group Types in lookups */
>>>>>>> 1c13b0469758fb968c0dfcc1f0a876ed2c5e395a
+Add Kitchen Role of Employee
+ => 1) settings/lookups => { type:employee_roles, name: Kitchen, value:kitchen }
+
* ToDo list
1. Migration
diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js
index e49f7446..30ed8af2 100755
--- a/app/assets/javascripts/addorder.js
+++ b/app/assets/javascripts/addorder.js
@@ -266,11 +266,22 @@ $(function() {
$('.set_order').attr('data-min-qty',item_sets[field]["min_selectable_qty"]);
value = item_sets[field]["instances"];
-
$(value).each(function(i){
+ if (type != -1 && modify_order != -1) {
+ url = '../../../../api/restaurant/menu_item_instances/'+value[i]["id"];
+ console.log("ssssssss")
+ }
+ if(modify_order == -1 && type != -1){
+ url = '../../api/restaurant/menu_item_instances/'+value[i]["id"] ;
+ console.log("aaaaaa")
+ }
+ if (type ==-1 && modify_order == -1){
+ url = '../../api/restaurant/menu_item_instances/'+value[i]["id"];
+ console.log("cccccccccc")
+ }
$.ajax({
type: "GET",
- url: '../../api/restaurant/menu_item_instances/'+value[i]["id"],
+ url: url,
data: {id:value[i]},
success:function(result){
@@ -370,7 +381,7 @@ $(function() {
// $(this).removeAttr('data-options');
// $('#instance_option').text('')
// }else {
- if (rowCount.length+1 <= max_qty) {
+ if (setCount.length+1 <= max_qty) {
sub_total = $('#set_total_price').text();
name = $(this).data('name');
price = $(this).data('price');
@@ -1317,9 +1328,18 @@ console.log(d_option)
}
function customer_display_view(data,status) {
+ if (type != -1 && modify_order != -1) {
+ url = '../../../../origami/customer_view';
+ }
+ if(modify_order == -1 && type != -1){
+ url = '../../origami/customer_view';
+ }
+ if (type ==-1 && modify_order == -1){
+ url = '../../origami/customer_view';
+ }
$.ajax({
type: "POST",
- url: '../../origami/customer_view',
+ url: url,
data: {"data":data,"status":status},
dataType: "json",
success:function(result){
diff --git a/app/controllers/home_controller.rb b/app/controllers/home_controller.rb
index d2b0ad36..e720444f 100755
--- a/app/controllers/home_controller.rb
+++ b/app/controllers/home_controller.rb
@@ -70,6 +70,9 @@ class HomeController < ApplicationController
elsif @employee.role == "account"
session[:session_token] = @employee.token_session
redirect_to reports_dailysale_index_path
+ elsif @employee.role == "kitchen"
+ session[:session_token] = @employee.token_session
+ redirect_to oqs_root_path
else
render :index
end
diff --git a/app/controllers/oqs/edit_controller.rb b/app/controllers/oqs/edit_controller.rb
index 049bbda6..4bc99f59 100644
--- a/app/controllers/oqs/edit_controller.rb
+++ b/app/controllers/oqs/edit_controller.rb
@@ -1,4 +1,5 @@
class Oqs::EditController < BaseOqsController
+ authorize_resource :class => false
def index
assigned_item_id = params[:id]
@link_type = params[:type]
diff --git a/app/controllers/oqs/home_controller.rb b/app/controllers/oqs/home_controller.rb
index 19d4c17f..23d6341e 100755
--- a/app/controllers/oqs/home_controller.rb
+++ b/app/controllers/oqs/home_controller.rb
@@ -1,8 +1,6 @@
class Oqs::HomeController < BaseOqsController
+ authorize_resource :class => false
def index
-
-
-
# Query for OQS with delivery status false
# @queue_items_details = queue_items_query(false)
diff --git a/app/controllers/oqs/print_controller.rb b/app/controllers/oqs/print_controller.rb
index 930d3d5c..bf5b803a 100755
--- a/app/controllers/oqs/print_controller.rb
+++ b/app/controllers/oqs/print_controller.rb
@@ -1,4 +1,5 @@
class Oqs::PrintController < ApplicationController
+ authorize_resource :class => false
# Print Order Item
def print
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
diff --git a/app/controllers/origami/home_controller.rb b/app/controllers/origami/home_controller.rb
index 5ed006a1..8e00ef80 100755
--- a/app/controllers/origami/home_controller.rb
+++ b/app/controllers/origami/home_controller.rb
@@ -3,11 +3,7 @@ class Origami::HomeController < BaseOrigamiController
before_action :set_dining, only: [:show]
def index
- @webview = false
- if check_mobile
- @webview = true
- end
-
+ @webview = check_mobile
@tables = Table.all.active.order('status desc')
@rooms = Room.all.active.order('status desc')
@complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d'))
@@ -19,10 +15,7 @@ class Origami::HomeController < BaseOrigamiController
# origami table detail
def show
- @webview = false
- if check_mobile
- @webview = true
- end
+ @webview = check_mobile
@tables = Table.all.active.order('status desc')
@rooms = Room.all.active.order('status desc')
diff --git a/app/models/ability.rb b/app/models/ability.rb
index b1930e1b..e9509289 100755
--- a/app/models/ability.rb
+++ b/app/models/ability.rb
@@ -98,6 +98,22 @@ class Ability
can :create, :split_bill
can :update_sale, :split_bill
+ #oqs Home
+ can :index, :home
+ can :index, :show
+ can :get_order_items, :home
+ can :get_items_by_oqs, :home
+ can :update_delivery_status, :home
+ can :queue_items_query, :home
+ can :completed_order, :home
+ can :queue_items_count_query, :home
+
+ can :index, :edit
+ can :update, :edit
+
+ can :print, :print
+ can :print_order_summary, :print
+
elsif user.role == "cashier"
# can :overall_void, :void
@@ -144,6 +160,22 @@ class Ability
can :index, :split_bill
can :create, :split_bill
can :update_sale, :split_bill
+
+ #oqs Home
+ can :index, :home
+ can :index, :show
+ can :get_order_items, :home
+ can :get_items_by_oqs, :home
+ can :update_delivery_status, :home
+ can :queue_items_query, :home
+ can :completed_order, :home
+ can :queue_items_count_query, :home
+
+ can :index, :edit
+ can :update, :edit
+
+ can :print, :print
+ can :print_order_summary, :print
elsif user.role == "account"
@@ -206,6 +238,23 @@ class Ability
can :index, :split_bill
can :create, :split_bill
can :update_sale, :split_bill
+
+ #oqs Home
+ can :index, :home
+ can :index, :show
+ can :get_order_items, :home
+ can :get_items_by_oqs, :home
+ can :update_delivery_status, :home
+ can :queue_items_query, :home
+ can :completed_order, :home
+ can :queue_items_count_query, :home
+
+ can :index, :edit
+ can :update, :edit
+
+ can :print, :print
+ can :print_order_summary, :print
+
elsif user.role == "waiter"
can :index, :home
can :show, :home
@@ -232,6 +281,40 @@ class Ability
#ability for split_bill
can :index, :split_bill
can :create, :split_bill
+
+ #oqs Home
+ can :index, :home
+ can :index, :show
+ can :get_order_items, :home
+ can :get_items_by_oqs, :home
+ can :update_delivery_status, :home
+ can :queue_items_query, :home
+ can :completed_order, :home
+ can :queue_items_count_query, :home
+
+ can :index, :edit
+ can :update, :edit
+
+ can :print, :print
+ can :print_order_summary, :print
+
+ elsif user.role == "kitchen"
+
+ #oqs Home
+ can :index, :home
+ can :index, :show
+ can :get_order_items, :home
+ can :get_items_by_oqs, :home
+ can :update_delivery_status, :home
+ can :queue_items_query, :home
+ can :completed_order, :home
+ can :queue_items_count_query, :home
+
+ can :index, :edit
+ can :update, :edit
+
+ can :print, :print
+ can :print_order_summary, :print
end
end
end
diff --git a/app/models/printer/cashier_station_printer.rb b/app/models/printer/cashier_station_printer.rb
index d4817346..63239cdc 100755
--- a/app/models/printer/cashier_station_printer.rb
+++ b/app/models/printer/cashier_station_printer.rb
@@ -8,7 +8,10 @@ class Printer::CashierStationPrinter < Printer::PrinterWorker
#Print
pdf = CashierStationOpening.new
pdf.render_file "tmp/cashier_station_#{order_id}_closing_#{time}.pdf"
- self.print("tmp/cashier_station_#{order_id}_closing_#{time}.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/cashier_station_#{order_id}_closing_#{time}.pdf")
+ end
end
# def print_close_cashier(receipt_no)
@@ -59,7 +62,10 @@ class Printer::CashierStationPrinter < Printer::PrinterWorker
end
pdf.render_file filename
- self.print(filename, cashier_terminal.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, cashier_terminal.printer_name)
+ end
end
#sqa
end
diff --git a/app/models/printer/order_queue_printer.rb b/app/models/printer/order_queue_printer.rb
index 4a8b1653..62e6f0a7 100755
--- a/app/models/printer/order_queue_printer.rb
+++ b/app/models/printer/order_queue_printer.rb
@@ -39,14 +39,20 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker
pdf.render_file filename
if oqs.print_copy
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
#For print copy
# pdf.render_file filename.gsub(".","-copy.")
# self.print(filename.gsub(".","-copy."), oqs.printer_name)
else
print_settings.print_copies = 1
print_settings.save!
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
end
# end
end
@@ -96,13 +102,19 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker
end
# pdf.render_file "tmp/order_item.pdf"
pdf.render_file filename
- if oqs.print_copy
- self.print(filename, oqs.printer_name)
- # self.print(filename.gsub(".","-copy."), oqs.printer_name)
+ if oqs.print_copy
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ # self.print(filename.gsub(".","-copy."), oqs.printer_name)
+ end
else
print_settings.print_copies = 1
print_settings.save!
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
end
#end
end
@@ -130,14 +142,20 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker
pdf.render_file filename
if oqs.print_copy
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
#For print copy
# pdf.render_file filename.gsub(".","-copy.")
# self.print(filename.gsub(".","-copy."), oqs.printer_name)
else
print_settings.print_copies = 1
print_settings.save!
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
end
end
end
@@ -183,15 +201,20 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker
pdf.render_file filename
if oqs.print_copy
- self.print(filename, oqs.printer_name)
-
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
#For print copy
# pdf.render_file filename.gsub(".","-copy.")
# self.print(filename.gsub(".","-copy."), oqs.printer_name)
else
print_settings.print_copies = 1
print_settings.save!
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
end
#end
end
@@ -219,15 +242,20 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker
pdf.render_file filename
if oqs.print_copy
- self.print(filename, oqs.printer_name)
-
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
#For print copy
# pdf.render_file filename.gsub(".","-copy.")
# self.print(filename.gsub(".","-copy."), oqs.printer_name)
else
print_settings.print_copies = 1
print_settings.save!
- self.print(filename, oqs.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, oqs.printer_name)
+ end
end
end
end
diff --git a/app/models/printer/receipt_printer.rb b/app/models/printer/receipt_printer.rb
index 447543f2..7e9a2247 100755
--- a/app/models/printer/receipt_printer.rb
+++ b/app/models/printer/receipt_printer.rb
@@ -24,7 +24,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file "tmp/order_item_queue_#{order_id}_#{order_item_id}" + ".pdf"
- self.print("tmp/receipt.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/receipt.pdf")
+ end
end
def print_receipt_payment_by_card(booking_id)
@@ -52,8 +55,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file filename
-
- self.print(filename)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename)
+ end
end
def print_receipt_payment_by_account(sale_id)
@@ -81,8 +86,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file filename
-
- self.print(filename)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename)
+ end
end
def print_receipt_payment_by_vochure(sale_id)
@@ -110,8 +117,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file filename
-
- self.print(filename)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename)
+ end
end
def print_receipt_payment_by_giftcard(sale_id)
@@ -139,8 +148,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file filename
-
- self.print(filename)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename)
+ end
end
def print_receipt_payment_by_foc(sale_id)
@@ -168,8 +179,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
end
end
pdf.render_file filename
-
- self.print(filename)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename)
+ end
end
#Bill Receipt Print
@@ -205,13 +218,19 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
filename = directory_name + "/receipt_bill_#{sale_data.receipt_no}.pdf"
pdf.render_file filename
if printed_status != 'Paid'
- self.print(directory_name + "/receipt_bill_#{sale_data.receipt_no}.pdf", cashier_terminal.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(directory_name + "/receipt_bill_#{sale_data.receipt_no}.pdf", cashier_terminal.printer_name)
+ end
end
else
filename = directory_name + "/receipt_bill_#{sale_data.receipt_no}_#{count}.pdf"
pdf.render_file filename
if printed_status != 'Paid'
- self.print(directory_name + "/receipt_bill_#{sale_data.receipt_no}_#{count}.pdf", cashier_terminal.printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(directory_name + "/receipt_bill_#{sale_data.receipt_no}_#{count}.pdf", cashier_terminal.printer_name)
+ end
end
end
@@ -225,7 +244,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
def print_stock_check_result(print_settings,stockcheck, stockcheck_items,checker_name, shop_details)
pdf = StockResultPdf.new(print_settings,stockcheck, stockcheck_items,checker_name, shop_details)
pdf.render_file "tmp/print_stock_check_result.pdf"
- self.print("tmp/print_stock_check_result.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/print_stock_check_result.pdf")
+ end
end
#Queue No Print
@@ -235,7 +257,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
#Print
pdf = QueueNoPdf.new(printer_settings,queue)
pdf.render_file "tmp/print_queue_no.pdf"
- self.print("tmp/print_queue_no.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/print_queue_no.pdf")
+ end
end
#Move Table Print
@@ -255,7 +280,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
#Print
pdf = CrmOrderPdf.new(booking,order_items,setting)
pdf.render_file "tmp/print_crm_order.pdf"
- self.print("tmp/print_crm_order.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/print_crm_order.pdf")
+ end
end
#Queue No Print
@@ -265,7 +293,10 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
#Print
pdf = CallWaiterPdf.new(printer_settings,table,time,shop_detail)
pdf.render_file "tmp/print_call_waiter.pdf"
- self.print("tmp/print_call_waiter.pdf")
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print("tmp/print_call_waiter.pdf")
+ end
end
#print receipt pdf from js
@@ -276,10 +307,16 @@ class Printer::ReceiptPrinter < Printer::PrinterWorker
# else
begin
if count == 1
- self.print(filename, printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, printer_name)
+ end
else
filename = "public/receipts/receipt_bill_#{receipt_no}_#{count}.pdf"
- self.print(filename, printer_name)
+ #no print in cloud server
+ if ENV["SERVER_MODE"] != "cloud"
+ self.print(filename, printer_name)
+ end
end
count -= 1
diff --git a/app/views/origami/dashboard/index.html.erb b/app/views/origami/dashboard/index.html.erb
index 2d7657f5..68b09437 100644
--- a/app/views/origami/dashboard/index.html.erb
+++ b/app/views/origami/dashboard/index.html.erb
@@ -193,8 +193,6 @@