diff --git a/app/assets/javascripts/channels/call_waiter.js b/app/assets/javascripts/channels/call_waiter.js
index 941a6359..f0a804a2 100644
--- a/app/assets/javascripts/channels/call_waiter.js
+++ b/app/assets/javascripts/channels/call_waiter.js
@@ -7,15 +7,27 @@ App.call_waiter = App.cable.subscriptions.create('CallWaiterChannel', {
received: function(data) {
table = data.table
+ time = data.time
// for Notificaiotn message
var element = "#notify-wrapper"
- var placementFrom = "top";
- var placementAlign = "center";
var animateEnter = "";
var animateExit = "";
- var colorName = "alert-warning";
- var text = " Calling Waiter
"+table.name ;
+
+ if (time == 'print_error') {
+ var colorName = "alert-danger";
+ var placementFrom = "center";
+ var placementAlign = "center";
+ var text = " Hello
"+table ;
+ style =""
+ }else{
+ var colorName = "alert-warning";
+ var placementFrom = "top";
+ var placementAlign = "center";
+ var text = " Calling Waiter
"+table.name ;
+ style ="width:180px !important;"
+ }
+
if (text != null || colorName != null){
showNotification(element, colorName, text, placementFrom, placementAlign, animateEnter, animateExit);
@@ -43,7 +55,7 @@ App.call_waiter = App.cable.subscriptions.create('CallWaiterChannel', {
enter: animateEnter,
exit: animateExit
},
- template: '
' +
+ template: '
' +
'' +
' ' +
'{1} ' +
diff --git a/app/models/order.rb b/app/models/order.rb
index 16edc1fa..5b1601d8 100755
--- a/app/models/order.rb
+++ b/app/models/order.rb
@@ -278,19 +278,34 @@ class Order < ApplicationRecord
#Process order items and send to order queue
def process_order_queue
#Send to background job for processing
- OrderQueueProcessorJob.perform_later(self.id, self.table_id)
- # order = Order.find(order_id)
- # #Execute orders and send to order stations
- # if order
- # oqs = OrderQueueStation.new
- # oqs.process_order(order, table_id)
- # end
+ cup_status = `#{"sudo service cups status"}`
+ print_status = check_cup_status(cup_status)
+
+ if print_status
+ OrderQueueProcessorJob.perform_later(self.id, self.table_id)
+ else
+ cup_start = `#{"sudo service cups start"}`
+ cup_status = `#{"sudo service cups status"}`
+ print_status = check_cup_status(cup_status)
- # assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id)
- # ActionCable.server.broadcast "order_queue_station_channel",order: assign_order
+ if print_status
+ OrderQueueProcessorJob.perform_later(self.id, self.table_id)
+ else
+ msg = ' Print Error ! Please contact to service'
+ ActionCable.server.broadcast "call_waiter_channel",table: msg,time:'print_error'
+ OrderQueueProcessorJob.perform_later(self.id, self.table_id)
+ end
+ end
+
+ end
+
+ def check_cup_status(status)
+ if status.include? "Active: active (running)" || "Active: active (exited)" #"Cup Server is already running"
+ return true
+ end
+ return false
end
-
#send order items and send to order queue
def send_order_broadcast(booking)
diff --git a/app/models/order_queue_station.rb b/app/models/order_queue_station.rb
index aea44395..2be68fb3 100755
--- a/app/models/order_queue_station.rb
+++ b/app/models/order_queue_station.rb
@@ -123,25 +123,9 @@ class OrderQueueStation < ApplicationRecord
end
print_settings=PrintSetting.find_by_unique_code(unique_code)
+ order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
+ order_queue_printer.print_order_summary(print_settings, oqs,order.order_id, order_items, print_status="")
- cup_status = `#{"sudo service cups status"}`
- print_status = check_cup_status(cup_status)
-
- if print_status
- order_queue_printer = Printer::OrderQueuePrinter.new(print_settings)
- order_queue_printer.print_order_summary(print_settings, oqs,order.order_id, order_items, print_status="")
- else
- cup_start = `#{"sudo service cups start"}`
- cup_status = `#{"sudo service cups status"}`
- print_status = check_cup_status(cup_status)
-
- if print_status
- order_queue_printer = Printer::OrderQueuePrinter.new(print_settings)
- order_queue_printer.print_order_summary(print_settings, oqs,order.order_id, order_items, print_status="")
-
- end
- end
-
AssignedOrderItem.where("order_id = '#{ order.order_id }'").find_each do |ai|
# update print status for order items
ai.print_status=true
@@ -175,23 +159,8 @@ class OrderQueueStation < ApplicationRecord
order_item = OrderItem.where("order_id='#{assigned_item.order_id}' AND item_instance_code='#{assigned_item.instance_code}'").first()
# print when complete click
print_settings=PrintSetting.find_by_unique_code(unique_code)
-
- cup_status = `#{"sudo service cups status"}`
- print_status = check_cup_status(cup_status)
-
- if print_status
- order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
- order_queue_printer.print_order_item(print_settings, oqs,item.order_id, order_item.order_items_id, print_status="" )
- else
- cup_start = `#{"sudo service cups start"}`
- cup_status = `#{"sudo service cups status"}`
- print_status = check_cup_status(cup_status)
-
- if print_status
- order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
- order_queue_printer.print_order_item(print_settings, oqs,item.order_id, order_item.order_items_id, print_status="" )
- end
- end
+ order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
+ order_queue_printer.print_order_item(print_settings, oqs,item.order_id, order_item.order_items_id, print_status="" )
# update print status for completed same order items
assigned_order_item.each do |ai|
@@ -199,12 +168,4 @@ class OrderQueueStation < ApplicationRecord
ai.save
end
end
-
- def check_cup_status(status)
- if status.include? "Active: active (running)" || "Active: active (exited)" #"Cup Server is already running"
- return true
- end
- return false
- end
-
end