Check if transaction needs closing after adding billings
authorBill Erickson <berick@esilibrary.com>
Fri, 4 May 2012 13:18:10 +0000 (09:18 -0400)
committerMike Rylander <mrylander@gmail.com>
Thu, 10 May 2012 13:37:27 +0000 (09:37 -0400)
This addresses the issue where issuing refunds results in a negative
ballance and it is then impossible to close the transaction by creating
new billings.

https://bugs.launchpad.net/evergreen/+bug/758982

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Money.pm

index 1058e8c..6ef33f7 100644 (file)
@@ -702,6 +702,10 @@ sub billing_items_create {
     $e->create_money_billing($billing) or return $e->die_event;
     my $evt = OpenILS::Utils::Penalty->calculate_penalties($e, $xact->usr, $U->xact_org($xact->id,$e));
     return $evt if $evt;
+
+    $evt = _check_open_xact($e, $xact->id, $xact);
+    return $evt if $evt;
+
     $e->commit;
 
     return $billing->id;