4 #script to display reports
13 my $time=$input->param('time');
17 print startmenu('report');
22 if ($time eq 'yesterday'){
23 $date=ParseDate('yesterday');
24 $date2=ParseDate('today');
26 if ($time eq 'today'){
27 $date=ParseDate('today');
28 $date2=ParseDate('tomorrow');
30 if ($time eq 'daybefore'){
31 $date=ParseDate('2 days ago');
32 $date2=ParseDate('yesterday');
35 $date=ParseDate($time);
36 $date2=ParseDateDelta('+ 1 day');
37 $date2=DateCalc($date,$date2);
39 $date=UnixDate($date,'%Y-%m-%d');
40 $date2=UnixDate($date2,'%Y-%m-%d');
41 my @payments=TotalPaid($date);
51 print mktablerow(5,'#99cc33',bold('Name'),bold('Type'),bold('Date/time'),bold('Amount'), bold('Branch'),'/images/background-mem.gif');
52 for (my $i=0;$i<$count;$i++){
53 my $hour=substr($payments[$i]{'timestamp'},8,2);
54 my $min=substr($payments[$i]{'timestamp'},10,2);
55 my $sec=substr($payments[$i]{'timestamp'},12,2);
56 my $time="$hour:$min:$sec";
57 if ($payments[$i]{'accounttype'} ne 'W'){
58 $payments[$i]{'amount'}*=-1;
59 $total+=$payments[$i]{'amount'};
62 my @charges=getcharges($payments[$i]{'borrowernumber'},$payments[$i]{'timestamp'});
71 for (my $i2=0;$i2<$count;$i2++){
72 if ($charges[$i2]->{'amountoutstanding'} != $oldtime){
73 print mktablerow(6,'red',$charges[$i2]->{'description'},$charges[$i2]->{'accounttype'},'',
74 $charges[$i2]->{'amount'},$charges[$i2]->{'amountoutstanding'});
75 if ($payments[$i]{'accounttype'} ne 'W'){
76 # print $payments[$i]{'accounttype'};
77 if ($charges[$i2]->{'accounttype'} eq 'Rent'){
78 $temptotalr+=$charges[$i2]->{'amount'}-$charges[$i2]->{'amountoutstanding'};
80 if ($charges[$i2]->{'accounttype'} eq 'F' || $charges[$i2]->{'accounttype'} eq 'FU'){
81 $temptotalf+=$charges[$i2]->{'amount'}-$charges[$i2]->{'amountoutstanding'};
83 if ($charges[$i2]->{'accounttype'} eq 'Res'){
84 $temptotalres+=$charges[$i2]->{'amount'}-$charges[$i2]->{'amountoutstanding'};
86 if ($charges[$i2]->{'accounttype'} eq 'R'){
87 $temptotalren+=$charges[$i2]->{'amount'}-$charges[$i2]->{'amountoutstanding'};
92 if ($payments[$i]{'accounttype'} eq 'W'){
93 $totalw+=$payments[$i]{'amount'};
95 my $time2="$payments[$i]{'date'} $time";
96 my $branch=Getpaidbranch($time2);
99 $levin{'total'}+=$payments[$i]{'amount'};
100 $levin{'totalr'}+=$temptotalr;
101 $levin{'totalres'}+=$temptotalres;
102 $levin{'totalf'}+=$temptotalf;
103 $levin{'totalren'}+=$temptotalren;
106 $foxton{'total'}+=$payments[$i]{'amount'};
107 $foxton{'totalr'}+=$temptotalr;
108 $foxton{'totalres'}+=$temptotalres;
109 $foxton{'totalf'}+=$temptotalf;
110 $foxton{'totalren'}+=$temptotalren;
113 $shannon{'total'}+=$payments[$i]{'amount'};
114 $shannon{'totalr'}+=$temptotalr;
115 $shannon{'totalres'}+=$temptotalres;
116 $shannon{'totalf'}+=$temptotalf;
117 $shannon{'totalren'}+=$temptotalren;
119 print mktablerow(6,'white',"$payments[$i]{'firstname'} <b>$payments[$i]{'surname'}</b>"
120 ,$payments[$i]{'accounttype'},"$payments[$i]{'date'} $time",$payments[$i]{'amount'}
122 $oldtime=$payments[$i]{'timestamp'};
126 #$totalw=$totalw * -1;
127 print "<p><b>Total Paid $total</b>";
128 print "<br><b>total written off $totalw</b>";
130 $levin{'issues'}=Count('issue','C',$date,$date2);
131 $foxton{'issues'}=Count('issue','F',$date,$date2);
132 $shannon{'issues'}=Count('issue','S',$date,$date2);
133 $levin{'returns'}=Count('return','C',$date,$date2);
134 $foxton{'returns'}=Count('return','F',$date,$date2);
135 $shannon{'returns'}=Count('return','S',$date,$date2);
136 $levin{'renewals'}=Count('renew','C',$date,$date2);
137 $foxton{'renewals'}=Count('renew','F',$date,$date2);
138 $shannon{'renewals'}=Count('renew','S',$date,$date2);
140 print mktablerow(9,'white',"<b>Levin</b>","Fines $levin{'totalf'}","Rental Charges $levin{'totalr'}",
141 "Reserve Charges $levin{'totalres'}","Renewal Charges $levin{'totalren'}","<b>Total $levin{'total'}</b>",
142 "Issues $levin{'issues'}","Renewals $levin{'renewals'}","Returns $levin{'returns'}");
143 print mktablerow(9,'white',"<b>foxton</b>","Fines $foxton{'totalf'}","Rental Charges $foxton{'totalr'}","Reserve Charges $foxton{'totalres'}","Renewal Charges $foxton{'totalren'}","<b>Total $foxton{'total'}</b>",
144 "Issues $foxton{'issues'}","Renewals $foxton{'renewals'}","Returns $foxton{'returns'}");
145 print mktablerow(9,'white',"<b>shannon</b>","Fines $shannon{'totalf'}","Rental Charges $shannon{'totalr'}","Reserve Charges $shannon{'totalres'}","Renewal Charges $shannon{'totalren'}","<b>Total $shannon{'total'}</b>",
146 "Issues $shannon{'issues'}","Renewals $shannon{'renewals'}","Returns $shannon{'returns'}");
150 print endmenu('report');