multiple zone with cashier terminal call waiter noti

This commit is contained in:
phyusin
2018-10-11 10:22:35 +06:30
parent d913c074e0
commit 8897f1d052
5 changed files with 27 additions and 11 deletions

View File

@@ -5,13 +5,23 @@ class Api::CallWaitersController < ActionController::API
@table_id = params[:dining_id]
@time = params[:time]
@table = DiningFacility.find(@table_id)
shift_ids = []
#for multiple zone with terminal
multiple_zone = CashierTerminalByZone.where("zone_id = #{@table.zone_id}")
multiple_zone.each do |zone|
shift = ShiftSale.where("shift_started_at is not null and shift_closed_at is null and cashier_terminal_id = #{zone.cashier_terminal_id}").first
if !shift.nil?
shift_ids.push(shift.id)
end
end
# CallWaiterJob.perform_later(@table,@time)
if ENV["SERVER_MODE"] == 'cloud'
from = request.subdomain + "." + request.domain
else
from = ""
end
ActionCable.server.broadcast "call_waiter_channel",table: @table,time:@time,from: from
ActionCable.server.broadcast "call_waiter_channel",table: @table,time:@time,from: from, shift_ids: shift_ids
# get printer info
@shop = Shop.first
unique_code = "CallWaiterPdf"