51 lines
1.3 KiB
Ruby
51 lines
1.3 KiB
Ruby
# config/routes.rb
|
|
Rails.application.routes.draw do
|
|
# Devise — login padrão para admin/gerente/operador
|
|
devise_for :users, path: 'auth', path_names: {
|
|
sign_in: 'login',
|
|
sign_out: 'logout',
|
|
password: 'senha'
|
|
}
|
|
|
|
# Root — redireciona por role
|
|
root 'dashboard#index'
|
|
|
|
# Dashboard principal (admin/gerente/operador)
|
|
get '/dashboard', to: 'dashboard#index', as: :dashboard
|
|
|
|
# Painel motorista
|
|
get '/motorista', to: 'motorista/dashboard#index', as: :motorista_dashboard
|
|
|
|
# Consolidações
|
|
resources :consolidacoes do
|
|
member do
|
|
post :finalizar
|
|
post :arquivar
|
|
get :preview_holerite
|
|
get :gerar_pdf_relatorio
|
|
get :gerar_pdf_holerite
|
|
end
|
|
|
|
resources :consolidacao_motoristas, only: [:index, :show] do
|
|
resources :consolidacao_entregas, only: [:index, :create, :update]
|
|
end
|
|
end
|
|
|
|
# Configurações (apenas admin/gerente)
|
|
namespace :admin do
|
|
resources :usuarios, except: [:show]
|
|
resources :configuracoes, only: [:index, :update]
|
|
resources :auditoria_logs, only: [:index]
|
|
end
|
|
|
|
# API interna — Dashboard métricas
|
|
namespace :api do
|
|
namespace :v1 do
|
|
get 'dashboard/metricas', to: 'dashboard#metricas'
|
|
end
|
|
end
|
|
|
|
# Health check (Docker)
|
|
get '/health', to: proc { [200, {}, ['OK']] }
|
|
end
|