class Origami::CreditPaymentsController < BaseOrigamiController def index @sale_id = params[:sale_id] # limit visa_amount sale_data = Sale.find_by_sale_id(@sale_id) total = sale_data.grand_total @creditcount = 0 others = 0 @shop = Shop::ShopDetail if @shop.is_rounding_adj new_total = Sale.get_rounding_adjustment(sale_data.grand_total) else new_total = sale_data.grand_total end @rounding_adj = new_total-sale_data.grand_total sale_data.sale_payments.each do |sale_payment| if sale_payment.payment_method == "creditnote" @creditcount = @creditcount + sale_payment.payment_amount else others = others + sale_payment.payment_amount end end @can_credit = total - @creditcount - others end def create cash = params[:amount] sale_id = params[:sale_id] if(Sale.exists?(sale_id)) saleObj = Sale.find(sale_id) shop_details = Shop::ShopDetail # rounding adjustment if shop_details.is_rounding_adj new_total = Sale.get_rounding_adjustment(saleObj.grand_total) rounding_adj = new_total-saleObj.grand_total saleObj.update_attributes(grand_total: new_total,old_grand_total: saleObj.grand_total,rounding_adjustment:rounding_adj) end saleObj = Sale.find(sale_id) sale_payment = SalePayment.new @status, @sale = sale_payment.process_payment(saleObj, @user, cash, "creditnote") end end end