From 9afce1f52b7c7af94e3a7342188171bc0817e243 Mon Sep 17 00:00:00 2001 From: davidwul Date: Wed, 28 Jan 2026 10:14:38 +0100 Subject: [PATCH 1/2] Update event_compassion.py update domain and compute method to take non invoice income. Already in prod, but needs to be forward ported --- crm_compassion/models/event_compassion.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/crm_compassion/models/event_compassion.py b/crm_compassion/models/event_compassion.py index 54904d81b..64d4ac296 100644 --- a/crm_compassion/models/event_compassion.py +++ b/crm_compassion/models/event_compassion.py @@ -163,9 +163,11 @@ def _compute_expense_lines(self): def _compute_income_lines(self): for event in self: event.income_line_ids = event.invoice_line_ids.filtered( - lambda line: line.payment_state == "paid" - and not line.contract_id - and line.move_id.move_type == "out_invoice" + lambda line: not line.contract_id + and line.account_id.user_type_id.name == "Income" + and ((line.payment_state == "paid" + and line.move_id.move_type == "out_invoice") or + (line.move_id.move_type == "entry")) ) @api.depends("analytic_id.line_ids") @@ -178,7 +180,8 @@ def _compute_expense(self): def _compute_income(self): for event in self: incomes = event.income_line_ids - event.total_income = sum(incomes.mapped("price_subtotal") or [0]) + event.total_income = (sum(incomes.mapped("credit") or [0]) + -sum(incomes.mapped("debit") or [0])) @api.depends("total_income", "total_expense") def _compute_balance(self): From 35ceac7b99ac2bca07430b13d4159aaf3ed0b0df Mon Sep 17 00:00:00 2001 From: davidwul Date: Wed, 28 Jan 2026 11:23:25 +0100 Subject: [PATCH 2/2] Update event_compassion.py fix --- crm_compassion/models/event_compassion.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/crm_compassion/models/event_compassion.py b/crm_compassion/models/event_compassion.py index 64d4ac296..2c8f99268 100644 --- a/crm_compassion/models/event_compassion.py +++ b/crm_compassion/models/event_compassion.py @@ -180,8 +180,7 @@ def _compute_expense(self): def _compute_income(self): for event in self: incomes = event.income_line_ids - event.total_income = (sum(incomes.mapped("credit") or [0]) - -sum(incomes.mapped("debit") or [0])) + event.total_income = sum(incomes.mapped("balance") or [0]) @api.depends("total_income", "total_expense") def _compute_balance(self):