show onboarding page when currency is not set

This commit is contained in:
Bilal
2020-10-06 14:17:18 +03:00
parent 6fb30209da
commit cd88d21a26
10 changed files with 87 additions and 7 deletions

View File

@@ -1,6 +1,29 @@
class ChipsController < ApplicationController
def index
json_response Chip.where(enabled: true).order(:name).to_json(include: :base_chip_values)
all_chips = [
{
id: 1,
name: 'US Dollar',
symbol: '$',
code: 'USD',
prefixed: true
},
{
id: 2,
name: 'Bosnian Convertible Mark',
symbol: 'KM',
code: 'BAM',
prefixed: false
},
{
id: 3,
name: 'Euro',
symbol: '€',
code: 'EUR',
prefixed: false
}
]
json_response all_chips
end
def create

View File

@@ -46,8 +46,7 @@ class HomiesController < ApplicationController
params.require(:homie).permit(
:name,
:importance,
:about,
:chip_id
:about
)
end
end

View File

@@ -0,0 +1,28 @@
class OriginalGangstasController < ApplicationController
def show
if OriginalGangsta.count.zero?
OriginalGangsta.create.save
end
json_response OriginalGangsta.first
end
def update
if original_gangsta_params[:chip_scale].to_i.positive?
OriginalGangsta.update(original_gangsta_params)
json_response onboarded: true
else
error_response :bad_request
end
end
private
def original_gangsta_params
params.require(:original_gangsta).permit :chip_name,
:chip_code,
:chip_symbol,
:chip_scale,
:chip_prefixed
end
end

View File

@@ -1,7 +1,6 @@
class Homie < ApplicationRecord
has_many :money_moves
has_many :work
belongs_to :chip
def self.info(importance)
cash_totals = Homie.all.joins(:money_moves).group(:id).order(:id).sum(:amount)

View File

@@ -0,0 +1,3 @@
class OriginalGangsta < ApplicationRecord
end

View File

@@ -17,4 +17,5 @@
ActiveSupport::Inflector.inflections do |inflect|
inflect.irregular 'work', 'work'
inflect.irregular 'gangsta', 'gangstas'
end

View File

@@ -1,6 +1,7 @@
Rails.application.routes.draw do
constraints format: :json do
scope :api do
resources :original_gangstas, only: [:show, :update]
resources :money_moves
resources :work
resources :chips, only: %i[index create destroy]

View File

@@ -0,0 +1,5 @@
class RemoveDefaultChipRefFromHomies < ActiveRecord::Migration[5.2]
def change
remove_reference :homies, :chip
end
end

View File

@@ -0,0 +1,13 @@
class CreateOriginalGangstas < ActiveRecord::Migration[5.2]
def change
create_table :original_gangstas do |t|
t.text :chip_name
t.text :chip_code
t.text :chip_symbol
t.boolean :chip_prefixed
t.integer :chip_scale
t.timestamps
end
end
end

View File

@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 2020_10_06_103421) do
ActiveRecord::Schema.define(version: 2020_10_06_120951) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@@ -41,8 +41,6 @@ ActiveRecord::Schema.define(version: 2020_10_06_103421) do
t.text "about"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.bigint "chip_id"
t.index ["chip_id"], name: "index_homies_on_chip_id"
end
create_table "money_moves", force: :cascade do |t|
@@ -53,6 +51,16 @@ ActiveRecord::Schema.define(version: 2020_10_06_103421) do
t.datetime "updated_at", null: false
end
create_table "original_gangstas", force: :cascade do |t|
t.text "chip_name"
t.text "chip_code"
t.text "chip_symbol"
t.boolean "chip_prefixed"
t.integer "chip_scale"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
create_table "work", force: :cascade do |t|
t.text "description"
t.integer "amount"