Merge branch 'adminbsb_material_ui' of bitbucket.org:code2lab/sxrestaurant
This commit is contained in:
@@ -86,9 +86,11 @@ class Origami::MovetableController < BaseOrigamiController
|
|||||||
booking.booking_orders.each do |booking_order|
|
booking.booking_orders.each do |booking_order|
|
||||||
order = Order.find(booking_order.order_id)
|
order = Order.find(booking_order.order_id)
|
||||||
if order.status == 'new'
|
if order.status == 'new'
|
||||||
order.order_items.each do |order_item|
|
oqs = OrderQueueStation.new
|
||||||
order_items.push(order_item)
|
oqs.process_order(order, change_from, order.source, 'move',change_to,current_user.name)
|
||||||
end
|
# order.order_items.each do |order_item|
|
||||||
|
# order_items.push(order_item)
|
||||||
|
# end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -96,28 +98,28 @@ class Origami::MovetableController < BaseOrigamiController
|
|||||||
|
|
||||||
@get_type = Booking.update_dining_facility(booking_array,change_to,change_from)
|
@get_type = Booking.update_dining_facility(booking_array,change_to,change_from)
|
||||||
|
|
||||||
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
# if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
||||||
# get printer info
|
# # get printer info
|
||||||
@from = (DiningFacility.find(change_from)).name
|
# @from = (DiningFacility.find(change_from)).name
|
||||||
@to = (DiningFacility.find(change_to)).name
|
# @to = (DiningFacility.find(change_to)).name
|
||||||
@type = (DiningFacility.find(change_to)).type
|
# @type = (DiningFacility.find(change_to)).type
|
||||||
@moved_by = @current_user.name
|
# @moved_by = @current_user.name
|
||||||
@date = DateTime.now
|
# @date = DateTime.now
|
||||||
@shop = Shop.first
|
# @shop = Shop.first
|
||||||
unique_code = "MoveTablePdf"
|
# unique_code = "MoveTablePdf"
|
||||||
pdf_no = PrintSetting.where(:unique_code => unique_code).count
|
# pdf_no = PrintSetting.where(:unique_code => unique_code).count
|
||||||
#print_settings = PrintSetting.find_by_unique_code(unique_code)
|
# #print_settings = PrintSetting.find_by_unique_code(unique_code)
|
||||||
printer_array = []
|
# printer_array = []
|
||||||
printer_array = PrintSetting.where(:unique_code => unique_code)
|
# printer_array = PrintSetting.where(:unique_code => unique_code)
|
||||||
|
|
||||||
for i in 0..pdf_no
|
# for i in 0..pdf_no
|
||||||
if i != pdf_no
|
# if i != pdf_no
|
||||||
print_settings = printer_array[i]
|
# print_settings = printer_array[i]
|
||||||
printer = Printer::ReceiptPrinter.new(print_settings)
|
# printer = Printer::ReceiptPrinter.new(print_settings)
|
||||||
printer.print_move_table(print_settings,@to,@from ,@shop,@date,@type,@moved_by,order_items)
|
# printer.print_move_table(print_settings,@to,@from ,@shop,@date,@type,@moved_by,order_items)
|
||||||
end
|
# end
|
||||||
end
|
# end
|
||||||
end
|
# end
|
||||||
|
|
||||||
type = 'move'
|
type = 'move'
|
||||||
from = getCloudDomain #get sub domain in cloud mode
|
from = getCloudDomain #get sub domain in cloud mode
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class OrderQueueStation < ApplicationRecord
|
|||||||
# validations
|
# validations
|
||||||
validates_presence_of :station_name, :printer_name
|
validates_presence_of :station_name, :printer_name
|
||||||
|
|
||||||
def process_order (order, table_id, order_source = nil)
|
def process_order (order, table_id, order_source = nil, pdf_status = nil ,change_to=nil,current_user=nil)
|
||||||
|
|
||||||
oqs_stations = OrderQueueStation.active
|
oqs_stations = OrderQueueStation.active
|
||||||
|
|
||||||
@@ -59,9 +59,9 @@ class OrderQueueStation < ApplicationRecord
|
|||||||
if oqs.auto_print && order_source != "quick_service"
|
if oqs.auto_print && order_source != "quick_service"
|
||||||
if oqs_order_items.length > 0
|
if oqs_order_items.length > 0
|
||||||
if oqs.cut_per_item
|
if oqs.cut_per_item
|
||||||
print_slip_item(oqs, order, oqs_order_items)
|
print_slip_item(oqs, order, oqs_order_items,pdf_status,change_to,current_user,table_id)
|
||||||
else
|
else
|
||||||
print_slip(oqs, order, oqs_order_items)
|
print_slip(oqs, order, oqs_order_items,pdf_status,change_to,current_user,table_id)
|
||||||
end
|
end
|
||||||
is_auto_printed = true
|
is_auto_printed = true
|
||||||
end
|
end
|
||||||
@@ -98,9 +98,9 @@ class OrderQueueStation < ApplicationRecord
|
|||||||
if oqs.auto_print && order_source != "quick_service"
|
if oqs.auto_print && order_source != "quick_service"
|
||||||
if oqs_order_items.length > 0
|
if oqs_order_items.length > 0
|
||||||
if oqs.cut_per_item
|
if oqs.cut_per_item
|
||||||
print_slip_item(oqs, order, oqs_order_items)
|
print_slip_item(oqs, order, oqs_order_items,pdf_status,change_to,current_user,table_id)
|
||||||
else
|
else
|
||||||
print_slip(oqs, order, oqs_order_items)
|
print_slip(oqs, order, oqs_order_items,pdf_status,change_to,current_user,table_id)
|
||||||
end
|
end
|
||||||
is_auto_printed = true
|
is_auto_printed = true
|
||||||
end
|
end
|
||||||
@@ -207,82 +207,107 @@ class OrderQueueStation < ApplicationRecord
|
|||||||
|
|
||||||
private
|
private
|
||||||
#Print order_items in 1 slip
|
#Print order_items in 1 slip
|
||||||
def print_slip(oqs, order, order_items)
|
def print_slip(oqs, order, order_items ,pdf_status=nil,change_to=nil,current_user=nil,table_id=nil)
|
||||||
printer = PrintSetting.all.order("id ASC")
|
if pdf_status.nil?
|
||||||
unique_code="OrderSummaryPdf"
|
printer = PrintSetting.all.order("id ASC")
|
||||||
|
unique_code="OrderSummaryPdf"
|
||||||
|
|
||||||
if !printer.empty?
|
if !printer.empty?
|
||||||
printer.each do |printer_setting|
|
printer.each do |printer_setting|
|
||||||
if printer_setting.unique_code == 'OrderSummaryPdf'
|
if printer_setting.unique_code == 'OrderSummaryPdf'
|
||||||
unique_code="OrderSummaryPdf"
|
unique_code="OrderSummaryPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSummarySlimPdf'
|
elsif printer_setting.unique_code == 'OrderSummarySlimPdf'
|
||||||
unique_code="OrderSummarySlimPdf"
|
unique_code="OrderSummarySlimPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSummarySetPdf'
|
elsif printer_setting.unique_code == 'OrderSummarySetPdf'
|
||||||
unique_code="OrderSummarySetPdf"
|
unique_code="OrderSummarySetPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSummaryCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderSummaryCustomisePdf'
|
||||||
unique_code="OrderSummaryCustomisePdf"
|
unique_code="OrderSummaryCustomisePdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSummarySetCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderSummarySetCustomisePdf'
|
||||||
unique_code="OrderSummarySetCustomisePdf"
|
unique_code="OrderSummarySetCustomisePdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSummarySlimCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderSummarySlimCustomisePdf'
|
||||||
unique_code="OrderSummarySlimCustomisePdf"
|
unique_code="OrderSummarySlimCustomisePdf"
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
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="")
|
||||||
|
|
||||||
|
assigned =AssignedOrderItem.where("order_id = '#{ order.order_id }'").pluck(:assigned_order_item_id)
|
||||||
|
AssignedOrderItem.where('assigned_order_item_id IN (?)', assigned).update_all(print_status: true)
|
||||||
|
|
||||||
|
else
|
||||||
|
move_print_pdf(change_to,current_user,table_id,order_items)
|
||||||
end
|
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="")
|
|
||||||
|
|
||||||
assigned =AssignedOrderItem.where("order_id = '#{ order.order_id }'").pluck(:assigned_order_item_id)
|
|
||||||
AssignedOrderItem.where('assigned_order_item_id IN (?)', assigned).update_all(print_status: true)
|
|
||||||
# assigned_items =AssignedOrderItem.where("order_id = '#{ order.order_id }'")
|
|
||||||
|
|
||||||
# assigned_items.each do |ai|
|
|
||||||
# # update print status for order items
|
|
||||||
# ai.print_status=true
|
|
||||||
# ai.save
|
|
||||||
# end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#Print order_item in 1 slip per item
|
#Print order_item in 1 slip per item
|
||||||
def print_slip_item(oqs, order, assigned_items)
|
def print_slip_item(oqs, order, assigned_items,pdf_status=nil,change_to=nil,current_user=nil,table_id=nil)
|
||||||
printer = PrintSetting.all.order("id ASC")
|
|
||||||
unique_code="OrderItemPdf"
|
|
||||||
|
|
||||||
if !printer.empty?
|
if pdf_status.nil?
|
||||||
printer.each do |printer_setting|
|
printer = PrintSetting.all.order("id ASC")
|
||||||
if printer_setting.unique_code == 'OrderItemPdf'
|
unique_code="OrderItemPdf"
|
||||||
unique_code="OrderItemPdf"
|
|
||||||
elsif printer_setting.unique_code == 'OrderItemSlimPdf'
|
if !printer.empty?
|
||||||
unique_code="OrderItemSlimPdf"
|
printer.each do |printer_setting|
|
||||||
elsif printer_setting.unique_code == 'OrderSetItemPdf'
|
if printer_setting.unique_code == 'OrderItemPdf'
|
||||||
unique_code="OrderSetItemPdf"
|
unique_code="OrderItemPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderItemCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderItemSlimPdf'
|
||||||
unique_code="OrderItemCustomisePdf"
|
unique_code="OrderItemSlimPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderSetItemCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderSetItemPdf'
|
||||||
unique_code="OrderSetItemCustomisePdf"
|
unique_code="OrderSetItemPdf"
|
||||||
elsif printer_setting.unique_code == 'OrderItemSlimCustomisePdf'
|
elsif printer_setting.unique_code == 'OrderItemCustomisePdf'
|
||||||
unique_code="OrderItemSlimCustomisePdf"
|
unique_code="OrderItemCustomisePdf"
|
||||||
|
elsif printer_setting.unique_code == 'OrderSetItemCustomisePdf'
|
||||||
|
unique_code="OrderSetItemCustomisePdf"
|
||||||
|
elsif printer_setting.unique_code == 'OrderItemSlimCustomisePdf'
|
||||||
|
unique_code="OrderItemSlimCustomisePdf"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# 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)
|
||||||
|
order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
|
||||||
|
if !assigned_items.nil?
|
||||||
|
assigned_items.each do |order_item|
|
||||||
|
order_queue_printer.print_order_item(print_settings, oqs,order_item.order_id, order_item.order_items_id, print_status="" )
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
assigned =AssignedOrderItem.where("order_id = '#{ order.order_id }'").pluck(:assigned_order_item_id)
|
||||||
|
AssignedOrderItem.where('assigned_order_item_id IN (?)', assigned).update_all(print_status: true)
|
||||||
|
else
|
||||||
|
move_print_pdf(change_to,current_user,table_id,assigned_items)
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def move_print_pdf(change_to,current_user,change_from,order_items)
|
||||||
|
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
||||||
|
# get printer info
|
||||||
|
@from = (DiningFacility.find(change_from)).name
|
||||||
|
@to = (DiningFacility.find(change_to)).name
|
||||||
|
@type = (DiningFacility.find(change_to)).type
|
||||||
|
@moved_by = current_user
|
||||||
|
@date = DateTime.now
|
||||||
|
@shop = Shop.first
|
||||||
|
unique_code = "MoveTablePdf"
|
||||||
|
pdf_no = PrintSetting.where(:unique_code => unique_code).count
|
||||||
|
#print_settings = PrintSetting.find_by_unique_code(unique_code)
|
||||||
|
printer_array = []
|
||||||
|
printer_array = PrintSetting.where(:unique_code => unique_code)
|
||||||
|
|
||||||
|
for i in 0..pdf_no
|
||||||
|
if i != pdf_no
|
||||||
|
print_settings = printer_array[i]
|
||||||
|
printer = Printer::ReceiptPrinter.new(print_settings)
|
||||||
|
printer.print_move_table(print_settings,@to,@from ,@shop,@date,@type,@moved_by,order_items)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# 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)
|
|
||||||
order_queue_printer= Printer::OrderQueuePrinter.new(print_settings)
|
|
||||||
if !assigned_items.nil?
|
|
||||||
assigned_items.each do |order_item|
|
|
||||||
order_queue_printer.print_order_item(print_settings, oqs,order_item.order_id, order_item.order_items_id, print_status="" )
|
|
||||||
end
|
|
||||||
end
|
|
||||||
# update print status for completed same order items
|
|
||||||
# AssignedOrderItem.where("order_id = '#{ order.order_id }'").update_all(print_status: true)
|
|
||||||
# AssignedOrderItem.where("order_id = '#{ order.order_id }'").find_each do |ai|
|
|
||||||
# ai.print_status=true
|
|
||||||
# ai.save
|
|
||||||
# end
|
|
||||||
assigned =AssignedOrderItem.where("order_id = '#{ order.order_id }'").pluck(:assigned_order_item_id)
|
|
||||||
AssignedOrderItem.where('assigned_order_item_id IN (?)', assigned).update_all(print_status: true)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user