68 lines
2.6 KiB
Ruby
Executable File
68 lines
2.6 KiB
Ruby
Executable File
class Reports::CreditPaymentController < BaseReportController
|
|
authorize_resource :class => false
|
|
def index
|
|
@filter_for_credit = [['All',''],['Paid','paid'],['Unpaid','unpaid']]
|
|
@sources = [["All",''], ["Cashier","cashier"],["Quick Service","quick_service"],["Online Order","doemal_order"]]
|
|
from, to = get_date_range_from_params
|
|
customer_filter = params[:customer]
|
|
|
|
@shift_sale_range = Sale.get_by_shift_sale_by_item(from,to,Sale::SALE_STATUS_COMPLETED)
|
|
|
|
@shift = ''
|
|
if params[:shift_name].to_i != 0
|
|
shift_sale = ShiftSale.find(params[:shift_name])
|
|
if to.blank?
|
|
@shift = ShiftSale.where("shift_started_at = ? and shift_closed_at is NULL",shift_sale.shift_started_at)
|
|
else
|
|
@shift = ShiftSale.where("shift_started_at = ? and shift_closed_at = ?",shift_sale.shift_started_at, shift_sale.shift_closed_at)
|
|
end
|
|
end
|
|
|
|
@filter = params[:filter_check]
|
|
@order_source = params[:order_source]
|
|
@sale_data = Sale.get_by_shift_sale_credit_payment(@shift_sale_range,@shift,from,to,@filter,customer_filter,@order_source)
|
|
|
|
@from = from
|
|
@to = to
|
|
|
|
# get printer info
|
|
@print_settings = PrintSetting.get_precision_delimiter()
|
|
if @shift.present?
|
|
@shift.each do |sh|
|
|
@shift_from = sh.shift_started_at.nil? ? '-' : sh.shift_started_at.utc.getlocal.strftime("%e %b %I:%M%p")
|
|
@shift_to = sh.shift_closed_at.nil? ? '-' : sh.shift_closed_at.utc.getlocal.strftime("%e %b %I:%M%p")
|
|
@shift_data = sh
|
|
end
|
|
end
|
|
|
|
respond_to do |format|
|
|
format.html
|
|
format.xls
|
|
end
|
|
end
|
|
|
|
def show
|
|
from, to = get_date_range_from_params
|
|
|
|
@sale_data = Sale.get_by_shift_sale_by_item(from,to,Sale::SALE_STATUS_COMPLETED)
|
|
|
|
date_arr = Array.new
|
|
@sale_data.each do |sale|
|
|
local_opening_date = sale.opening_date.nil? ? '-' : sale.opening_date.utc.getlocal.strftime("%e %b %I:%M%p")
|
|
local_closing_date = sale.closing_date.nil? ? '-' : sale.closing_date.utc.getlocal.strftime("%e %b %I:%M%p")
|
|
opening_date = sale.opening_date.nil? ? '-' : sale.opening_date.utc
|
|
closing_date = sale.closing_date.nil? ? '-' : sale.closing_date.utc
|
|
shift_id = sale.id.nil? ? '-' : sale.id
|
|
str = {:shift_id => shift_id, :local_opening_date => local_opening_date, :local_closing_date => local_closing_date, :opening_date => opening_date, :closing_date => closing_date}
|
|
date_arr.push(str)
|
|
end
|
|
|
|
out = {:status => 'ok', :message => date_arr}
|
|
|
|
respond_to do |format|
|
|
format.json { render json: out }
|
|
end
|
|
end
|
|
|
|
end
|