Budgeting V1 (#1609)

* Budgeting V1

* Basic UI template

* Fully scaffolded budgeting v1

* Basic working budget

* Finalize donut chart for budgets

* Allow categorization of loan payments for budget

* Include loan payments in incomes_and_expenses scope

* Add budget allocations progress

* Empty states

* Clean up budget methods

* Category aggregation queries

* Handle overage scenarios in form

* Finalize budget donut chart controller

* Passing tests

* Fix allocation naming

* Add income category migration

* Native support for uncategorized budget category

* Formatting

* Fix subcategory sort order, padding

* Fix calculation for category rollups in budget
This commit is contained in:
Zach Gollwitzer
2025-01-16 14:36:37 -05:00
committed by GitHub
parent 413ec6cbed
commit 195ec85d96
61 changed files with 2044 additions and 140 deletions

View File

@@ -52,7 +52,11 @@
<div class="text-gray-500 text-xs font-normal">
<div class="flex items-center gap-1">
<%= link_to transfer.from_account.name, transfer.from_account, class: "hover:underline", data: { turbo_frame: "_top" } %>
<%= lucide_icon "arrow-left-right", class: "w-4 h-4" %>
<% if transfer.payment? %>
<%= lucide_icon "arrow-right", class: "w-4 h-4" %>
<% else %>
<%= lucide_icon "arrow-left-right", class: "w-4 h-4" %>
<% end %>
<%= link_to transfer.to_account.name, transfer.to_account, class: "hover:underline", data: { turbo_frame: "_top" } %>
</div>
</div>
@@ -63,7 +67,11 @@
</div>
<div class="flex items-center gap-1 col-span-2">
<%= render "categories/badge", category: transfer.payment? ? payment_category : transfer_category %>
<% if transfer.categorizable? %>
<%= render "account/transactions/transaction_category", entry: transfer.outflow_transaction.entry %>
<% else %>
<%= render "categories/badge", category: transfer.payment? ? payment_category : transfer_category %>
<% end %>
</div>
<div class="col-span-2 ml-auto">