78 lines
3.1 KiB
Ruby
78 lines
3.1 KiB
Ruby
class Origami::DashboardController < BaseOrigamiController
|
|
|
|
def index
|
|
@shop = Shop.first
|
|
|
|
today = DateTime.now.strftime('%Y-%m-%d')
|
|
# @orders = Sale::where("payment_status='new' and sale_status='bill' and DATE_FORMAT(receipt_date,'%Y-%m-%d') = '#{today}'").count()
|
|
# @sales = Sale::where("payment_status='paid' and sale_status='completed' and DATE_FORMAT(receipt_date,'%Y-%m-%d') = '#{today}'").count()
|
|
|
|
# @top_products = Sale.top_products(today).sum('i.qty')
|
|
# @bottom_products = Sale.bottom_products(today).sum('i.qty')
|
|
# @hourly_sales = Sale.hourly_sales(today).sum(:grand_total)
|
|
# .group_by_hour(:created_at, :time_zone => 'Asia/Rangoon',format: '%I:%p')
|
|
# .sum(:grand_total)
|
|
# @employee_sales = Sale.employee_sales(today)
|
|
# .sum('(CASE WHEN sp.payment_method="cash" THEN (sp.payment_amount - sales.amount_changed) ELSE sp.payment_amount END)')
|
|
# @inventories = StockJournal.inventory_balances(today).sum(:balance)
|
|
|
|
@total_sale = Sale.total_sale(today)
|
|
@total_count = Sale.total_count(today)
|
|
@total_card = Sale.total_card_sale(today)
|
|
@total_credit = Sale.credit_payment(today)
|
|
|
|
@sale_data = Array.new
|
|
@total_payment_methods = Sale.total_payment_methods(today)
|
|
|
|
@total_payment_methods.each do |payment|
|
|
if payment.payment_method == "mpu" || payment.payment_method == "visa" || payment.payment_method == "master" || payment.payment_method == "jcb"
|
|
pay = Sale.payment_sale('card', today)
|
|
@sale_data.push({'card' => pay.payment_amount})
|
|
else
|
|
pay = Sale.payment_sale(payment.payment_method, today)
|
|
@sale_data.push({payment.payment_method => pay.payment_amount})
|
|
end
|
|
end
|
|
@summ_sale = Sale.summary_sale_receipt(today)
|
|
@total_customer = Sale.total_customer(today)
|
|
@total_dinein = Sale.total_dinein(today)
|
|
@total_takeaway = Sale.total_takeaway(today)
|
|
@total_other_customer = Sale.total_other_customer(today)
|
|
@total_membership = Sale.total_membership(today)
|
|
|
|
@total_order = Sale.total_order(today)
|
|
@total_accounts = Sale.total_account(today)
|
|
@account_data = Array.new
|
|
@total_accounts.each do |account|
|
|
acc = Sale.account_data(account.account_id, today)
|
|
if !acc.nil?
|
|
@account_data.push({account.title => acc.cnt_acc, account.title + '_amount' => acc.total_acc})
|
|
end
|
|
end
|
|
|
|
@top_items = Sale.top_items(today)
|
|
@total_foc_items = Sale.total_foc_items(today)
|
|
|
|
# get printer info
|
|
@print_settings = PrintSetting.get_precision_delimiter()
|
|
@current_user = current_user
|
|
#quick service
|
|
quick_service = Lookup.collection_of('quick_service')
|
|
@quick_service = 0
|
|
if !quick_service[0].nil?
|
|
@quick_service = quick_service[0][1]
|
|
end
|
|
#order reservation
|
|
order_reservation = Lookup.collection_of('order_reservation')
|
|
@order_reservation = 0
|
|
if !order_reservation.empty?
|
|
order_reservation.each do |order_reserve|
|
|
if order_reserve[0] == 'OrderReservation'
|
|
@order_reservation = order_reserve[1]
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
end
|