From ea6077ad918e4a42a3a912671da4048b4be2e685 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Mon, 5 Jul 2021 17:39:00 +0100 Subject: [PATCH] Bug 28656: Allow cancellations in the UI This allows cancellation against "reduced" as well as "unpaid" debts. --- Koha/Account/Line.pm | 10 ++++++++++ .../prog/en/modules/members/boraccount.tt | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Koha/Account/Line.pm b/Koha/Account/Line.pm index af88da170b..2b540f7ee1 100644 --- a/Koha/Account/Line.pm +++ b/Koha/Account/Line.pm @@ -360,6 +360,16 @@ sub void { return $void; } +=head3 can_be_cancelled + +=cut + +sub can_be_cancelled { + my ($self) = @_; + + return $self->debit_offsets->filter_by_reversable->count ? 1 : 0; +} + =head3 cancel $debit_accountline->cancel(); diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt index fd4484aeaa..3697292355 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt @@ -116,7 +116,7 @@ [% IF account.is_credit && account.status != 'VOID' %] Void payment [% END %] - [% IF account.is_debit && account.amount == account.amountoutstanding && account.status != 'CANCELLED' && !(account.debit_type_code == 'PAYOUT') %] + [% IF account.is_debit && account.status != 'CANCELLED' && !(account.debit_type_code == 'PAYOUT') && !(account.debit_type_code == 'VOID') && !account.can_be_cancelled %]
-- 2.20.1