implantação da fase 2 e 3

This commit is contained in:
2026-06-10 20:12:20 -03:00
parent d37237ead2
commit 472484798f
33 changed files with 2915 additions and 430 deletions

View File

@@ -1,50 +1,58 @@
# 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'
}
# Devise com controller customizado para sessões
devise_for :users,
controllers: {
sessions: 'users/sessions'
}
# Root — redireciona por role
root 'dashboard#index'
# Root
authenticated :user do
root 'dashboard#index', as: :authenticated_root
end
root 'devise/sessions#new'
# Dashboard principal (admin/gerente/operador)
# Dashboard (Fase 3)
get '/dashboard', to: 'dashboard#index', as: :dashboard
# Painel motorista
get '/motorista', to: 'motorista/dashboard#index', as: :motorista_dashboard
# Painel motorista (Fase 2 / 8)
get '/motorista', to: 'motorista#index', as: :motorista
# Consolidações
# Usuários (Fase 2)
resources :usuarios do
member do
post :toggle_ativo
end
end
# Configurações (Fase 2)
resources :configuracoes, only: [:index, :edit, :update] do
collection do
post :toggle_tema
end
end
# Consolidações (Fases 5 e 6)
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]
patch :fechar
patch :aprovar
patch :cancelar
post :reabrir
end
resources :consolidacao_motoristas, only: [:create, :update, :destroy], shallow: true
end
# Configurações (apenas admin/gerente)
namespace :admin do
resources :usuarios, except: [:show]
resources :configuracoes, only: [:index, :update]
resources :auditoria_logs, only: [:index]
end
# Histórico estimado (Fase 4)
resources :historico_estimados, only: [:index, :show]
# API interna — Dashboard métricas
namespace :api do
namespace :v1 do
get 'dashboard/metricas', to: 'dashboard#metricas'
end
end
# Logs de auditoria (Fase 4)
resources :auditoria_logs, only: [:index, :show]
# Health check (Docker)
get '/health', to: proc { [200, {}, ['OK']] }
# PDFs (Fase 7)
# get '/consolidacoes/:id/pdf', to: 'pdfs#consolidacao', as: :pdf_consolidacao
# get '/consolidacao_motoristas/:id/pdf', to: 'pdfs#holerite', as: :pdf_holerite
# Health check
get '/health', to: proc { [200, {}, ['ok']] }
end