1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-07-24 15:49:39 +02:00

Integrate money-rails gem (#268)

* Integrate money-rails gem

* Fix Lint issues

* Basic test for monetize feature

* Merge main branch

* Changes to monetize balance field

---------

Co-authored-by: Zach Gollwitzer <zach.gollwitzer@gmail.com>
This commit is contained in:
Nidhi Sarvaiya 2024-02-06 12:30:51 -05:00 committed by GitHub
parent 323a8ccf50
commit 1182ab39bd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 176 additions and 14 deletions

View file

@ -30,7 +30,7 @@ class AccountsController < ApplicationController
private
def account_params
params.require(:account).permit(:name, :accountable_type, :balance, :subtype)
params.require(:account).permit(:name, :accountable_type, :balance, :balance_cents, :subtype)
end
def account_type_class

View file

@ -4,4 +4,6 @@ class Account < ApplicationRecord
delegated_type :accountable, types: %w[ Account::Credit Account::Depository Account::Investment Account::Loan Account::OtherAsset Account::OtherLiability Account::Property Account::Vehicle], dependent: :destroy
delegate :type_name, to: :accountable
monetize :balance_cents
end

View file

@ -11,7 +11,7 @@
<%= account.accountable %>
</div>
<p class="text-sm text-right">
<span class="block mb-1"><%= number_to_currency account.balance %></span>
<span class="block mb-1"><%= humanized_money_with_symbol account.balance %></span>
</p>
</div>
<% end %>

View file

@ -33,7 +33,7 @@
<div class="relative p-4 border border-gray-100 bg-offwhite rounded-xl focus-within:bg-white focus-within:shadow focus-within:opacity-100">
<label for="account_balance" class="block text-sm font-medium opacity-50 focus-within:opacity-100">Balance</label>
<div class="flex">
<%= f.number_field :balance, placeholder: "$0.00", in: 0.00..100000000.00, required: 'required', class: "p-0 mt-1 bg-transparent border-none opacity-50 focus:outline-none focus:ring-0 focus-within:opacity-100" %>
<%= f.number_field :balance, placeholder: "$0.00", in: 0.00..100000000.00, step: :any, required: 'required', class: "p-0 mt-1 bg-transparent border-none opacity-50 focus:outline-none focus:ring-0 focus-within:opacity-100" %>
</div>
</div>

View file

@ -70,7 +70,7 @@
<%= account.name %>
</div>
<p class="text-sm text-right">
<span class="block mb-1"><%= number_to_currency account.balance %></span>
<span class="block mb-1"><%= humanized_money_with_symbol account.balance %></span>
</p>
</div>
<% end %>