# Suite 330, Boston, MA 02111-1307 USA
use strict;
-require Exporter;
-use C4::Context;
use Date::Calc qw/Today/;
-use vars qw($VERSION @ISA @EXPORT);
-use C4::Accounts;
use Date::Manip qw/UnixDate/;
+use C4::Context;
+use C4::Accounts;
use C4::Log; # logaction
-# set the version for version checking
-$VERSION = 3.00;
-
-=head1 NAME
-
-C4::Circulation::Fines - Koha module dealing with fines
-
-=head1 SYNOPSIS
-
- use C4::Overdues;
-
-=head1 DESCRIPTION
-
-This module contains several functions for dealing with fines for
-overdue items. It is primarily used by the 'misc/fines2.pl' script.
-
-=head1 FUNCTIONS
-
-=over 2
-
-=cut
+use vars qw($VERSION @ISA @EXPORT);
-@ISA = qw(Exporter);
-# subs to rename (and maybe merge some...)
-push @EXPORT, qw(
+BEGIN {
+ # set the version for version checking
+ $VERSION = 3.01;
+ require Exporter;
+ @ISA = qw(Exporter);
+ # subs to rename (and maybe merge some...)
+ push @EXPORT, qw(
&CalcFine
&Getoverdues
&checkoverdues
&GetOverduesForBranch
&RemoveNotifyLine
&AddNotifyLine
-);
-# subs to remove
-push @EXPORT, qw(
+ );
+ # subs to remove
+ push @EXPORT, qw(
&BorType
-);
+ );
-#
-# All subs to move : check that an equivalent don't exist already before moving
-#
+ # check that an equivalent don't exist already before moving
-# subs to move to Circulation.pm
-push @EXPORT, qw(
+ # subs to move to Circulation.pm
+ push @EXPORT, qw(
&GetIssuingRules
&GetIssuesIteminfo
-);
-# subs to move to Members.pm
-push @EXPORT, qw(
+ );
+ # subs to move to Members.pm
+ push @EXPORT, qw(
&CheckBorrowerDebarred
&UpdateBorrowerDebarred
-);
-# subs to move to Biblio.pm
-push @EXPORT, qw(
+ );
+ # subs to move to Biblio.pm
+ push @EXPORT, qw(
&GetItems
&ReplacementCost
-);
+ );
+}
+
+=head1 NAME
+
+C4::Circulation::Fines - Koha module dealing with fines
+
+=head1 SYNOPSIS
+
+ use C4::Overdues;
+
+=head1 DESCRIPTION
+
+This module contains several functions for dealing with fines for
+overdue items. It is primarily used by the 'misc/fines2.pl' script.
+
+=head1 FUNCTIONS
+
+=over 2
=item Getoverdues
my $dbh = C4::Context->dbh;
my $sth = (C4::context->preference('item-level_itypes')) ?
$dbh->prepare(
- "SELECT issues.*,items.ccode as itemtype FROM issues
+ "SELECT issues.*,items.itype as itemtype FROM issues
LEFT JOIN items USING (itemnumber)
WHERE date_due < now()
AND returndate IS NULL ORDER BY borrowernumber " )
:
$dbh->prepare(
- "SELECT issues.*,biblioitems.itemtype,items.ccode FROM issues
+ "SELECT issues.*,biblioitems.itemtype,items.itype FROM issues
LEFT JOIN items USING (itemnumber)
LEFT JOIN biblioitems USING (biblioitemnumber)
WHERE date_due < now()
}
-=item AmountNotify
+=item NumberNotifyId
-(@notify) = &AmountNotify($borrowernumber);
+(@notify) = &NumberNotifyId($borrowernumber);
Returns amount for all file per borrowers
C<@notify> array contains all file per borrowers
C<$totalnotify> contains amount of a file
-C<$notify_id> contains the file number for the borrower number nad item number
+C<$notify_id> contains the file number for the borrower number and item number
=cut
sub AmountNotify{
- my ($notifyid)=@_;
+ my ($notifyid,$borrowernumber)=@_;
my $dbh = C4::Context->dbh;
my $query=qq| SELECT sum(amountoutstanding)
FROM accountlines
- WHERE notify_id=?|;
+ WHERE notify_id=? AND borrowernumber = ?|;
my $sth=$dbh->prepare($query);
- $sth->execute($notifyid);
- my $totalnotify=$sth->fetchrow;
+ $sth->execute($notifyid,$borrowernumber);
+ my $totalnotify=$sth->fetchrow;
$sth->finish;
return ($totalnotify);
}
sub GetOverduesForBranch {
my ( $branch, $location) = @_;
- my $itype_link = (C4::context->preference('item-level_itypes')) ? " items.ccode " : " biblioitems.itemtype ";
+ my $itype_link = (C4::Context->preference('item-level_itypes')) ? " items.itype " : " biblioitems.itemtype ";
if ( not $location ) {
my $dbh = C4::Context->dbh;
my $sth = $dbh->prepare("