update no table oqs print

This commit is contained in:
Aung Myo
2018-02-21 16:11:05 +06:30
parent c3af21d71c
commit 0302bb408b
6 changed files with 48 additions and 48 deletions

View File

@@ -164,7 +164,7 @@ class Origami::PaymentsController < BaseOrigamiController
end end
booking.booking_orders.each do |order| booking.booking_orders.each do |order|
Order.pay_process_order_queue(order.order_id,table_id,sale_id) Order.pay_process_order_queue(order.order_id,table_id)
end end
end end
end end

View File

@@ -1,7 +1,7 @@
class OrderQueueProcessorJob < ApplicationJob class OrderQueueProcessorJob < ApplicationJob
queue_as :default queue_as :default
def perform(order_id, table_id,sale_id=nil) def perform(order_id, table_id)
# Do something later # Do something later
#Order ID #Order ID
order = Order.find(order_id) order = Order.find(order_id)
@@ -9,7 +9,7 @@ class OrderQueueProcessorJob < ApplicationJob
#Execute orders and send to order stations #Execute orders and send to order stations
if order if order
oqs = OrderQueueStation.new oqs = OrderQueueStation.new
oqs.process_order(order, table_id,sale_id) oqs.process_order(order, table_id)
end end
assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id) assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id)

View File

@@ -309,9 +309,9 @@ class Order < ApplicationRecord
end end
#Process order items and send to order queue #Process order items and send to order queue
def self.pay_process_order_queue(id,table_id,sale_id=nil) def self.pay_process_order_queue(id,table_id)
#Send to background job for processing #Send to background job for processing
OrderQueueProcessorJob.perform_later(id, table_id,sale_id) OrderQueueProcessorJob.perform_later(id, table_id)
end end
def check_cup_status(status) def check_cup_status(status)

View File

@@ -13,16 +13,16 @@ 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,sale_id=nil) def process_order (order, table_id)
oqs_stations = OrderQueueStation.active oqs_stations = OrderQueueStation.active
order_items = order.order_items order_items = order.order_items
if table_id > 0 if table_id.to_i > 0
# get dining # get dining
dining=DiningFacility.find(table_id) dining = DiningFacility.find(table_id)
oqs_by_zones = OrderQueueProcessByZone.where("zone_id=#{dining.zone_id}") oqs_by_zones = OrderQueueProcessByZone.where("zone_id=#{dining.zone_id}")
booking = Booking.find_by_dining_facility_id(dining.id) booking = Booking.find_by_dining_facility_id(dining.id)
@@ -64,46 +64,38 @@ class OrderQueueStation < ApplicationRecord
end end
end end
else else
# get dining oqs_stations.each do |oqs|
sale = Sale.find(sale_id).shift_sale_id is_auto_printed = false
terminal_by_zones = CashierTerminalByZones.where("cashier_terminal_id=#{shift.cashier_terminal_id}") oqs_order_items = []
# ToDo per item per printer
terminal_by_zones.each do |tbz|
OrderQueueProcessByZone.where("zone_id=#{tbz.zone_id}").find_each do |oqpbz|
oqs = OrderQueueStation.find(oqpbz.order_queue_station_id)
is_auto_printed = false
oqs_order_items = []
if oqs.is_active if oqs.is_active
#Get List of items - #Get List of items -
pq_items = JSON.parse(oqs.processing_items) pq_items = JSON.parse(oqs.processing_items)
#Loop through the processing items #Loop through the processing items
pq_items.each do |pq_item| pq_items.each do |pq_item|
#Processing through the looping items #Processing through the looping items
order_items.each do |order_item| order_items.each do |order_item|
if (pq_item == order_item.item_code) if (pq_item == order_item.item_code)
# if oqs.id == oqpbz.order_queue_station_id # if oqs.id == oqpbz.order_queue_station_id
# #Same Order_items can appear in two location. # #Same Order_items can appear in two location.
# AssignedOrderItem.assigned_order_item(order, order_item.item_code, oqs) # AssignedOrderItem.assigned_order_item(order, order_item.item_code, oqs)
# else # else
# if (order_item.price != 0) # if (order_item.price != 0)
AssignedOrderItem.assigned_order_item(order, order_item.item_code, order_item.item_instance_code, oqs) AssignedOrderItem.assigned_order_item(order, order_item.item_code, order_item.item_instance_code, oqs)
oqs_order_items.push(order_item) oqs_order_items.push(order_item)
# end # end
# end # end
end
end end
end end
if oqs.auto_print
if oqs_order_items.length > 0
print_slip(oqs, order, oqs_order_items)
is_auto_printed = true
end
end
end end
if oqs.auto_print
if oqs_order_items.length > 0
print_slip(oqs, order, oqs_order_items)
is_auto_printed = true
end
end
end end
end end
end #end else end #end else

View File

@@ -37,8 +37,12 @@ class OrderItemPdf < Prawn::Document
# font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/Zawgyi-One.ttf"
# font "public/fonts/padauk.ttf" # font "public/fonts/padauk.ttf"
#font "public/fonts/Chinese.ttf" #font "public/fonts/Chinese.ttf"
if order_item.dining.to_i > 0
text "#{ order_item.type + '-' + order_item.dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 text "#{ order_item.type + '-' + order_item.dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20
else
text "#{ print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20
end
stroke_horizontal_rule stroke_horizontal_rule
move_down 3 move_down 3

View File

@@ -36,8 +36,12 @@ class OrderSummaryPdf < Prawn::Document
# font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/Zawgyi-One.ttf"
# font "public/fonts/padauk.ttf" # font "public/fonts/padauk.ttf"
if order[0].dining.to_i > 0
text "#{ order[0].type + '-' + order[0].dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 text "#{ order[0].type + '-' + order[0].dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20
else
text "#{ print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20
end
stroke_horizontal_rule stroke_horizontal_rule
move_down 5 move_down 5