final format
This commit is contained in:
@@ -59,9 +59,14 @@ class Order < ApplicationRecord
|
|||||||
def adding_line_items
|
def adding_line_items
|
||||||
|
|
||||||
if self.items
|
if self.items
|
||||||
|
#re-order to
|
||||||
|
ordered_list = re_order_items(self.items)
|
||||||
|
|
||||||
#loop to add all items to order
|
#loop to add all items to order
|
||||||
self.items.each do |item|
|
self.items.each do |item|
|
||||||
menu_item = MenuItem.search_by_item_code(item[:item_instance_code])
|
menu_item = MenuItem.search_by_item_code(item[:item_instance_code])
|
||||||
|
|
||||||
|
#if (!menu_item.nil?)
|
||||||
Rails.logger.debug menu_item
|
Rails.logger.debug menu_item
|
||||||
set_order_items = nil
|
set_order_items = nil
|
||||||
##If menu Item set item - must add child items to order as well, where price is only take from menu_item
|
##If menu Item set item - must add child items to order as well, where price is only take from menu_item
|
||||||
@@ -69,12 +74,11 @@ class Order < ApplicationRecord
|
|||||||
set_order_items
|
set_order_items
|
||||||
end
|
end
|
||||||
|
|
||||||
if (menu_item)
|
|
||||||
|
|
||||||
OrderItem.processs_item(menu_item[:item_code], menu_item[:name],
|
OrderItem.processs_item(menu_item[:item_code], menu_item[:name],
|
||||||
item[:quantity],menu_item[:price], item[:options], set_order_items, self.id,
|
item[:quantity],menu_item[:price], item[:options], set_order_items, self.id,
|
||||||
self.employee_name)
|
self.employee_name)
|
||||||
end
|
|
||||||
|
#end
|
||||||
end
|
end
|
||||||
|
|
||||||
self.item_count = self.order_items.count
|
self.item_count = self.order_items.count
|
||||||
@@ -110,6 +114,69 @@ class Order < ApplicationRecord
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
protected
|
||||||
|
def re_order_items(form_items) #reorder inputs items as parents and child
|
||||||
|
parent_id = Array.new
|
||||||
|
parents = Array.new
|
||||||
|
parents_and_children_items = Array.new
|
||||||
|
|
||||||
|
new_items_list = Array.new
|
||||||
|
|
||||||
|
form_items.each do |parent|
|
||||||
|
if !parent[:parent_order_item_id].nil?
|
||||||
|
if (!parent_id.include?(parent[:parent_order_item_id]))
|
||||||
|
parent_id.push(parent[:parent_order_item_id])
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
Rails.logger.debug "Parent Id count -> " + parent_id.count.to_s
|
||||||
|
|
||||||
|
|
||||||
|
parent_id.each do |pid|
|
||||||
|
form_items.each do |item|
|
||||||
|
Rails.logger.debug "Adding - Parents -> " + pid.to_s + " - " + item[:order_item_id].to_s
|
||||||
|
if (pid == item[:order_item_id])
|
||||||
|
parents.push(item)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
Rails.logger.debug "Parents count -> " + parents.count.to_s
|
||||||
|
|
||||||
|
parents.each do |parent|
|
||||||
|
children = Array.new
|
||||||
|
form_items.each do |item|
|
||||||
|
if (parent[:order_item_id] == item[:parent_order_item_id] )
|
||||||
|
children.push(item)
|
||||||
|
#Items to remove for new list
|
||||||
|
parents_and_children_items.push(item)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
parent[:sub_items] = children
|
||||||
|
end
|
||||||
|
Rails.logger.debug "Parent/children Items to remove -> " + parents_and_children_items.count.to_s
|
||||||
|
|
||||||
|
#Remove process items
|
||||||
|
#c = a.reject{ |e| b.include? e }
|
||||||
|
|
||||||
|
new_items_list = form_items - parents_and_children_items
|
||||||
|
|
||||||
|
|
||||||
|
Rails.logger.debug "New list count -> " + new_items_list.count.to_s
|
||||||
|
|
||||||
|
#Add parent to the list
|
||||||
|
#new_items_list = new_items_list + parents
|
||||||
|
|
||||||
|
Rails.logger.debug "Re-Order List (Parent)-"
|
||||||
|
|
||||||
|
Rails.logger.debug parents
|
||||||
|
|
||||||
|
Rails.logger.debug "Re-Order List -"
|
||||||
|
Rails.logger.debug new_items_list
|
||||||
|
|
||||||
|
return new_items_list
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def validate_api_inputs
|
def validate_api_inputs
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
require 'cups'
|
|
||||||
|
|
||||||
class PrintWorker
|
|
||||||
def self.printers()
|
|
||||||
Cups.show_destinations
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.default_printer()
|
|
||||||
Cups.default_printer
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.print_receipt_cashgo(sale,receipt_setting, printer_destination,order_id)
|
|
||||||
|
|
||||||
pdf = CashPdf.new(sale,receipt_setting,order_id)
|
|
||||||
pdf.render_file "tmp/receipt_#{sale.receipt_no}" + ".pdf"
|
|
||||||
|
|
||||||
page = Cups::PrintJob.new("tmp/receipt_#{sale.receipt_no}.pdf", printer_destination)
|
|
||||||
page.print
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -217,6 +217,8 @@
|
|||||||
<div class="card-block">
|
<div class="card-block">
|
||||||
<h4 class="card-title">Card title that wraps to a new line</h4>
|
<h4 class="card-title">Card title that wraps to a new line</h4>
|
||||||
<p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
|
<p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
|
||||||
|
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div class="card">
|
||||||
|
|||||||
@@ -4,19 +4,22 @@
|
|||||||
"item_instance_code"=>"II0021",
|
"item_instance_code"=>"II0021",
|
||||||
"quantity"=>1,
|
"quantity"=>1,
|
||||||
"options"=>[]},
|
"options"=>[]},
|
||||||
|
|
||||||
{"order_item_id"=>2,
|
{"order_item_id"=>2,
|
||||||
"item_instance_code"=>"II0042",
|
"item_instance_code"=>"II0042",
|
||||||
"quantity"=>1, "parent_order_item_id"=>1,
|
"quantity"=>1, "parent_order_item_id"=>1,
|
||||||
"options"=>[]},
|
"options"=>[]},
|
||||||
|
|
||||||
{"order_item_id"=>3,
|
{"order_item_id"=>3,
|
||||||
"item_instance_code"=>"II0053",
|
"item_instance_code"=>"II0053",
|
||||||
"quantity"=>1,
|
"quantity"=>1,
|
||||||
"parent_order_item_id"=>1,
|
"parent_order_item_id"=>1,
|
||||||
"options"=>["mild spicy"]},
|
"options"=>["mild spicy"]},
|
||||||
|
|
||||||
{"order_item_id"=>4,
|
{"order_item_id"=>4,
|
||||||
"item_instance_code"=>"II0031",
|
"item_instance_code"=>"II0031",
|
||||||
"quantity"=>1, "options"=>[]},
|
"quantity"=>1, "options"=>[]},
|
||||||
|
|
||||||
{"order_item_id"=>5,
|
{"order_item_id"=>5,
|
||||||
"item_instance_code"=>"II0073",
|
"item_instance_code"=>"II0073",
|
||||||
"quantity"=>1, "parent_order_item_id"=>4, "options"=>[]}],
|
"quantity"=>1, "parent_order_item_id"=>4, "options"=>[]}]
|
||||||
"order"=>{"order_type"=>"dine_in", "customer_id"=>"", "guest_info"=>""}}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user