[Koha-patches] [PATCH] Bug 3803 Add PO Number and ISSN to orders display in basket
Colin Campbell
colin.campbell at ptfs-europe.com
Mon Nov 23 12:29:47 CET 2009
Removed some old code from basket display
Added use warnings to basket.pl
Suppress some warnings generated in basket.pl
---
C4/Acquisition.pm | 11 +---
acqui/basket.pl | 53 ++++++++++----------
.../prog/en/modules/acqui/basket.tmpl | 12 +++-
3 files changed, 37 insertions(+), 39 deletions(-)
diff --git a/C4/Acquisition.pm b/C4/Acquisition.pm
index d8a6c95..3ad4cd9 100644
--- a/C4/Acquisition.pm
+++ b/C4/Acquisition.pm
@@ -226,7 +226,6 @@ sub GetPendingOrders {
my $sth = $dbh->prepare($strsth);
$sth->execute( @query_params );
my $results = $sth->fetchall_arrayref({});
- $sth->finish;
return $results;
}
@@ -271,15 +270,9 @@ sub GetOrders {
$orderby = "biblioitems.publishercode,biblio.title" unless $orderby;
$query .= " ORDER BY $orderby";
- my $sth = $dbh->prepare($query);
- $sth->execute($basketno);
- my @results;
- while ( my $data = $sth->fetchrow_hashref ) {
- push @results, $data;
- }
- $sth->finish;
- return @results;
+ my $order_rows = $dbh->selectall_arrayref($query, { Slice => {} }, $basketno);
+ return @{ $order_rows };
}
#------------------------------------------------------------#
diff --git a/acqui/basket.pl b/acqui/basket.pl
index 0e29473..3322f46 100755
--- a/acqui/basket.pl
+++ b/acqui/basket.pl
@@ -21,6 +21,7 @@
# Suite 330, Boston, MA 02111-1307 USA
use strict;
+use warnings;
use C4::Auth;
use C4::Koha;
use C4::Output;
@@ -133,7 +134,6 @@ else {
$basket->{creationdate}, $basket->{authorisedby};
my @results = GetOrders( $basketno, $sort );
- my $count = scalar @results;
my $sub_total; # total of line totals
my $grand_total; # $subttotal + $gist
@@ -145,24 +145,23 @@ else {
my $qty_total;
my @books_loop;
- for ( my $i = 0 ; $i < $count ; $i++ ) {
- my $rrp = $results[$i]->{'listprice'};
- my $qty = $results[$i]->{'quantity'};
- $rrp = ConvertCurrency( $results[$i]->{'currency'}, $rrp );
- $sub_total_rrp += $qty * $results[$i]->{'rrp'};
- my $line_total = $qty * $results[$i]->{'ecost'};
+ my $line_id = 0;
+ for my $orderline (@results) {
+ my $rrp = $orderline->{'listprice'};
+ my $qty = $orderline->{'quantity'};
+ $rrp = ConvertCurrency( $orderline->{'currency'}, $rrp );
+ $sub_total_rrp += $qty * $orderline->{'rrp'};
+ my $line_total = $qty * $orderline->{'ecost'};
# FIXME: what about the "actual cost" field?
$sub_total += $line_total;
$qty_total += $qty;
- my %line = %{ $results[$i] };
- ($i%2) and $line{toggle} = 1;
- $line{order_received}= ( $qty eq $results[$i]->{'quantityreceived'} );
+ my %line = %{ $orderline };
+ $line{order_received}= ( $qty eq $orderline->{'quantityreceived'} );
$line{basketno} = $basketno;
- $line{i} = $i;
+ $line{i} = $line_id++;
$line{rrp} = sprintf( "%.2f", $line{'rrp'} );
$line{ecost} = sprintf( "%.2f", $line{'ecost'} );
$line{line_total} = sprintf( "%.2f", $line_total );
- $line{odd} = $i % 2;
push @books_loop, \%line;
}
my $prefgist = C4::Context->preference("gist") || 0;
@@ -196,21 +195,21 @@ else {
address4 => $bookseller->{'address4'},
entrydate => format_date( $results[0]->{'entrydate'} ),
books_loop => \@books_loop,
- sort_loop => \@sort_loop,
- count => $count,
- gist => $gist ? sprintf( "%.2f", $gist ) : 0,
- gist_rate => sprintf( "%.2f", $prefgist * 100) . '%',
- gist_est => sprintf( "%.2f", $sub_total_est * $prefgist ),
- gist_rrp => sprintf( "%.2f", $gist_rrp),
- sub_total => sprintf( "%.2f", $sub_total ),
- grand_total => sprintf( "%.2f", $grand_total ),
- sub_total_est => sprintf( "%.2f", $sub_total_est),
- grand_total_est => sprintf( "%.2f", $grand_total_est),
- sub_total_rrp => sprintf( "%.2f", $sub_total_rrp),
- grand_total_rrp => sprintf( "%.2f", $sub_total_rrp + $gist_rrp),
- currency => $bookseller->{'listprice'},
- qty_total => $qty_total,
- GST => $prefgist,
+ sort_loop => \@sort_loop,
+ count => scalar @results,
+ gist => $gist ? sprintf( '%.2f', $gist ) : 0,
+ gist_rate => $prefgist ? sprintf( '%.2f%%', $prefgist * 100 ) : '0%',
+ gist_est => $gist_total_est && $prefgist ? sprintf( '%.2f', $sub_total_est * $prefgist ) : 0,
+ gist_rrp => $gist_rrp ? sprintf( '%.2f', $gist_rrp ) : 0,
+ sub_total => $sub_total ? sprintf( '%.2f', $sub_total ) : 0,
+ grand_total => $grand_total ? sprintf( '%.2f', $grand_total ) : 0,
+ sub_total_est => $sub_total_est ? sprintf( '%.2f', $sub_total_est ) : 0,
+ grand_total_est => $grand_total_est ? sprintf( '%.2f', $grand_total_est ) : 0,
+ sub_total_rrp => $sub_total_rrp ? sprintf( '%.2f', $sub_total_rrp ) : 0,
+ grand_total_rrp => $grand_total_rrp ? sprintf( '%.2f', $sub_total_rrp + $gist_rrp ) : 0,
+ currency => $bookseller->{'listprice'},
+ qty_total => $qty_total,
+ GST => $prefgist,
);
}
output_html_with_http_headers $query, $cookie, $template->output;
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tmpl
index cee6d91..91a9fe7 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basket.tmpl
@@ -64,8 +64,9 @@
<table>
<tr>
<th>Order</th>
+ <th>PO Number</th>
<th>Title</th>
- <th>ISBN</th>
+ <th>ISBN/ISSN</th>
<th><a href="basket.pl?basketno=<!-- TMPL_VAR name="basketno" -->&order=biblioitems.publishercode">Publisher</a></th>
<th>RRP</th>
<th>Est.</th>
@@ -85,6 +86,7 @@
<!-- TMPL_IF NAME="order_received" --><tr class="disabled"><!-- TMPL_ELSE --><!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF --><!-- /TMPL_IF -->
<td><!-- TMPL_VAR NAME="ordernumber" -->
<!-- TMPL_IF NAME="order_received" --> (rcvd)<!-- /TMPL_IF --></td>
+ <td><!-- TMPL_VAR NAME="purchaseordernumber" --></td>
<td>
<p>
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR name="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a></p>
@@ -92,7 +94,11 @@
<!-- TMPL_IF name="notes" --></p><p><!--TMPL_VAR name="notes" --><!-- /TMPL_IF -->
</p>
</td>
- <td><!-- TMPL_IF name="isbn"--><!-- TMPL_VAR name="isbn" --><!-- /TMPL_IF --></td>
+ <td>
+ <!-- TMPL_IF name="isbn"--><!-- TMPL_VAR name="isbn" --><!-- /TMPL_IF -->
+
+ <!-- TMPL_IF name="issn"--><!-- TMPL_VAR name="issn" --><!-- /TMPL_IF -->
+ </td>
<td><!-- TMPL_VAR NAME="publishercode" --></td>
<td class="number"><!-- TMPL_VAR NAME="rrp" --></td>
<td class="number"><!-- TMPL_VAR NAME="ecost" --></td>
@@ -112,7 +118,7 @@
</tr>
<!-- /TMPL_LOOP -->
<tr>
- <td colspan="2" rowspan="3">
+ <td colspan="4" rowspan="3">
<input type="hidden" name="number" value="<!-- TMPL_VAR NAME="count" -->" />
<input type="hidden" name="basketno" value="<!-- TMPL_VAR NAME="basketno" -->" />
</td>
--
1.6.5.2
More information about the Koha-patches
mailing list