From d58f7d1605793efd3df74d298d8fee5d17b23a5a Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Thu, 28 Dec 2017 16:21:49 +0630 Subject: [PATCH] update addord for extra time --- .../origami/addorders_controller.rb | 67 ++++++++++++------- app/models/order.rb | 2 +- db/seeds.rb | 21 ++++-- 3 files changed, 60 insertions(+), 30 deletions(-) diff --git a/app/controllers/origami/addorders_controller.rb b/app/controllers/origami/addorders_controller.rb index d283b06e..ece423c7 100755 --- a/app/controllers/origami/addorders_controller.rb +++ b/app/controllers/origami/addorders_controller.rb @@ -62,9 +62,25 @@ class Origami::AddordersController < ApplicationController#BaseOrigamiController def create Rails.logger.debug "Order Source - " + params[:order_source].to_s Rails.logger.debug "Table ID - " + params[:table_id].to_s - puts params[:order_items] + extra_time = false + time = '' + items_arr = [] JSON.parse(params[:order_items]).each { |i| + if i["item_instance_code"] == 'Exti60' || i["item_instance_code"] == 'Exti30' + extra_time = true + if i["item_instance_code"] == 'Exti30' + t = Time.now + time = 30*i["quantity"] + puts time + puts "timmmmmmmmmmmmmmmmmmm" + else + t = Time.now + time = 1*i["quantity"] + puts time + puts "timmmmmmmmmmmmmmmmmmm" + end + end items = {"order_item_id": i["order_item_id"],"item_instance_code": i["item_instance_code"],"quantity": i["quantity"],"options": i["options"]} items_arr.push(items) } @@ -78,35 +94,38 @@ class Origami::AddordersController < ApplicationController#BaseOrigamiController @order.guest = params[:guest_info] @order.table_id = params[:table_id] # this is dining facilities's id @order.new_booking = true + @order.extra_time = true @order.waiters = current_login_employee.name @order.employee_name = current_login_employee.name #Create Table Booking or Room Booking if !params["booking_id"].nil? - # check booking id is already completed. - booking = Booking.find(params[:booking_id]) - if booking - if booking.dining_facility_id.to_i == params[:table_id].to_i && booking.booking_status != 'moved' - if !booking.sale_id.nil? - sale_status = check_order_with_booking(booking) - # puts "WWwwWWWWWWww" - # puts sale_status - if sale_status - return return_json_status_with_code(400, "bill requested") + # check booking id is already completed. + booking = Booking.find(params[:booking_id]) + puts "ssssssssssssssssssss" + if booking + if booking.dining_facility_id.to_i == params[:table_id].to_i && booking.booking_status != 'moved' + if !booking.sale_id.nil? + sale_status = check_order_with_booking(booking) + puts "WWwwWWWWWWww" + puts sale_status + if sale_status + return return_json_status_with_code(400, "bill requested") + end + else + @order.new_booking = false + @order.booking_id = params[:booking_id] + end + else + sale_status = check_order_with_table(params[:table_id]) + puts "OOOOOOOOO" + puts sale_status + if sale_status + return return_json_status_with_code(400, "bill requested") + end end - else - @order.new_booking = false - @order.booking_id = params[:booking_id] - end - else - sale_status = check_order_with_table(params[:table_id]) - # puts "OOOOOOOOO" - # puts sale_status - if sale_status - return return_json_status_with_code(400, "bill requested") - end - end - end #booking exists + end #booking exists else + puts "seeeeeeeeeeeeeeeeee" sale_status = check_order_with_table(params[:table_id]) # puts "MMMMMMMM" # puts sale_status diff --git a/app/models/order.rb b/app/models/order.rb index ba8adc8f..676c129f 100755 --- a/app/models/order.rb +++ b/app/models/order.rb @@ -10,7 +10,7 @@ class Order < ApplicationRecord has_many :assigned_order_items #internal references attributes for business logic control - attr_accessor :items, :guest, :table_id, :new_booking, :booking_type, :employee_name, :booking_id + attr_accessor :items, :guest, :table_id, :new_booking, :booking_type, :employee_name, :booking_id, :extra_time scope :active, -> { where("date BETWEEN '#{DateTime.now.utc.end_of_day}' AND '#{DateTime.now.utc.beginning_of_day}'") } #Main Controller method to create new order - validate all inputs and generate new order # order_item : { diff --git a/db/seeds.rb b/db/seeds.rb index 79aab88f..78321b72 100755 --- a/db/seeds.rb +++ b/db/seeds.rb @@ -140,10 +140,11 @@ menu_options = MenuItemOption.create([{option_type: "Oil", name: "Less Oil", val menu_pkg_options = MenuItemOption.create([{option_type: "Package", name: "Bottle", value: "Bottle"},{option_type: "Package", name: "Can", value: "can"}]) # #Default Menu Category - # menu_category1 = MenuCategory.create({menu: menu, code:"C001", name: "Person", alt_name: "Person", order_by: 1, is_available: 1, created_by: "SYSTEM DEFAULT"}) +# menu_category1 = MenuCategory.create({menu: menu, code:"C001", name: "Person", alt_name: "Person", order_by: 1, is_available: 1, created_by: "SYSTEM DEFAULT"}) # menu_category2 = MenuCategory.create({menu: menu, code:"C005", name: "Beef & Mutton", alt_name: "Beef_and_mutton", order_by: 2,created_by: "SYSTEM DEFAULT"}) # menu_category3 = MenuCategory.create({menu: menu, code:"C006", name: "Pork", alt_name: "Pork", order_by: 3,created_by: "SYSTEM DEFAULT"}) # menu_category4 = MenuCategory.create({menu: menu, code:"C006", name: "Chicken", alt_name: "Chicken", order_by: 1, menu_category_id: menu_category3.id, created_by: "SYSTEM DEFAULT"}) +# menu_category5 = MenuCategory.create({menu: menu, code:"C001", name: "Extra Time", alt_name: "Extra Time", order_by: 1, is_available: 1, created_by: "SYSTEM DEFAULT"}) # # #Default Menu items # menu_category1_menu_item0 = SimpleMenuItem.create({item_code:"01001", name: "Single Pot", alt_name: "Single Pot",menu_category: menu_category1 , min_selectable_item: 1, max_selectable_item:1, account: food }) @@ -162,11 +163,21 @@ menu_pkg_options = MenuItemOption.create([{option_type: "Package", name: "Bottle # menu_item_attribute_adult = MenuItemAttribute.create({attribute_type:"person", name: "Adult", value: "adult"}) # menu_item_attribute_child = MenuItemAttribute.create({attribute_type:"person", name: "Child", value: "child"}) - # menu_category1_menu_item0 = SimpleMenuItem.create({item_code:"P00001", name: "Adult", alt_name: "",menu_category: menu_category1 , min_qty: 1, account: person, :item_attributes => "['1']", created_by: "System" }) - # menu_item0_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"PI0001", menu_item: menu_category1_menu_item0, price:15000.00, is_on_promotion:false, is_default:true, :item_attributes => "['1']" }) +# menu_category1_menu_item0 = SimpleMenuItem.create({item_code:"P00001", name: "Adult", alt_name: "",menu_category: menu_category1 , min_qty: 1, account: person, :item_attributes => "['1']", created_by: "System" }) +# menu_item0_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"PI0001", menu_item: menu_category1_menu_item0, price:15000.00, is_on_promotion:false, is_default:true, :item_attributes => "['1']" }) + +# menu_category1_menu_item1 = SimpleMenuItem.create({item_code:"P00002", name: "Child", alt_name: "",menu_category: menu_category1 , min_qty: 1, account: person, :item_attributes => "['2']", created_by: "System" }) +# menu_item1_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"PI0002", menu_item: menu_category1_menu_item1, price:10000.00, is_on_promotion:false, is_default:true, :item_attributes => "['2']" }) + +# menu_item_attribute_30_min = MenuItemAttribute.create({attribute_type:"Extra Time", name: "30 min", value: "30_min"}) +# menu_item_attribute_60_min = MenuItemAttribute.create({attribute_type:"Extra Time", name: "1 hrs", value: "60_min"}) + +# menu_category1_menu_item2 = SimpleMenuItem.create({item_code:"Ext30", name: "30 minutes", alt_name: "",menu_category: menu_category5 , min_qty: 1, account: extra_time, :item_attributes => "['1']", created_by: "System" }) +# menu_item0_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"Exti30", menu_item: menu_category1_menu_item2, price:15000.00, is_on_promotion:false, is_default:true, :item_attributes => "['1']" }) + +# menu_category1_menu_item3 = SimpleMenuItem.create({item_code:"Ext60", name: "1 hour", alt_name: "",menu_category: menu_category5 , min_qty: 1, account: extra_time, :item_attributes => "['2']", created_by: "System" }) +# menu_item1_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"Exti60", menu_item: menu_category1_menu_item3, price:10000.00, is_on_promotion:false, is_default:true, :item_attributes => "['2']" }) - # menu_category1_menu_item1 = SimpleMenuItem.create({item_code:"P00002", name: "Child", alt_name: "",menu_category: menu_category1 , min_qty: 1, account: person, :item_attributes => "['2']", created_by: "System" }) - # menu_item1_instance = MenuItemInstance.create({item_instance_name:"",item_instance_code:"PI0002", menu_item: menu_category1_menu_item1, price:10000.00, is_on_promotion:false, is_default:true, :item_attributes => "['2']" }) # END menu_item_attribute_size_small = MenuItemAttribute.create({attribute_type:"size", name: "Small", value: "small"})