routes.rb 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. # rubocop:disable Metrics/BlockLength
  2. Rails.application.routes.draw do
  3. resources :storers
  4. resources :warehouse_stocks
  5. devise_for :users, path: "/", path_names: {
  6. sign_in: 'login',
  7. sign_out: 'logout',
  8. # password: 'secret',
  9. # password: 'pwdchange',
  10. # update_password: 'pwdchange',
  11. confirmation: 'verification',
  12. unlock: 'unblock',
  13. registration: 'register',
  14. sign_up: 'cmon_let_me_in'
  15. }
  16. match "/404", to: "errors#not_found", via: :all
  17. match "/500", to: "errors#internal_server_error", via: :all
  18. devise_scope :user do
  19. get "login", to: "devise/sessions#new"
  20. get "logout", to: "devise/sessions#destroy"
  21. # get "secret", to: "devise/passwords#new"
  22. # get "pwdchange", to: "devise/registration#edit"
  23. end
  24. # rutas para login de usuarios
  25. get "pwdchange" => "users#edit_password", :as => "pwdchange"
  26. patch "update_password" => "users#update_password"
  27. post 'update_status/:user_id' => 'users#update_status', :as => "user_update_status"
  28. # rutas para administracion de usuarios
  29. get 'users' => 'users#index', :as => 'users'
  30. post 'users' => 'users#create'
  31. get 'users/new' => 'users#new', :as => 'new_user'
  32. get 'users/:id/edit' => 'users#edit', :as => 'edit_user'
  33. get 'users/:id' => 'users#show', :as => 'user'
  34. patch 'users/:id' => 'users#update'
  35. put 'users/:id' => 'users#update'
  36. resources :product_wastes, except: [:show, :edit] do
  37. post 'create' => 'product_wastes#create', defaults: { format: 'js' }
  38. end
  39. resources :suppliers do
  40. post 'update_status' => 'suppliers#update_status', :as => "update_status"
  41. end
  42. resources :commissions do
  43. resources :sellerscommissions
  44. post 'create' => 'commissions#create', defaults: { format: 'js' }
  45. end
  46. put 'commission_seller/:commission_id' => 'commissions#commission_seller', :format => :json
  47. get 'sellers_for_commissions' => 'commissions#sellers_for_commissions', :format => :js
  48. get 'find_sellers_by_date/:pointsale_id/:initial_date/:final_date' => 'commissions#find_sellers_by_date', :format => :js
  49. get 'generate_commissions' => 'commissions#generate_commissions', :format => :js
  50. resources :customers do
  51. post 'update_status' => 'customers#update_status', :as => "update_status"
  52. get 'reserved_sales' => 'customers#reserved_sales_by_customer'
  53. end
  54. get '/debtors' => 'customers#debtors'
  55. get '/customer_sales' => 'customers#customer_sales'
  56. resources :cash_registers, except: [:show] do
  57. post 'update_status' => 'cash_registers#update_status', :as => "update_status"
  58. get "get_cash_fund/" => "cash_registers#get_cash_fund", :as => "get_cash_fund", :format => :json
  59. end
  60. resources :expenses, except: [:show]
  61. resources :expensesconcepts, except: [:show]
  62. resources :pointsales, except: [:show] do
  63. post 'update_status' => 'pointsales#update_status', :as => "update_status"
  64. post 'assign_or_delete_products' => 'pointsales#assign_or_delete_products', :format => :js
  65. post 'delete_products_from_pointsale' => 'pointsales#delete_products_from_pointsale', :format => :js
  66. post 'assign_products_to_pointsale' => 'pointsales#assign_products_to_pointsale', :format => :js
  67. end
  68. post 'transfer_stock' => 'pointsales#transfer_stock', :as => "transfer_stock"
  69. resources :categories, except: [:show] do
  70. post 'update_status' => 'categories#update_status', :as => "update_status"
  71. end
  72. resources :special_prices, except: [:show, :edit] do
  73. post 'create' => 'special_products#create', defaults: { format: 'js' }
  74. end
  75. get 'add_special_price_by_barcode/:barcode/:customer_id' => 'special_prices#add_special_price_by_barcode', defaults: { format: 'js' }
  76. resources :credit_payments
  77. resources :products do
  78. post 'edit_from_purchase' => 'products#edit_from_purchase', defaults: { format: 'js' }
  79. patch 'update_from_purchase' => 'products#update_from_purchase', :constraints => ->(req) { req.xhr? }
  80. post 'update_status' => 'products#update_status', :as => "update_status"
  81. get 'prices' => 'products#list_prices'
  82. get 'variantsprices/:pointsale_id' => 'products#list_prices_variants', :format => :json
  83. get 'edit_variants' => 'products#edit_variants'
  84. post 'update_variants' => 'products#update_variants'
  85. end
  86. get 'validate_unique_barcode/:barcode' => 'products#validate_unique_barcode', defaults: { format: 'js' }
  87. get 'product_track' => 'products#product_track', :as => "product_track"
  88. get 'find_products/:query/:variants' => 'application#find_products', as: "find_products", format: :json
  89. resources :available_products, except: [:edit, :update] do
  90. get 'edit_price' => 'available_products#edit_price'
  91. patch 'update_price' => 'available_products#update_price'
  92. end
  93. post 'update_all_variants_prices' => 'available_products#update_all_variants_prices', defaults: { format: 'json' }
  94. resources :cash_outs
  95. get 'get_open_cash_registers' => 'cash_outs#get_open_cash_registers', defaults: { format: 'js' }
  96. post 'select_open_cash_to_close/:open_cash_register_id' => 'cash_outs#select_open_cash_to_close', defaults: { format: 'js' }
  97. get 'find_cash_outs_by_date/:pointsale_id/:begin_date/:end_date' => 'cash_outs#find_cash_outs_by_date', defaults: { format: 'js' }
  98. get 'opened_cash_registers' => 'cash_outs#opened_cash_registers'
  99. get 'print_cash_out_receipt/:cash_out_id' => 'cash_outs#print_receipt', :as => 'print_cash_out_receipt'
  100. resources :sellers, except: [:show] do
  101. post 'update_status' => 'sellers#update_status', :as => "update_status"
  102. end
  103. resources :pos_configs
  104. resources :credits
  105. resources :purchases
  106. get 'find_purchases_by_date/:begin_date/:end_date' => 'purchases#find_purchases_by_date', defaults: { format: 'js' }
  107. resources :pre_purchases, except: [:new, :show] do
  108. post 'create' => 'pre_purchases#create', defaults: { format: 'js' }
  109. put 'edit' => 'pre_purchases#update', defaults: { format: 'js' }
  110. end
  111. get 'add_pre_purchase_by_barcode_pointsale/:barcode/:supplier_id/:pointsale_id' => 'pre_purchases#add_pre_purchase_by_barcode', defaults: { format: 'js' }
  112. get 'add_pre_purchase_by_barcode_warehouse/:barcode/:supplier_id/:warehouse_id' => 'pre_purchases#add_pre_purchase_by_barcode', defaults: { format: 'js' }
  113. resources :sales do
  114. post 'create' => 'sales#create', defaults: { format: 'js' }
  115. post 'return_expired' => 'sales#return_expired', :as => "return_expired"
  116. get 'liquidate_reserve' => 'sales#liquidate_reserve'
  117. end
  118. get 'find_sales_by_date/:begin_date/:end_date' => 'sales#find_sales_by_date', defaults: { format: 'js' }
  119. get 'find_reserved_sales_by_date/:begin_date/:end_date' => 'sales#find_reserved_sales_by_date', defaults: { format: 'js' }
  120. get 'find_customer_sales_by_date/:begin_date/:end_date/:cliente' => 'sales#find_customer_sales_by_date', defaults: { format: 'js' }
  121. get 'print_receipt/:sale_id' => 'sales#print_receipt', :as => 'print_receipt'
  122. get 'print_reserve_receipt/:sale_id' => 'sales#print_reserve_receipt', :as => 'print_reserve_receipt'
  123. get 'print_credit_receipt/:sale_id' => 'sales#print_credit_receipt', :as => 'print_credit_receipt'
  124. get 'print_partial_payment_receipt' => 'sales#print_partial_payment_receipt', :as => 'print_partial_payment_receipt'
  125. get 'print_credit_payment_receipt' => 'sales#print_credit_payment_receipt', :as => 'print_credit_payment_receipt'
  126. get 'sales_reserved' => 'sales#sales_reserved', :as => 'sales_reserved'
  127. get 'add_haggle/:pre_sale' => 'sales#add_haggle', :as => 'add_sale_haggle'
  128. patch 'sale_create_haggle/:pre_sale' => 'sales#create_haggle', :as => 'create_haggle'
  129. get 'cancel_reserved_sale/:sale_id' => 'sales#cancel_reserved_sale', :as => 'cancel_reserved_sale'
  130. get 'find_sales_by_dates_or_code' => 'sales#find_sales_by_dates_or_code', defaults: { format: 'js' }
  131. get 'sales_per_month_report' => 'sales#sales_per_month_report'
  132. get 'sales_per_month' => 'sales#sales_per_month', defaults: { format: 'js' }
  133. put 'update_presale_customer/:customer_id' => 'pre_sales#update_presale_customer', as: 'update_presale_customer', format: :json
  134. resources :pre_sales, except: [:new, :show] do
  135. post 'create' => 'pre_sales#create', defaults: { format: 'js' }
  136. put 'edit' => 'pre_sales#update', defaults: { format: 'js' }
  137. end
  138. get 'add_pre_sale_by_barcode/:barcode/:customer_id/:open_cash_register_id/:sale_type' => 'pre_sales#add_pre_sale_by_barcode', defaults: { format: 'js' }
  139. put 'update_saletype/:type' => 'pre_sales#update_saletype'
  140. resources :open_cash_registers do
  141. post 'create' => 'open_cash_registers#create', defaults: { format: 'js' }
  142. end
  143. resources :cash_registers_moves do
  144. post 'create' => 'cash_registers_moves#create', defaults: { format: 'js' }
  145. end
  146. get 'add_quick_payment/:type' => 'cash_registers_moves#add_quick_payment', defaults: { format: 'js' }, :as => "add_quick_payment"
  147. get 'create_quick_debt_payment/:customer_id' => 'cash_registers_moves#create_quick_debt_payment', defaults: { format: 'js' }
  148. post 'confirm_payments' => 'cash_registers_moves#confirm_payments', :as => "cash_move_confirm_payments"
  149. post 'confirm_reserve/:sale_id' => 'cash_registers_moves#confirm_reserve', :as => "cash_move_confirm_reserve"
  150. post 'add_payments_to_reserve/:sale_id' => 'cash_registers_moves#add_payments_to_reserve', :as => "cash_move_add_payments_to_reserve"
  151. post 'delete_credit_payment/:credit_payment_id' => 'cash_registers_moves#delete_credit_payment', :as => "cash_move_delete_payment"
  152. resources :transfers do
  153. put 'accept_transfer' => 'transfers#accept_transfer', defaults: { format: 'js' }
  154. put 'detail_adjustment/:detail_id' => 'transfers#detail_adjustment', :format => :json
  155. end
  156. get 'print_transfer_receipt/:transfer_id' => 'transfers#print_receipt', :as => 'print_transfer_receipt'
  157. resources :pre_transfers, except: [:new, :show] do
  158. post 'create' => 'pre_transfers#create', defaults: { format: 'js' }
  159. put 'edit' => 'pre_transfers#update', defaults: { format: 'js' }
  160. end
  161. get 'add_pre_transfer_by_barcode/:barcode/:origin_id/:destiny_id' => 'pre_transfers#add_pre_transfer_by_barcode', defaults: { format: 'js' }
  162. resources :warehouses do
  163. post 'update_status' => 'warehouses#update_status', :as => "update_status"
  164. end
  165. resources :products_returns
  166. get 'sales_details/:sale_id' => 'products_returns#get_sale_details'
  167. get 'check_sale_detail_quantity' => 'products_returns#check_sale_detail_quantity'
  168. post 'add_product_to_return' => 'products_returns#add_product_to_return', defaults: { format: 'js' }, :as => "add_product_to_return"
  169. get 'update_quantity_prod_return' => 'products_returns#update_quantity_prod_return', :format => :json
  170. get 'print_return_receipt/:products_return_id' => 'products_returns#print_receipt', :as => 'print_return_receipt'
  171. get 'add_products_return_haggle' => 'products_returns#add_haggle', :as => 'add_products_return_haggle'
  172. post 'create_products_return_haggle' => 'products_returns#create_haggle', :as => 'create_products_return_haggle'
  173. root 'dashboard#index'
  174. get 'get_chart_data_for_dashboard' => 'dashboard#get_chart_data_for_dashboard'
  175. resources :units, except: [:show] do
  176. post 'create' => 'units#create', defaults: { format: 'js' }
  177. put 'edit' => 'units#update', defaults: { format: 'js' }
  178. end
  179. post 'update_unit_status/:id' => 'units#update_status', :as => "unit_status"
  180. get "getcounties/:state_id" => "application#getcounties", :as => "getcounties", :format => :json
  181. ## hcamargo: ruta para cargar los productos
  182. get 'purchases_data/products_list'
  183. # rutas pre( lo que sea, sale, purchase, etc.)
  184. get 'delete_pre_purchases' => 'application#delete_pre_purchases', :constraints => ->(req) { req.xhr? }
  185. get 'delete_pre_sales' => 'application#delete_pre_sales', :constraints => ->(req) { req.xhr? }
  186. get 'delete_pre_transfers' => 'application#delete_pre_transfers', :constraints => ->(req) { req.xhr? }
  187. # rutas para el STOCK
  188. get 'stock_by_pointsale' => 'available_products#stock_by_pointsale', :as => 'stock_by_pointsale'
  189. get 'products_stock' => 'available_products#stock', :as => 'products_stock'
  190. put 'update_stock' => 'available_products#update_stock', defaults: { format: 'json' }
  191. get 'products_initial_stock' => 'available_products#initial_stock', :as => 'products_initial_stock'
  192. get 'print_stock_by_pointsale' => 'available_products#print_stock', :as => 'print_stock_by_pointsale'
  193. put 'set_initial_stock' => 'available_products#set_initial_stock', defaults: { format: 'json' }
  194. get 'total_products_by_pointsale' => 'available_products#total_products_by_pointsale', :format => :json
  195. get 'total_invested_in_pointsale' => 'available_products#total_invested_in_pointsale', :format => :json
  196. # find de productos para el typeahead
  197. get 'find_products' => 'application#find', :format => :json
  198. # para special_prices
  199. get 'find_products_sp/:query' => 'application#find_sp', :format => :json
  200. #
  201. get 'find_products_from_stock' => 'application#find_from_stock', :format => :json
  202. get 'find_from_stock_by_pointsale' => 'application#find_from_stock_by_pointsale', :format => :json
  203. get "getcategories/:category_id" => "application#get_subcategories", :as => "get_subcategories", :format => :json
  204. get 'get_max_product_id' => 'application#get_max_product_id', :format => :json
  205. get 'get_max_purchaseid_by_pointsale/:pointsale_id' => 'application#get_max_purchaseid_by_pointsale', :format => :json
  206. get 'get_max_purchaseid_by_warehouse/:warehouse_id' => 'application#get_max_purchaseid_by_warehouse', :format => :json
  207. get 'get_next_sale_code/:open_cash_register_id' => 'application#get_next_sale_code', :format => :json, :as => "get_sale_code"
  208. get 'get_next_expense_code/:open_cash_register_id' => 'application#get_next_expense_code', :format => :json, :as => "get_expense_code"
  209. get 'get_special_price_by_customer/:customer_id' => 'special_prices#get_special_price_by_customer', defaults: { format: 'js' }
  210. get "products_by_category_pointsale/:pointsale_id/:category_id" => "application#products_by_category_pointsale", :as => "products_by_category_pointsale", :format => :json
  211. get "verify_transfer/:transfer_id" => "transfers#verify_transfer", :as => "verify_transfer"
  212. ## reports
  213. get "min_max" => "reports#min_max"
  214. get 'purchases_per_month' => 'reports#purchases_per_month'
  215. get 'utilities_report' => 'reports#utilities_report'
  216. ## soporte
  217. get "contact_support" => "supports#contact_support"
  218. get "system_updates" => "supports#system_updates"
  219. resources :promotions, except: [:show, :update, :edit]
  220. end
  221. # rubocop:enable Metrics/BlockLength