chore: full removal of recurring deposits
This commit is contained in:
parent
f05c36e44f
commit
b092d12c57
5 changed files with 8 additions and 42 deletions
|
|
@ -1334,9 +1334,6 @@ func (h *SpaceHandler) AccountsPage(w http.ResponseWriter, r *http.Request) {
|
|||
return
|
||||
}
|
||||
|
||||
// Lazy process recurring deposits
|
||||
h.recurringDepositService.ProcessDueRecurrencesForSpace(spaceID, time.Now())
|
||||
|
||||
accounts, err := h.accountService.GetAccountsForSpace(spaceID)
|
||||
if err != nil {
|
||||
slog.Error("failed to get accounts for space", "error", err, "space_id", spaceID)
|
||||
|
|
@ -1360,12 +1357,6 @@ func (h *SpaceHandler) AccountsPage(w http.ResponseWriter, r *http.Request) {
|
|||
|
||||
availableBalance := totalBalance - totalAllocated
|
||||
|
||||
recurringDeposits, err := h.recurringDepositService.GetRecurringDepositsWithAccountsForSpace(spaceID)
|
||||
if err != nil {
|
||||
slog.Error("failed to get recurring deposits", "error", err, "space_id", spaceID)
|
||||
recurringDeposits = nil
|
||||
}
|
||||
|
||||
transfers, totalPages, err := h.accountService.GetTransfersForSpacePaginated(spaceID, 1)
|
||||
if err != nil {
|
||||
slog.Error("failed to get transfers", "error", err, "space_id", spaceID)
|
||||
|
|
@ -1373,7 +1364,7 @@ func (h *SpaceHandler) AccountsPage(w http.ResponseWriter, r *http.Request) {
|
|||
totalPages = 1
|
||||
}
|
||||
|
||||
ui.Render(w, r, pages.SpaceAccountsPage(space, accounts, totalBalance, availableBalance, recurringDeposits, transfers, 1, totalPages))
|
||||
ui.Render(w, r, pages.SpaceAccountsPage(space, accounts, totalBalance, availableBalance, transfers, 1, totalPages))
|
||||
}
|
||||
|
||||
func (h *SpaceHandler) CreateAccount(w http.ResponseWriter, r *http.Request) {
|
||||
|
|
|
|||
|
|
@ -158,23 +158,6 @@ func SetupRoutes(a *app.App) http.Handler {
|
|||
deleteTransferWithAuth := middleware.RequireAuth(deleteTransferHandler)
|
||||
mux.Handle("DELETE /app/spaces/{spaceID}/accounts/{accountID}/transfers/{transferID}", crudLimiter(deleteTransferWithAuth))
|
||||
|
||||
// Recurring Deposit routes
|
||||
createRecurringDepositHandler := middleware.RequireSpaceAccess(a.SpaceService)(space.CreateRecurringDeposit)
|
||||
createRecurringDepositWithAuth := middleware.RequireAuth(createRecurringDepositHandler)
|
||||
mux.Handle("POST /app/spaces/{spaceID}/accounts/recurring", crudLimiter(createRecurringDepositWithAuth))
|
||||
|
||||
updateRecurringDepositHandler := middleware.RequireSpaceAccess(a.SpaceService)(space.UpdateRecurringDeposit)
|
||||
updateRecurringDepositWithAuth := middleware.RequireAuth(updateRecurringDepositHandler)
|
||||
mux.Handle("PATCH /app/spaces/{spaceID}/accounts/recurring/{recurringDepositID}", crudLimiter(updateRecurringDepositWithAuth))
|
||||
|
||||
deleteRecurringDepositHandler := middleware.RequireSpaceAccess(a.SpaceService)(space.DeleteRecurringDeposit)
|
||||
deleteRecurringDepositWithAuth := middleware.RequireAuth(deleteRecurringDepositHandler)
|
||||
mux.Handle("DELETE /app/spaces/{spaceID}/accounts/recurring/{recurringDepositID}", crudLimiter(deleteRecurringDepositWithAuth))
|
||||
|
||||
toggleRecurringDepositHandler := middleware.RequireSpaceAccess(a.SpaceService)(space.ToggleRecurringDeposit)
|
||||
toggleRecurringDepositWithAuth := middleware.RequireAuth(toggleRecurringDepositHandler)
|
||||
mux.Handle("POST /app/spaces/{spaceID}/accounts/recurring/{recurringDepositID}/toggle", crudLimiter(toggleRecurringDepositWithAuth))
|
||||
|
||||
// Payment Method routes
|
||||
methodsPageHandler := middleware.RequireSpaceAccess(a.SpaceService)(space.PaymentMethodsPage)
|
||||
methodsPageWithAuth := middleware.RequireAuth(methodsPageHandler)
|
||||
|
|
|
|||
|
|
@ -9,16 +9,14 @@ import (
|
|||
)
|
||||
|
||||
type Scheduler struct {
|
||||
recurringService *service.RecurringExpenseService
|
||||
recurringDepositService *service.RecurringDepositService
|
||||
interval time.Duration
|
||||
recurringService *service.RecurringExpenseService
|
||||
interval time.Duration
|
||||
}
|
||||
|
||||
func New(recurringService *service.RecurringExpenseService, recurringDepositService *service.RecurringDepositService) *Scheduler {
|
||||
func New(recurringService *service.RecurringExpenseService) *Scheduler {
|
||||
return &Scheduler{
|
||||
recurringService: recurringService,
|
||||
recurringDepositService: recurringDepositService,
|
||||
interval: 1 * time.Hour,
|
||||
recurringService: recurringService,
|
||||
interval: 1 * time.Hour,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -47,9 +45,4 @@ func (s *Scheduler) run() {
|
|||
if err := s.recurringService.ProcessDueRecurrences(now); err != nil {
|
||||
slog.Error("scheduler: failed to process recurring expenses", "error", err)
|
||||
}
|
||||
|
||||
slog.Info("scheduler: processing due recurring deposits")
|
||||
if err := s.recurringDepositService.ProcessDueRecurrences(now); err != nil {
|
||||
slog.Error("scheduler: failed to process recurring deposits", "error", err)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import (
|
|||
"git.juancwu.dev/juancwu/budgit/internal/ui/layouts"
|
||||
)
|
||||
|
||||
templ SpaceAccountsPage(space *model.Space, accounts []model.MoneyAccountWithBalance, totalBalance int, availableBalance int, recurringDeposits []*model.RecurringDepositWithAccount, transfers []*model.AccountTransferWithAccount, currentPage, totalPages int) {
|
||||
templ SpaceAccountsPage(space *model.Space, accounts []model.MoneyAccountWithBalance, totalBalance int, availableBalance int, transfers []*model.AccountTransferWithAccount, currentPage, totalPages int) {
|
||||
@layouts.Space("Accounts", space) {
|
||||
<div class="space-y-4">
|
||||
<div class="flex justify-between items-center">
|
||||
|
|
@ -41,7 +41,6 @@ templ SpaceAccountsPage(space *model.Space, accounts []model.MoneyAccountWithBal
|
|||
@moneyaccount.AccountCard(space.ID, &acct)
|
||||
}
|
||||
</div>
|
||||
@moneyaccount.RecurringDepositsSection(space.ID, recurringDeposits, accounts)
|
||||
@moneyaccount.TransferHistorySection(space.ID, transfers, currentPage, totalPages)
|
||||
</div>
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue