From 259550a8f730614c91f01f817a25b0c0380a6dbb Mon Sep 17 00:00:00 2001 From: erickson Date: Wed, 28 Jun 2006 22:16:55 +0000 Subject: [PATCH] not closing xact if it is a circ and the item is still out git-svn-id: svn://svn.open-ils.org/ILS/trunk@4825 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../perlmods/OpenILS/Application/Circ/Money.pm | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Circ/Money.pm b/Open-ILS/src/perlmods/OpenILS/Application/Circ/Money.pm index fa3e2c117c..300a78c116 100644 --- a/Open-ILS/src/perlmods/OpenILS/Application/Circ/Money.pm +++ b/Open-ILS/src/perlmods/OpenILS/Application/Circ/Money.pm @@ -130,13 +130,19 @@ sub make_payments { $trans = $session->request( "open-ils.storage.direct.money.billable_transaction.retrieve", $transid )->gather(1); - $trans->xact_finish("now"); - my $s = $session->request( - "open-ils.storage.direct.money.billable_transaction.update", $trans )->gather(1); + # If this is a circulation, we can't close the transaction unless stop_fines is set + my $circ = $session->request( + 'open-ils.storage.direct.action.circulation.retrieve', $transid )->gather(1); - if(!$s) { throw OpenSRF::EX::ERROR - ("Error updating billable_xact in circ.money.payment"); } - + if( !$circ || $circ->stop_fines ) { + + $trans->xact_finish("now"); + my $s = $session->request( + "open-ils.storage.direct.money.billable_transaction.update", $trans )->gather(1); + + if(!$s) { throw OpenSRF::EX::ERROR + ("Error updating billable_xact in circ.money.payment"); } + } } -- 2.43.2