Skip to content

Commit

Permalink
Fixed: group current month spending amount getting empty
Browse files Browse the repository at this point in the history
  • Loading branch information
cp-nirali-s committed Jan 22, 2025
1 parent fa44eb4 commit 1422db8
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
8 changes: 4 additions & 4 deletions Splito/UI/Home/Groups/CalculateExpensesFunctions.swift
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ public func getUpdatedMemberBalanceFor(expense: Expense, group: Groups, updateTy
// Check if the member already has an entry in the member balance array
if let index = memberBalance.firstIndex(where: { $0.id == member }) {
if memberBalance[index].balanceByCurrency[currency] == nil {
memberBalance[index].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0.0, totalSummary: [])
memberBalance[index].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0, totalSummary: [])
}

switch updateType {
Expand Down Expand Up @@ -241,7 +241,7 @@ func getInitialGroupSummaryFor(member: String, expense: Expense) -> GroupTotalSu
let memberSummary = GroupMemberSummary(groupTotalSpending: expense.amount,
totalPaidAmount: expense.paidBy[member] ?? 0,
totalShare: splitAmount, paidAmount: 0, receivedAmount: 0,
changeInBalance: (expense.paidBy[member] ?? 0.0) - splitAmount)
changeInBalance: (expense.paidBy[member] ?? 0) - splitAmount)

let totalSummary = GroupTotalSummary(year: expenseYear, month: expenseMonth, summary: memberSummary)
return totalSummary
Expand All @@ -265,7 +265,7 @@ public func getUpdatedMemberBalanceFor(transaction: Transactions, group: Groups,
// For payer
if let payerIndex = memberBalance.firstIndex(where: { $0.id == payerId }) {
if memberBalance[payerIndex].balanceByCurrency[currency] == nil {
memberBalance[payerIndex].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0.0, totalSummary: [])
memberBalance[payerIndex].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0, totalSummary: [])
}

switch updateType {
Expand Down Expand Up @@ -351,7 +351,7 @@ public func getUpdatedMemberBalanceFor(transaction: Transactions, group: Groups,
// For receiver
if let receiverIndex = memberBalance.firstIndex(where: { $0.id == receiverId }) {
if memberBalance[receiverIndex].balanceByCurrency[currency] == nil {
memberBalance[receiverIndex].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0.0, totalSummary: [])
memberBalance[receiverIndex].balanceByCurrency[currency] = GroupCurrencyBalance(balance: 0, totalSummary: [])
}

switch updateType {
Expand Down
3 changes: 2 additions & 1 deletion Splito/UI/Home/Groups/Group/GroupHomeViewModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -147,11 +147,12 @@ class GroupHomeViewModel: BaseViewModel, ObservableObject {
}

private func getCalculatedCurrentMonthSpending(group: Groups, userId: String?) -> [String: Double] {
return getTotalSummaryForCurrentMonth(group: group, userId: userId)
let currentMonthSpendingAmounts = getTotalSummaryForCurrentMonth(group: group, userId: userId)
.mapValues { summaries in
summaries.reduce(0) { $0 + $1.summary.totalShare }
}
.filter({ $0.value != 0 })
return currentMonthSpendingAmounts.isEmpty ? [Currency.defaultCurrency.code: 0] : currentMonthSpendingAmounts
}

func refetchTransactionsCount() {
Expand Down

0 comments on commit 1422db8

Please sign in to comment.