foodsoft/config/routes.rb

302 lines
8.5 KiB
Ruby
Raw Normal View History

# rubocop:disable Metrics/BlockLength
2020-09-04 12:57:19 +02:00
Rails.application.routes.draw do
mount Rswag::Ui::Engine => '/api-docs'
mount Rswag::Api::Engine => '/api-docs'
get 'order_comments/new'
2011-06-19 20:47:27 +02:00
get 'comments/new'
2011-06-19 20:47:27 +02:00
get 'sessions/new'
2015-01-02 17:40:21 +01:00
root to: 'sessions#redirect_to_foodcoop', as: nil
scope '/:foodcoop' do
2018-10-13 20:16:35 +02:00
use_doorkeeper
# Root path
2015-01-02 17:40:21 +01:00
root to: 'home#index'
########### Sessions
2015-01-02 17:40:21 +01:00
get '/login' => 'sessions#new', as: 'login'
get '/logout' => 'sessions#destroy', as: 'logout'
get '/login/forgot_password' => 'login#forgot_password', as: :forgot_password
post '/login/reset_password' => 'login#reset_password', as: :reset_password
get '/login/new_password' => 'login#new_password', as: :new_password
patch '/login/update_password' => 'login#update_password', as: :update_password
match '/login/accept_invitation/:token' => 'login#accept_invitation', as: :accept_invitation, via: %i[get post]
resources :sessions, only: %i[new create destroy]
2015-01-02 17:40:21 +01:00
get '/foodcoop.css' => 'styles#foodcoop', as: 'foodcoop_css'
2014-08-22 12:06:35 +02:00
########### User specific
2009-01-06 11:49:19 +01:00
2015-01-02 17:40:21 +01:00
get '/home/profile', as: 'my_profile'
2019-11-11 12:09:18 +01:00
get '/home/reference_calculator'
2015-01-02 17:40:21 +01:00
patch '/home/update_profile', as: 'update_profile'
get '/home/ordergroup' => 'home#ordergroup', as: 'my_ordergroup'
post '/home/cancel_membership' => 'home#cancel_membership', as: 'cancel_membership'
############ Orders, ordering
resources :orders do
member do
post :finish
post :add_comment
post :send_result_to_supplier
2013-12-18 21:06:05 +01:00
get :receive
post :receive
get :custom_csv
get :receive_on_order_article_create
get :receive_on_order_article_update
end
resources :order_articles
end
2017-11-06 18:07:36 +01:00
resources :pickups, only: [:index] do
post :document, on: :collection
end
resources :group_orders do
2015-01-02 17:40:21 +01:00
get :archive, on: :collection
end
resources :group_order_articles
resources :order_comments, only: %i[new create]
2011-06-19 20:47:27 +02:00
############ Foodcoop orga
resources :invites, only: %i[new create]
resources :tasks do
collection do
get :user
get :archive
get :workgroup
end
2012-10-08 21:52:03 +02:00
member do
post :accept
post :reject
post :set_done
end
end
namespace :foodcoop do
2015-01-02 17:40:21 +01:00
root to: 'users#index'
2015-01-02 17:40:21 +01:00
resources :users, only: [:index]
2015-01-02 17:40:21 +01:00
resources :ordergroups, only: [:index]
2009-01-06 11:49:19 +01:00
resources :workgroups, only: %i[index edit update]
end
########### Article management
resources :stock_takings do
collection do
get :new_on_stock_article_create
end
end
2015-01-02 17:40:21 +01:00
resources :stock_articles, controller: 'stockit' do
get :copy
collection do
get :derive
get :index_on_stock_article_create
get :index_on_stock_article_update
get :show_on_stock_article_update
end
end
resources :suppliers do
2015-01-02 17:40:21 +01:00
get :shared_suppliers, on: :collection
resources :deliveries do
collection do
post :add_stock_change
get :form_on_stock_article_create
get :form_on_stock_article_update
end
end
resources :articles do
2019-10-14 09:25:34 +02:00
get :copy
collection do
post :update_selected
get :edit_all
post :update_all
get :upload
post :parse_upload
post :create_from_upload
get :shared
get :import
post :sync
post :update_synchronized
end
end
2011-05-11 14:21:06 +02:00
end
2011-05-11 14:21:06 +02:00
resources :article_categories
2011-05-11 14:21:06 +02:00
########### Finance
2011-05-11 14:21:06 +02:00
namespace :finance do
2015-01-02 17:40:21 +01:00
root to: 'base#index'
2012-05-12 10:55:20 +02:00
resources :order, controller: 'balancing', path: 'balancing' do
member do
get :update_summary
2012-05-12 10:55:20 +02:00
get :edit_note
put :update_note
2020-03-19 00:22:20 +01:00
get :edit_transport
put :update_transport
get :confirm
post :close
patch :close_direct
get :new_on_order_article_create
get :new_on_order_article_update
2012-05-12 10:55:20 +02:00
end
post :close_all_direct_with_invoice, on: :collection
2012-05-12 10:55:20 +02:00
end
resources :invoices do
get :attachment
get :form_on_supplier_id_change, on: :collection
2017-10-22 02:21:27 +02:00
get :unpaid, on: :collection
end
resources :links, controller: 'financial_links', only: %i[create show] do
collection do
get :incomplete
end
member do
get :index_bank_transaction
put 'bank_transactions/:bank_transaction', action: 'add_bank_transaction', as: 'add_bank_transaction'
delete 'bank_transactions/:bank_transaction', action: 'remove_bank_transaction', as: 'remove_bank_transaction'
get :index_financial_transaction
put 'financial_transactions/:financial_transaction', action: 'add_financial_transaction',
as: 'add_financial_transaction'
delete 'financial_transactions/:financial_transaction', action: 'remove_financial_transaction',
as: 'remove_financial_transaction'
get :index_invoice
put 'invoices/:invoice', action: 'add_invoice', as: 'add_invoice'
delete 'invoices/:invoice', action: 'remove_invoice', as: 'remove_invoice'
get :new_financial_transaction
post :create_financial_transaction
end
end
2015-01-02 17:40:21 +01:00
resources :ordergroups, only: [:index] do
resources :financial_transactions, as: :transactions
end
resources :financial_transactions, as: :foodcoop_financial_transactions, path: 'foodcoop/financial_transactions',
only: %i[index new create]
get :transactions, controller: :financial_transactions, action: :index_collection
delete 'transactions/:id', controller: :financial_transactions, action: :destroy, as: :transaction
2015-01-02 17:40:21 +01:00
get 'transactions/new_collection' => 'financial_transactions#new_collection', as: 'new_transaction_collection'
post 'transactions/create_collection' => 'financial_transactions#create_collection',
as: 'create_transaction_collection'
2018-09-14 19:33:27 +02:00
resources :bank_accounts, only: [:index] do
2018-10-11 23:26:12 +02:00
member do
get :assign_unlinked_transactions
2018-10-11 23:26:12 +02:00
get :import
post :import
2018-10-11 23:26:12 +02:00
end
2018-09-14 19:33:27 +02:00
resources :bank_transactions, as: :transactions
end
resources :bank_transactions, only: %i[index show]
2011-05-11 14:21:06 +02:00
end
2011-05-11 14:21:06 +02:00
########### Administration
2011-05-11 14:21:06 +02:00
namespace :admin do
2015-01-02 17:40:21 +01:00
root to: 'base#index'
resources :finances, only: [:index] do
2018-09-14 19:33:27 +02:00
get :update_bank_accounts, on: :collection
2021-03-05 12:44:53 +01:00
get :update_bank_gateways, on: :collection
get :update_transaction_types, on: :collection
2022-02-20 16:43:20 +01:00
get :update_supplier_categories, on: :collection
end
2018-09-14 19:33:27 +02:00
resources :bank_accounts
2021-03-05 12:44:53 +01:00
resources :bank_gateways
resources :financial_transaction_classes
resources :financial_transaction_types
2022-02-20 16:43:20 +01:00
resources :supplier_categories
2014-10-18 17:52:06 +02:00
resources :users do
post :restore, on: :member
2015-01-02 17:40:21 +01:00
post :sudo, on: :member
2014-10-18 17:52:06 +02:00
end
2011-05-11 14:21:06 +02:00
resources :workgroups do
2015-01-02 17:40:21 +01:00
get :memberships, on: :member
2011-05-11 14:21:06 +02:00
end
2011-05-11 14:21:06 +02:00
resources :ordergroups do
2015-01-02 17:40:21 +01:00
get :memberships, on: :member
end
2014-03-16 02:08:15 +01:00
resources :mail_delivery_status, only: %i[index show destroy] do
delete :index, on: :collection, action: :destroy_all
end
resource :config, only: %i[show update] do
2014-03-16 02:08:15 +01:00
get :list
end
end
2018-10-13 15:15:43 +02:00
############## API
namespace :api do
namespace :v1 do
2018-10-13 15:18:55 +02:00
resource :config, only: [:show]
2018-10-13 15:20:27 +02:00
resource :navigation, only: [:show]
namespace :user do
root to: 'users#show'
get :financial_overview, to: 'ordergroup#financial_overview'
resources :financial_transactions, only: %i[index show create]
2018-10-13 16:27:24 +02:00
resources :group_order_articles
end
resources :financial_transaction_classes, only: %i[index show]
resources :financial_transaction_types, only: %i[index show]
resources :financial_transactions, only: %i[index show]
resources :orders, only: %i[index show]
resources :order_articles, only: %i[index show]
2018-10-13 16:27:24 +02:00
resources :group_order_articles
resources :article_categories, only: %i[index show]
2018-10-13 15:15:43 +02:00
end
end
############## Feedback
resource :feedback, only: %i[new create], controller: 'feedback'
############## The rest
2015-01-02 17:40:21 +01:00
resources :users, only: [:index]
end # End of /:foodcoop scope
2009-01-06 11:49:19 +01:00
end
# rubocop:enable Metrics/BlockLength