Browse Source

fixing fine info

master
chris 25 years ago
parent
commit
f94cb3cf7f
  1. 2
      C4/Circulation/Fines.pm
  2. 40
      charges.pl
  3. 4
      fines.pl

2
C4/Circulation/Fines.pm

@ -84,10 +84,12 @@ categoryitem.categorycode='$bortype'";
$sth->finish;
my $amount=0;
if ($difference >= $data->{'startcharge'}){
if ($data->{'chargeperiod'} != 0){
my $temp=$difference % $data->{'chargeperiod'};
$difference=$difference - $temp;
$amount=($difference / $data->{'chargeperiod'}) * $data->{'fine'};
}
}
$dbh->disconnect;
return($amount);
}

40
charges.pl

@ -13,18 +13,48 @@ print $input->header;
my $type=$input->param('type');
print startpage();
print startmenu('issue');
print "Each box needs to be filled in with fine,time to start charging,charging cycle<br>
eg 1,7,7 = $1 fine, after 7 days, every 7 days";
my $dbh=C4Connect;
my $query="Select description from categories";
my $query="Select description,categorycode from categories";
my $sth=$dbh->prepare($query);
$sth->execute;
print "<Table><tr><td> &nbsp</td>";
print mktablehdr;
my @trow;
my @trow3;
my $i=0;
while (my $data=$sth->fetchrow_hashref){
$trow[$i]=$data->{'description'};
$trow3[$i]=$data->{'categorycode'};
$i++;
}
$sth->finish;
print mktablerow(10,'white','',@trow);
print "<form action=/cgi-bin/koha/updatecharges.pl method=post>";
$query="Select description,itemtype from itemtypes";
$sth=$dbh->prepare($query);
$sth->execute;
$i=0;
while (my $data=$sth->fetchrow_hashref){
print "<td>$data->{'description'}</td>";
my @trow2;
for ($i=0;$i<9;$i++){
$query="select * from categoryitem where categorycode='$trow3[$i]' and itemtype='$data->{'itemtype'}'";
my $sth2=$dbh->prepare($query);
$sth2->execute;
my $dat=$sth2->fetchrow_hashref;
$sth2->finish;
my $fine=$dat->{'fine'}+0;
$trow2[$i]="<input type=text name=\"$trow3[$i]$data->{'itemtype'}\" value=\"$fine,$dat->{'startcharge'},$dat->{'chargeperiod'}\" size=6>";
}
print "</tr>";
print mktablerow(11,'white',$data->{'description'},@trow2);
}
$sth->finish;
print "</table>";
print "<input type=submit></form>";
print endmenu('issue');
print endpage();

4
fines.pl

@ -30,8 +30,12 @@ for (my $i=0;$i<$count;$i++){
if ($amount > $max){
$amount=25;
}
if ($amount > 0){
UpdateFine($data->[$i]->{'itemnumber'},$bornum,$amount);
print "$amount\n";
} else {
print "0 fine\n";
}
}
}
}

Loading…
Cancel
Save