From 0302bb408bbadd524d91d9e553f5c4396cedb05c Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 21 Feb 2018 16:11:05 +0630 Subject: [PATCH 1/2] 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 From 5f67a91fd6ce67f2f28541a28aa52615e7e459d7 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 21 Feb 2018 16:25:01 +0630 Subject: [PATCH 2/2] update all pdf for no table --- app/pdf/order_item_slim_pdf.rb | 8 ++++++-- app/pdf/order_set_item_pdf.rb | 7 +++++-- app/pdf/order_summary_set_pdf.rb | 8 ++++++-- app/pdf/order_summary_slim_pdf.rb | 8 ++++++-- app/pdf/receipt_bill_a5_pdf.rb | 14 +++++++++++--- app/pdf/receipt_bill_pdf.rb | 4 ++-- 6 files changed, 36 insertions(+), 13 deletions(-) diff --git a/app/pdf/order_item_slim_pdf.rb b/app/pdf/order_item_slim_pdf.rb index f419f185..09cce4d1 100644 --- a/app/pdf/order_item_slim_pdf.rb +++ b/app/pdf/order_item_slim_pdf.rb @@ -37,8 +37,12 @@ class OrderItemSlimPdf < Prawn::Document # font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/padauk.ttf" #font "public/fonts/Chinese.ttf" - - text "#{ order_item_slim.type + '-' + order_item_slim.dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + if order_item_slim.dining.to_i > 0 + text "#{ order_item_slim.type + '-' + order_item_slim.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 1 diff --git a/app/pdf/order_set_item_pdf.rb b/app/pdf/order_set_item_pdf.rb index 8f915ad0..6aa6efc4 100644 --- a/app/pdf/order_set_item_pdf.rb +++ b/app/pdf/order_set_item_pdf.rb @@ -37,8 +37,11 @@ class OrderSetItemPdf < Prawn::Document # font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/padauk.ttf" #font "public/fonts/Chinese.ttf" - - text "#{ order_set_item.type + '-' + order_set_item.dining + print_status }", :size => self.header_font_size,:align => :center, :left_margin => -20 + if order_set_item.dining.to_i > 0 + text "#{ order_set_item.type + '-' + order_set_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_set_pdf.rb b/app/pdf/order_summary_set_pdf.rb index 619b81ab..8828ea43 100644 --- a/app/pdf/order_summary_set_pdf.rb +++ b/app/pdf/order_summary_set_pdf.rb @@ -36,8 +36,12 @@ class OrderSummarySetPdf < 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 diff --git a/app/pdf/order_summary_slim_pdf.rb b/app/pdf/order_summary_slim_pdf.rb index b4b850fa..73023278 100644 --- a/app/pdf/order_summary_slim_pdf.rb +++ b/app/pdf/order_summary_slim_pdf.rb @@ -36,8 +36,12 @@ class OrderSummarySlimPdf < 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 1 diff --git a/app/pdf/receipt_bill_a5_pdf.rb b/app/pdf/receipt_bill_a5_pdf.rb index 5655cc38..0f7ea468 100644 --- a/app/pdf/receipt_bill_a5_pdf.rb +++ b/app/pdf/receipt_bill_a5_pdf.rb @@ -110,9 +110,12 @@ class ReceiptBillA5Pdf < Prawn::Document bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do text "Receipt No: #{sale_data.receipt_no}", :size => self.item_font_size,:align => :left end - bounding_box([self.item_description_width, y_position], :width => self.item_description_width, :height => self.item_height) do - text "#{ sale_data.bookings[0].dining_facility.type } - #{ sale_data.bookings[0].dining_facility.name }" , :size => self.item_font_size,:align => :right + if sale_data.bookings[0].dining_facility_id.to_i > 0 + bounding_box([self.item_description_width, y_position], :width => self.item_description_width, :height => self.item_height) do + text "#{ sale_data.bookings[0].dining_facility.type } - #{ sale_data.bookings[0].dining_facility.name }" , :size => self.item_font_size,:align => :right + end end + move_down 10 y_position = cursor @@ -125,8 +128,13 @@ class ReceiptBillA5Pdf < Prawn::Document move_down 10 y_position = cursor + if sale_data.bookings[0].dining_facility_id.to_i > 0 + time =sale_data.receipt_date.strftime('%d-%m-%Y') +"("+ sale_data.bookings[0].checkin_at.utc.getlocal.strftime('%I:%M %p') +"-"+ sale_data.bookings[0].checkout_at.utc.getlocal.strftime('%I:%M %p')+")" + else + time = time = sale_data.receipt_date.strftime('%d-%m-%Y %H:%M %p') + end bounding_box([0,y_position], :width =>self.page_width - 20, :height => self.item_height) do - text "Date : #{ sale_data.receipt_date.strftime('%d-%m-%Y') } ( #{ sale_data.bookings[0].checkin_at.utc.getlocal.strftime('%I:%M %p') } - #{ sale_data.bookings[0].checkout_at.utc.getlocal.strftime('%I:%M %p') } )",:size => self.item_font_size,:align => :left + text "Date : #{ time }",:size => self.item_font_size,:align => :left end diff --git a/app/pdf/receipt_bill_pdf.rb b/app/pdf/receipt_bill_pdf.rb index 64348fe8..31317c0e 100755 --- a/app/pdf/receipt_bill_pdf.rb +++ b/app/pdf/receipt_bill_pdf.rb @@ -129,9 +129,9 @@ class ReceiptBillPdf < Prawn::Document y_position = cursor if sale_data.bookings[0].dining_facility_id.to_i > 0 - time =sale_data.receipt_date.strftime('%d-%m-%Y') +"("+ sale_data.bookings[0].checkin_at.utc.getlocal.strftime('%I:%M %p') +"-"+ sale_data.bookings[0].checkout_at.utc.getlocal.strftime('%I:%M %p')+")" + time = sale_data.receipt_date.strftime('%d-%m-%Y') +"("+ sale_data.bookings[0].checkin_at.utc.getlocal.strftime('%I:%M %p') +"-"+ sale_data.bookings[0].checkout_at.utc.getlocal.strftime('%I:%M %p')+")" else - time = time = sale_data.receipt_date.strftime('%d-%m-%Y %H:%M %p') + time = sale_data.receipt_date.strftime('%d-%m-%Y %H:%M %p') end bounding_box([0,y_position], :width =>self.page_width - 10, :height => self.item_height) do