From 0302bb408bbadd524d91d9e553f5c4396cedb05c Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 21 Feb 2018 16:11:05 +0630 Subject: [PATCH] update no table oqs print --- .../origami/payments_controller.rb | 2 +- app/jobs/order_queue_processor_job.rb | 4 +- app/models/order.rb | 4 +- app/models/order_queue_station.rb | 70 ++++++++----------- app/pdf/order_item_pdf.rb | 8 ++- app/pdf/order_summary_pdf.rb | 8 ++- 6 files changed, 48 insertions(+), 48 deletions(-) diff --git a/app/controllers/origami/payments_controller.rb b/app/controllers/origami/payments_controller.rb index cd32b418..a9546c43 100755 --- a/app/controllers/origami/payments_controller.rb +++ b/app/controllers/origami/payments_controller.rb @@ -164,7 +164,7 @@ class Origami::PaymentsController < BaseOrigamiController end 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 diff --git a/app/jobs/order_queue_processor_job.rb b/app/jobs/order_queue_processor_job.rb index 12fbff3a..18fdc2dd 100755 --- a/app/jobs/order_queue_processor_job.rb +++ b/app/jobs/order_queue_processor_job.rb @@ -1,7 +1,7 @@ class OrderQueueProcessorJob < ApplicationJob queue_as :default - def perform(order_id, table_id,sale_id=nil) + def perform(order_id, table_id) # Do something later #Order ID order = Order.find(order_id) @@ -9,7 +9,7 @@ class OrderQueueProcessorJob < ApplicationJob #Execute orders and send to order stations if order oqs = OrderQueueStation.new - oqs.process_order(order, table_id,sale_id) + oqs.process_order(order, table_id) end assign_order = AssignedOrderItem.assigned_order_item_by_job(order_id) diff --git a/app/models/order.rb b/app/models/order.rb index 72bbf60e..15ce56c3 100755 --- a/app/models/order.rb +++ b/app/models/order.rb @@ -309,9 +309,9 @@ class Order < ApplicationRecord end #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 - OrderQueueProcessorJob.perform_later(id, table_id,sale_id) + OrderQueueProcessorJob.perform_later(id, table_id) end def check_cup_status(status) diff --git a/app/models/order_queue_station.rb b/app/models/order_queue_station.rb index fd7c3420..5e9a2b56 100755 --- a/app/models/order_queue_station.rb +++ b/app/models/order_queue_station.rb @@ -13,16 +13,16 @@ class OrderQueueStation < ApplicationRecord # validations 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 order_items = order.order_items - if table_id > 0 + if table_id.to_i > 0 # get dining - dining=DiningFacility.find(table_id) + dining = DiningFacility.find(table_id) oqs_by_zones = OrderQueueProcessByZone.where("zone_id=#{dining.zone_id}") booking = Booking.find_by_dining_facility_id(dining.id) @@ -64,46 +64,38 @@ class OrderQueueStation < ApplicationRecord end end else - # get dining - sale = Sale.find(sale_id).shift_sale_id - terminal_by_zones = CashierTerminalByZones.where("cashier_terminal_id=#{shift.cashier_terminal_id}") - - # 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 = [] + oqs_stations.each do |oqs| + is_auto_printed = false + oqs_order_items = [] - if oqs.is_active - #Get List of items - - pq_items = JSON.parse(oqs.processing_items) - #Loop through the processing items - pq_items.each do |pq_item| - #Processing through the looping items - order_items.each do |order_item| - if (pq_item == order_item.item_code) - # if oqs.id == oqpbz.order_queue_station_id - # #Same Order_items can appear in two location. - # AssignedOrderItem.assigned_order_item(order, order_item.item_code, oqs) - # else - - # if (order_item.price != 0) - AssignedOrderItem.assigned_order_item(order, order_item.item_code, order_item.item_instance_code, oqs) - oqs_order_items.push(order_item) - # end - # end - end + if oqs.is_active + #Get List of items - + pq_items = JSON.parse(oqs.processing_items) + #Loop through the processing items + pq_items.each do |pq_item| + #Processing through the looping items + order_items.each do |order_item| + if (pq_item == order_item.item_code) + # if oqs.id == oqpbz.order_queue_station_id + # #Same Order_items can appear in two location. + # AssignedOrderItem.assigned_order_item(order, order_item.item_code, oqs) + # else + + # if (order_item.price != 0) + AssignedOrderItem.assigned_order_item(order, order_item.item_code, order_item.item_instance_code, oqs) + oqs_order_items.push(order_item) + # 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 + + 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 else diff --git a/app/pdf/order_item_pdf.rb b/app/pdf/order_item_pdf.rb index 26253b6e..379e919c 100755 --- a/app/pdf/order_item_pdf.rb +++ b/app/pdf/order_item_pdf.rb @@ -37,8 +37,12 @@ class OrderItemPdf < Prawn::Document # font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/padauk.ttf" #font "public/fonts/Chinese.ttf" - - text "#{ order_item.type + '-' + order_item.dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + 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 + else + text "#{ print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + end + stroke_horizontal_rule move_down 3 diff --git a/app/pdf/order_summary_pdf.rb b/app/pdf/order_summary_pdf.rb index 5211061e..6c8dacac 100755 --- a/app/pdf/order_summary_pdf.rb +++ b/app/pdf/order_summary_pdf.rb @@ -36,8 +36,12 @@ class OrderSummaryPdf < Prawn::Document # font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/padauk.ttf" - - text "#{ order[0].type + '-' + order[0].dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + 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 + else + text "#{ print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + end + stroke_horizontal_rule move_down 5