my $dbh = C4::Context->dbh;
my $sth = (C4::Context->preference('item-level_itypes')) ?
$dbh->prepare(
- "SELECT issues.*,items.itype as itemtype FROM issues
+ "SELECT issues.*,items.itype as itemtype, items.homebranch FROM issues
LEFT JOIN items USING (itemnumber)
WHERE date_due < now()
ORDER BY borrowernumber " )
:
$dbh->prepare(
- "SELECT issues.*,biblioitems.itemtype,items.itype FROM issues
+ "SELECT issues.*,biblioitems.itemtype,items.itype, items.homebranch FROM issues
LEFT JOIN items USING (itemnumber)
LEFT JOIN biblioitems USING (biblioitemnumber)
WHERE date_due < now()
my $countalldayclosed = $countspecialday + $countrepeatableday;
my $daycount = $difference - $countalldayclosed;
# get issuingrules (fines part will be used)
- my $data = C4::Circulation::GetIssuingRule($item->{'itemtype'},$bortype,$branchcode);
+ my $data = C4::Circulation::GetIssuingRule($bortype, $item->{'itemtype'},$branchcode);
my $daycounttotal = $daycount - $data->{'firstremind'};
if ($data->{'chargeperiod'} >0) { # if there is a rule for this bortype
if ($data->{'firstremind'} < $daycount)
#
}
-# warn "Calc Fine: " . join(", ", ($item->{'itemnumber'}, $bortype, $difference , $data->{'fine'} . " * " . $daycount . " days = \$ " . $amount , "desc: $dues")) ;
+ # warn "Calc Fine: " . join(", ", ($item->{'itemnumber'}, $bortype, $difference , $data->{'fine'} . " * " . $daycount . " days = \$ " . $amount , "desc: $dues")) ;
return ( $amount, $data->{'chargename'}, $printout ,$daycounttotal ,$daycount );
}
sub CreateItemAccountLine {
my ($borrowernumber,$itemnumber,$date,$amount,$description,$accounttype,$amountoutstanding,$timestamp,$notify_id,$level)=@_;
my $dbh = C4::Context->dbh;
- my $nextaccntno = getnextacctno($borrowernumber);
+ my $nextaccntno = C4::Accounts::getnextacctno($borrowernumber);
my $query= "INSERT into accountlines
(borrowernumber,accountno,itemnumber,date,amount,description,accounttype,amountoutstanding,timestamp,notify_id,notify_level)
VALUES
use C4::Overdues;
use Date::Manip qw/Date_DaysSince1BC/;
use C4::Biblio;
-
+#use Data::Dumper;
+#
my $fldir = "/tmp";
my $libname=C4::Context->preference('LibraryName');
$branchcode = $data->[$i]->{'homebranch'};
} elsif ( C4::Context->preference('CircControl') eq 'PatronLibrary' ) {
$branchcode = $borrower->{'branchcode'};
- } else {
+} else {
# CircControl must be PickupLibrary. (branchcode comes from issues table here).
$branchcode = $data->[$i]->{'branchcode'};
}
my ($amount,$type,$printout,$daycounttotal,$daycount)=
CalcFine($data->[$i], $borrower->{'categorycode'}, $branchcode,
$difference, $datedue);
-
-
my ($delays1,$delays2,$delays3)=GetOverdueDelays($borrower->{'categorycode'});
- my $issuingrules=GetIssuingRule($data->[$i]->{'itemnumber'},$borrower->{'categorycode'},$branchcode);
-
- UpdateFine($data->[$i]->{'itemnumber'},$data->[$i]->{'borrowernumber'},$amount,$type,$due);
-
+ my $issuingrules=GetIssuingRule($borrower->{'categorycode'}, $data->[$i]->{'itemnumber'},$branchcode);
+ UpdateFine($data->[$i]->{'itemnumber'},$data->[$i]->{'borrowernumber'},$amount,$type,$due) if( $amount > 0 ) ;
if($delays1 and $delays2 and $delays3) {
my $debarredstatus=CheckBorrowerDebarred($borrower->{'borrowernumber'});