Merge pull request #24 from exstake/add-sell-and-buy-orders-to-admin
add sell and buy orders to admin
This commit is contained in:
1
Gemfile
1
Gemfile
@@ -19,6 +19,7 @@ gem "devise"
|
|||||||
gem "devise-i18n"
|
gem "devise-i18n"
|
||||||
|
|
||||||
gem "administrate-field-active_storage"
|
gem "administrate-field-active_storage"
|
||||||
|
gem "administrate-field-enumerize"
|
||||||
gem "tailwindcss-rails"
|
gem "tailwindcss-rails"
|
||||||
gem "administrate"
|
gem "administrate"
|
||||||
gem "money-rails"
|
gem "money-rails"
|
||||||
|
|||||||
@@ -73,6 +73,10 @@ GEM
|
|||||||
administrate-field-active_storage (0.3.7)
|
administrate-field-active_storage (0.3.7)
|
||||||
administrate (>= 0.2.2)
|
administrate (>= 0.2.2)
|
||||||
rails (>= 6.0)
|
rails (>= 6.0)
|
||||||
|
administrate-field-enumerize (1.0.0)
|
||||||
|
administrate (~> 0.8)
|
||||||
|
enumerize (~> 2.1)
|
||||||
|
rails (>= 5.0.0)
|
||||||
annotate (3.1.1)
|
annotate (3.1.1)
|
||||||
activerecord (>= 3.2, < 7.0)
|
activerecord (>= 3.2, < 7.0)
|
||||||
rake (>= 10.4, < 14.0)
|
rake (>= 10.4, < 14.0)
|
||||||
@@ -334,6 +338,7 @@ PLATFORMS
|
|||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
administrate
|
administrate
|
||||||
administrate-field-active_storage
|
administrate-field-active_storage
|
||||||
|
administrate-field-enumerize
|
||||||
annotate
|
annotate
|
||||||
bootsnap (>= 1.4.4)
|
bootsnap (>= 1.4.4)
|
||||||
devise
|
devise
|
||||||
|
|||||||
5
app/controllers/admin/buy_crypto_orders_controller.rb
Normal file
5
app/controllers/admin/buy_crypto_orders_controller.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
module Admin
|
||||||
|
class BuyCryptoOrdersController < Admin::ApplicationController
|
||||||
|
end
|
||||||
|
end
|
||||||
5
app/controllers/admin/sell_crypto_orders_controller.rb
Normal file
5
app/controllers/admin/sell_crypto_orders_controller.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
module Admin
|
||||||
|
class SellCryptoOrdersController < Admin::ApplicationController
|
||||||
|
end
|
||||||
|
end
|
||||||
57
app/dashboards/buy_crypto_order_dashboard.rb
Normal file
57
app/dashboards/buy_crypto_order_dashboard.rb
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
require "administrate/base_dashboard"
|
||||||
|
|
||||||
|
class BuyCryptoOrderDashboard < Administrate::BaseDashboard
|
||||||
|
# ATTRIBUTE_TYPES
|
||||||
|
# a hash that describes the type of each of the model's fields.
|
||||||
|
#
|
||||||
|
# Each different type represents an Administrate::Field object,
|
||||||
|
# which determines how the attribute is displayed
|
||||||
|
# on pages throughout the dashboard.
|
||||||
|
ATTRIBUTE_TYPES = {
|
||||||
|
user: Field::BelongsTo,
|
||||||
|
currency: Field::BelongsTo,
|
||||||
|
id: Field::Number,
|
||||||
|
status: Field::Enumerize,
|
||||||
|
paid_amount_cents: Field::Number,
|
||||||
|
received_amount: Field::String.with_options(searchable: false),
|
||||||
|
created_at: Field::DateTime,
|
||||||
|
updated_at: Field::DateTime,
|
||||||
|
}.freeze
|
||||||
|
|
||||||
|
# COLLECTION_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed on the model's index page.
|
||||||
|
#
|
||||||
|
# By default, it's limited to four items to reduce clutter on index pages.
|
||||||
|
# Feel free to add, remove, or rearrange items.
|
||||||
|
COLLECTION_ATTRIBUTES = [:user, :currency, :id, :status].freeze
|
||||||
|
|
||||||
|
# SHOW_PAGE_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed on the model's show page.
|
||||||
|
SHOW_PAGE_ATTRIBUTES = [:user, :currency, :id, :status, :paid_amount_cents, :received_amount, :created_at,
|
||||||
|
:updated_at,].freeze
|
||||||
|
|
||||||
|
# FORM_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed
|
||||||
|
# on the model's form (`new` and `edit`) pages.
|
||||||
|
FORM_ATTRIBUTES = [:user, :currency, :status, :paid_amount_cents, :received_amount].freeze
|
||||||
|
|
||||||
|
# COLLECTION_FILTERS
|
||||||
|
# a hash that defines filters that can be used while searching via the search
|
||||||
|
# field of the dashboard.
|
||||||
|
#
|
||||||
|
# For example to add an option to search for open resources by typing "open:"
|
||||||
|
# in the search field:
|
||||||
|
#
|
||||||
|
# COLLECTION_FILTERS = {
|
||||||
|
# open: ->(resources) { resources.where(open: true) }
|
||||||
|
# }.freeze
|
||||||
|
COLLECTION_FILTERS = {}.freeze
|
||||||
|
|
||||||
|
# Overwrite this method to customize how buy crypto orders are displayed
|
||||||
|
# across all pages of the admin dashboard.
|
||||||
|
#
|
||||||
|
# def display_resource(buy_crypto_order)
|
||||||
|
# "BuyCryptoOrder ##{buy_crypto_order.id}"
|
||||||
|
# end
|
||||||
|
end
|
||||||
57
app/dashboards/sell_crypto_order_dashboard.rb
Normal file
57
app/dashboards/sell_crypto_order_dashboard.rb
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
require "administrate/base_dashboard"
|
||||||
|
|
||||||
|
class SellCryptoOrderDashboard < Administrate::BaseDashboard
|
||||||
|
# ATTRIBUTE_TYPES
|
||||||
|
# a hash that describes the type of each of the model's fields.
|
||||||
|
#
|
||||||
|
# Each different type represents an Administrate::Field object,
|
||||||
|
# which determines how the attribute is displayed
|
||||||
|
# on pages throughout the dashboard.
|
||||||
|
ATTRIBUTE_TYPES = {
|
||||||
|
user: Field::BelongsTo,
|
||||||
|
currency: Field::BelongsTo,
|
||||||
|
id: Field::Number,
|
||||||
|
status: Field::Enumerize,
|
||||||
|
paid_amount: Field::String.with_options(searchable: false),
|
||||||
|
received_amount_cents: Field::Number,
|
||||||
|
created_at: Field::DateTime,
|
||||||
|
updated_at: Field::DateTime,
|
||||||
|
}.freeze
|
||||||
|
|
||||||
|
# COLLECTION_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed on the model's index page.
|
||||||
|
#
|
||||||
|
# By default, it's limited to four items to reduce clutter on index pages.
|
||||||
|
# Feel free to add, remove, or rearrange items.
|
||||||
|
COLLECTION_ATTRIBUTES = [:user, :currency, :id, :status].freeze
|
||||||
|
|
||||||
|
# SHOW_PAGE_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed on the model's show page.
|
||||||
|
SHOW_PAGE_ATTRIBUTES = [:user, :currency, :id, :status, :paid_amount, :received_amount_cents, :created_at,
|
||||||
|
:updated_at,].freeze
|
||||||
|
|
||||||
|
# FORM_ATTRIBUTES
|
||||||
|
# an array of attributes that will be displayed
|
||||||
|
# on the model's form (`new` and `edit`) pages.
|
||||||
|
FORM_ATTRIBUTES = [:user, :currency, :status, :paid_amount, :received_amount_cents].freeze
|
||||||
|
|
||||||
|
# COLLECTION_FILTERS
|
||||||
|
# a hash that defines filters that can be used while searching via the search
|
||||||
|
# field of the dashboard.
|
||||||
|
#
|
||||||
|
# For example to add an option to search for open resources by typing "open:"
|
||||||
|
# in the search field:
|
||||||
|
#
|
||||||
|
# COLLECTION_FILTERS = {
|
||||||
|
# open: ->(resources) { resources.where(open: true) }
|
||||||
|
# }.freeze
|
||||||
|
COLLECTION_FILTERS = {}.freeze
|
||||||
|
|
||||||
|
# Overwrite this method to customize how sell crypto orders are displayed
|
||||||
|
# across all pages of the admin dashboard.
|
||||||
|
#
|
||||||
|
# def display_resource(sell_crypto_order)
|
||||||
|
# "SellCryptoOrder ##{sell_crypto_order.id}"
|
||||||
|
# end
|
||||||
|
end
|
||||||
@@ -21,6 +21,13 @@ pt-BR:
|
|||||||
one: Saldo Fiat
|
one: Saldo Fiat
|
||||||
other: Saldos Fiat
|
other: Saldos Fiat
|
||||||
|
|
||||||
|
sell_crypto_order:
|
||||||
|
one: Pedido de Venda
|
||||||
|
other: Pedidos de Venda
|
||||||
|
|
||||||
|
buy_crypto_order:
|
||||||
|
one: Pedido de Compra
|
||||||
|
other: Pedidos de Compra
|
||||||
attributes:
|
attributes:
|
||||||
user:
|
user:
|
||||||
first_name: Primeiro nome
|
first_name: Primeiro nome
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ Rails.application.routes.draw do
|
|||||||
resources :users
|
resources :users
|
||||||
resources :balances
|
resources :balances
|
||||||
resources :fiat_balances
|
resources :fiat_balances
|
||||||
resources :currencies
|
resources :buy_crypto_orders
|
||||||
|
resources :sell_crypto_orders
|
||||||
resources :admin_users
|
resources :admin_users
|
||||||
|
|
||||||
root to: "users#index"
|
root to: "users#index"
|
||||||
|
|||||||
Reference in New Issue
Block a user