199 lines
5.3 KiB
Ruby
199 lines
5.3 KiB
Ruby
require 'sidekiq/web'
|
|
|
|
Rails.application.routes.draw do
|
|
|
|
root 'home#index'
|
|
mount Sidekiq::Web => '/kiq'
|
|
|
|
# Action Cable Creation
|
|
mount ActionCable.server => "/cable"
|
|
|
|
#--------- SmartSales Installation ------------#
|
|
get 'install' => 'install#index'
|
|
post 'install' => 'install#create'
|
|
|
|
#--------- Login/Authentication ------------#
|
|
post 'login' => 'home#create'
|
|
delete 'logout' => 'home#destroy'
|
|
get 'dashboard' => 'home#dashboard'
|
|
|
|
|
|
#--------- API Routes ------------#
|
|
namespace :api, :defaults => { :format => 'json' } do
|
|
#Session Login and Logout
|
|
post 'authenticate' => "authenticate#create"
|
|
delete 'authenticate' => "authenticate#destroy"
|
|
|
|
namespace :restaurant do
|
|
get 'zones' => "zones#index"
|
|
resources :menu, only:[:index, :show]
|
|
resources :menu_categories, only: [:index]
|
|
resources :menu_items, only: [:index, :show]
|
|
resources :menu_item_attributes, only: [:index]
|
|
resources :menu_item_options, only: [:index]
|
|
resources :menu_sold_out, only: [:index]
|
|
end
|
|
|
|
#User request move table or bills
|
|
post "bill/:booking_id" => "bill#create"
|
|
post "move" => "move#create"
|
|
|
|
|
|
#Order Controller
|
|
resources :orders, only: [:create, :show, :update] do
|
|
|
|
post "bill" => "bill#create"
|
|
|
|
end
|
|
|
|
#Current active bookings
|
|
resources :bookings, only: [:index, :show, :create, :update]
|
|
resources :customers, only: [:index, :show, :create, :update]
|
|
|
|
#Generating Invoice and making payments - output render @sale
|
|
resources :invoices, only: [:index, :show, :create, :update, :destroy ] do
|
|
resources :sale_items, only:[:create, :update, :destroy]
|
|
resources :discounts, only: [:create, :update, :destroy]
|
|
resources :memberships, only:[:create]
|
|
post "payment/:payment_method" => "payment#create"
|
|
put "payment/:id" => "payment#update"
|
|
resources :receipt, only: [:create, :show] #generate receipt, show receipt
|
|
|
|
end
|
|
|
|
|
|
end
|
|
|
|
#--------- Cashier ------------#
|
|
namespace :origami do
|
|
root "home#index"
|
|
get "/:booking_id" => "home#show" do #origami/:booking_id will show
|
|
resources :payments, only: [:index, :new, :create ] #add payment by payment_method
|
|
resources :discounts, only: [:index,:new, :create ] #add discount type
|
|
resources :customers, only: [:index,:new, :create ] #add customer type
|
|
end
|
|
resources :request_bills, only: [:show]
|
|
get 'sale/:sale_id/payment' => 'request_bills#show'
|
|
end
|
|
|
|
#--------- Waiter/Ordering Station ------------#
|
|
namespace :oishi do
|
|
#zones
|
|
#tables
|
|
#orders
|
|
end
|
|
|
|
#--------- Customer Relationship Management ------------#
|
|
namespace :crm do
|
|
root "home#index" #queue number
|
|
#customers
|
|
resources :customers
|
|
#membership
|
|
#bookings
|
|
post "update_booking" , to: "bookings#update_booking", as: "update_booking"
|
|
#queue
|
|
end
|
|
|
|
#--------- Order Queue Station ------------#
|
|
namespace :oqs do
|
|
root "home#index"
|
|
|
|
post 'update_delivery', to: "home#update_delivery_status"
|
|
|
|
# Pass assigned_order_item_id
|
|
get 'print/print/:id', to: "print#print"
|
|
get 'print/print_order_summary/:id', to: "print#print_order_summary"
|
|
#dashboard
|
|
#
|
|
end
|
|
|
|
#--------- System Settings ------------#
|
|
namespace :settings do
|
|
#employees
|
|
resources :employees
|
|
#menu
|
|
resources :menus do
|
|
#menu_categories
|
|
resources :menu_categories, only: [:new, :create, :edit,:delete]
|
|
end
|
|
|
|
#accounts
|
|
resources :accounts
|
|
|
|
resources :menu_categories do
|
|
#menu_items
|
|
# resources :menu_items
|
|
resources :simple_menu_items
|
|
resources :set_menu_items
|
|
end
|
|
|
|
resources :simple_menu_items do
|
|
resources :menu_item_instances
|
|
end
|
|
resources :set_menu_items do
|
|
resources :menu_item_instances
|
|
end
|
|
#menu_item_attributes
|
|
resources :menu_item_attributes
|
|
#menu_item_options
|
|
resources :menu_item_options
|
|
#tax_profiles
|
|
resources :tax_profiles
|
|
#lookups
|
|
resources :lookups
|
|
#cashier_terminals
|
|
resources :cashier_terminals
|
|
#order_job_stations
|
|
|
|
#order_queue_stations
|
|
resources :order_queue_stations do
|
|
resources :processing_items, :only => [:new, :create]
|
|
end
|
|
#payment method settings
|
|
resources :payment_method_settings
|
|
#membership_settings
|
|
resources :membership_settings
|
|
#zones
|
|
resources :zones do
|
|
#tables
|
|
resources :tables
|
|
#rooms
|
|
resources :rooms
|
|
end
|
|
|
|
end
|
|
#--------- Transactions Sections ------------#
|
|
namespace :transactions do
|
|
resources :sales
|
|
end
|
|
|
|
#--------- Reports Controller Sections ------------#
|
|
namespace :reports do
|
|
resources :sales, :only => [:index, :show]
|
|
resources :orders, :only => [:index, :show]
|
|
resources :customers, :only => [:index, :show]
|
|
resources :products, :only => [:index, :show]
|
|
resources :inventory, :only => [:index, :show]
|
|
resources :employees, :only => [:index, :show]
|
|
end
|
|
|
|
#mount_compendium at: '/report' #, controller: 'reports'
|
|
|
|
#--------- Reports ------------#
|
|
# namespace :reports do
|
|
# #dashboard
|
|
# #sales
|
|
# #orders
|
|
# #shifts
|
|
# resources :shifts do
|
|
# resources :orders
|
|
# resources :sales
|
|
# end
|
|
# end
|
|
|
|
#----------- Print Setup --------#
|
|
resources :print_settings
|
|
|
|
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
|
|
end
|