class Origami::OtherChargesController < ApplicationController 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.product_alt_name = "" sale_item.remark = "Other Charges" sale_item.qty = 1 sale_item.unit_price = di["price"] sale_item.taxable_price = 0 sale_item.is_taxable = 0 sale_item.account_id = 0 sale_item.price = di["price"] sale_item.save end end # Re-calc All Amount in Sale sale.compute_by_sale_items(sale_id, sale.sale_items, sale.total_discount) end dining = {:table_id => table_id, :table_type => table_type } render :json => dining.to_json end end