add other charges

This commit is contained in:
Yan
2017-06-30 13:29:55 +06:30
parent dd95b29d7d
commit 9c1a324eff
6 changed files with 418 additions and 12 deletions

View File

@@ -68,8 +68,8 @@ class Api::OrdersController < Api::ApiController
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
# puts "WWwwWWWWWWww"
# puts sale_status
if sale_status
return return_json_status_with_code(400, "bill requested")
end
@@ -79,8 +79,8 @@ class Api::OrdersController < Api::ApiController
end
else
sale_status = check_order_with_table(params[:table_id])
puts "OOOOOOOOO"
puts sale_status
# puts "OOOOOOOOO"
# puts sale_status
if sale_status
return return_json_status_with_code(400, "bill requested")
end
@@ -88,8 +88,8 @@ class Api::OrdersController < Api::ApiController
end #booking exists
else
sale_status = check_order_with_table(params[:table_id])
puts "MMMMMMMM"
puts sale_status
# puts "MMMMMMMM"
# puts sale_status
if sale_status
# return false , @message = "bill requested"
return return_json_status_with_code(400, "bill requested")
@@ -109,13 +109,13 @@ class Api::OrdersController < Api::ApiController
def check_order_with_table(table_id)
table = DiningFacility.find(table_id)
if table
booking = table.get_moved_booking
puts booking
booking = table.get_current_booking
# puts booking
if booking
if !booking.sale_id.nil?
if booking.sale.sale_status == "completed" || booking.sale.sale_status == "new"
@order.new_booking = true
return true
return false
end
else
@order.new_booking = false
@@ -130,7 +130,7 @@ class Api::OrdersController < Api::ApiController
def check_order_with_booking(booking)
if booking.sale.sale_status == "completed" || booking.sale.sale_status == "new"
@order.new_booking = true
return true
return false
else
@order.new_booking = false
@order.booking_id = params[:booking_id]

View File

@@ -0,0 +1,48 @@
class Origami::OtherChargesController < BaseOrigamiController
authorize_resource :class => false
def index
sale_id = params[:sale_id]
if Sale.exists?(sale_id)
@sale_data = Sale.find(sale_id)
end
end
def create
sale_id = params[:sale_id]
other_charges_items = JSON.parse(params[:other_charges_items])
sub_total = params[:sub_total]
if Sale.exists?(sale_id)
sale = Sale.find(sale_id)
table_id = sale.bookings[0].dining_facility_id
table_type = DiningFacility.find(table_id).type
sale.total_amount = sub_total.to_f
sale.grand_total = sub_total.to_f + sale.total_tax;
sale.save
if other_charges_items.length > 0
#save sale item for discount
other_charges_items.each do |di|
# origin_sale_item = SaleItem.find(di["id"])
sale_item = SaleItem.new
sale_item.sale_id = sale_id
sale_item.product_code = "Other Charges"
sale_item.product_name = di["name"]
sale_item.remark = "Other Charges"
sale_item.qty = 1
sale_item.unit_price = di["price"]
sale_item.taxable_price = di["price"]
sale_item.is_taxable = 0
sale_item.price = di["price"]
sale_item.save
end
end
end
dining = {:table_id => table_id, :table_type => table_type }
render :json => dining.to_json
end
end