From: Jason Stephenson Date: Wed, 8 Jan 2014 02:11:22 +0000 (-0500) Subject: LP 1198465: Fix Publisher/money.pm for billing changes. X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=6e37e38604afd7bf36ef654a13e5184cd3a15083;p=working%2FEvergreen.git LP 1198465: Fix Publisher/money.pm for billing changes. Signed-off-by: Jason Stephenson Signed-off-by: Kathy Lussier --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm index b7a6f6d785..4896e326bb 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm @@ -1130,8 +1130,8 @@ sub generate_fines { my $bill_payment_map = $CC->bill_payment_map_for_xact(undef, $c); # Pull out those entries for overdue bills in reverse date order. - my @fine_map = sort { $b->bill->billing_ts() <=> $a->bill->billing_ts() } - grep { $_->bill->btype() == 1 && $_->bill->billing_ts() > $c->$due_date_method } + my @fine_map = sort { $b->{bill}->billing_ts() <=> $a->{bill}->billing_ts() } + grep { $_->{bill}->btype() == 1 && $_->{bill}->billing_ts() > $c->$due_date_method } @{$bill_payment_map}; my $f_idx = 0; @@ -1139,15 +1139,15 @@ sub generate_fines { my $fine; if (@fine_map) { if ($overbill) { - while ($fine_map[$f_idx] and $fine_map[$f_idx]->void_amount() >= $fine_map[$f_idx]->bill_amount()) { + while ($fine_map[$f_idx] and $fine_map[$f_idx]->{void_amount} >= $fine_map[$f_idx]->{bill_amount}) { $f_idx++; } } # Set the $fine to be used for $last_fine below. - $fine = $fine_map[$f_idx]->bill() if ($fine_map[$f_idx]); + $fine = $fine_map[$f_idx]->{bill} if ($fine_map[$f_idx]); # Calculate the current fine total using the modified bill amounts from the bill payment map. - map { $current_fine_total += int($_->bill->amount() * 100) } - grep { $_->bill_amount() < $_->void_amount() } @fine_map; + map { $current_fine_total += int($_->{bill}->amount() * 100) } + grep { $_->{bill_amount} < $_->{void_amount} } @fine_map; } my $last_fine; diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/money.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/money.pm index 6b314bd0c5..d8292edf9a 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/money.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/money.pm @@ -18,7 +18,6 @@ sub _make_mbts { my $to = 0; my $lb = undef; for my $b ($x->billings) { - next if ($b->voided); #$log->debug( "billing is ".$b->amount, DEBUG ); $to += ($b->amount * 100); $lb ||= $b->billing_ts; @@ -143,7 +142,6 @@ select and c.id is null and x.circ_lib in (XX) and b.billing_ts < current_timestamp - ? * '1 day'::interval - and not b.voided and set.id IS NULL group by 1,2 @@ -162,7 +160,6 @@ select and c.id is null and x.billing_location in (XX) and b.billing_ts < current_timestamp - ? * '1 day'::interval - and not b.voided and set.id IS NULL group by 1,2 @@ -181,7 +178,6 @@ select and c.id is null and x.pickup_lib in (XX) and b.billing_ts < current_timestamp - ? * '1 day'::interval - and not b.voided and set.id IS NULL group by 1,2 ) full_list