Bug 10317: improve display when order receiving page is given an invalid invoiceid
This patch fixes some things on the order receiving/parcel page.
1/ Removes dead code
2/ Displays an error message if invoiceid is unset or does not refer to an
invoice
3/ Fixes a bug in the note ("change note" and "add note" links)
Test plan:
1/ Try to call the invoice page with an existing invoiceid and check
that order results are consistent.
2/ Try without invoiceid or a bad invoiceid and check that an error
message is displayed.
3/ Add and change notes.
Signed-off-by: Cedric Vita <cedric.vita@dracenie.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works nicely for all tests done.
- parcel.pl with invalid invoicenumber gives a nice error message
- parcel.pl with a valid invoicenumber looks normal
- changing and editing order notes works well
Passes QA script.
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
This commit is contained in:
parent
96ac578960
commit
d932f6ff25
|
|
@ -118,6 +118,18 @@ my ($template, $loggedinuser, $cookie)
|
|||
});
|
||||
|
||||
my $invoiceid = $input->param('invoiceid');
|
||||
my $invoice;
|
||||
$invoice = GetInvoiceDetails($invoiceid) if $invoiceid;
|
||||
|
||||
unless( $invoiceid and $invoice->{invoiceid} ) {
|
||||
$template->param(
|
||||
error_invoice_not_known => 1,
|
||||
no_orders_to_display => 1
|
||||
);
|
||||
output_html_with_http_headers $input, $cookie, $template->output;
|
||||
exit;
|
||||
}
|
||||
|
||||
my $op = $input->param('op') // '';
|
||||
|
||||
if ($op eq 'cancelreceipt') {
|
||||
|
|
@ -128,29 +140,10 @@ if ($op eq 'cancelreceipt') {
|
|||
}
|
||||
}
|
||||
|
||||
my $invoice = GetInvoiceDetails($invoiceid);
|
||||
my $booksellerid = $invoice->{booksellerid};
|
||||
my $bookseller = GetBookSellerFromId($booksellerid);
|
||||
my $gst = $bookseller->{gstrate} // C4::Context->preference("gist") // 0;
|
||||
my $datereceived = C4::Dates->new();
|
||||
my $code = $input->param('code');
|
||||
my @rcv_err = $input->param('error');
|
||||
my @rcv_err_barcode = $input->param('error_bc');
|
||||
|
||||
|
||||
|
||||
# If receiving error, report the error (coming from finishrecieve.pl(sic)).
|
||||
if( scalar(@rcv_err) ) {
|
||||
my $cnt=0;
|
||||
my $error_loop;
|
||||
for my $err (@rcv_err) {
|
||||
push @$error_loop, { "error_$err" => 1 , barcode => $rcv_err_barcode[$cnt] };
|
||||
$cnt++;
|
||||
}
|
||||
$template->param( receive_error => 1 ,
|
||||
error_loop => $error_loop,
|
||||
);
|
||||
}
|
||||
|
||||
my $cfstr = "%.2f"; # currency format string -- could get this from currency table.
|
||||
my @parcelitems = @{ $invoice->{orders} };
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
dt_overwrite_html_sorting_localeCompare();
|
||||
|
||||
$(document).ready(function(){
|
||||
if ( $("#pendingt").length ) {
|
||||
var pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, {
|
||||
"bStateSave": true,
|
||||
"iCookieDuration": 60*60*24*1000, // 1000 days
|
||||
|
|
@ -35,6 +36,8 @@
|
|||
],
|
||||
"sPaginationType": "four_button"
|
||||
} ) );
|
||||
}
|
||||
if ( $("#receivedt").length ) {
|
||||
var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, {
|
||||
"bStateSave": true,
|
||||
"iCookieDuration": 60*60*24*1000, // 1000 days
|
||||
|
|
@ -55,11 +58,7 @@
|
|||
],
|
||||
"sPaginationType": "four_button"
|
||||
} ) );
|
||||
/*
|
||||
$("#pendingt").tablesorter({
|
||||
headers: { 2: { sorter: 'articles' },3: { sorter: false },8:{sorter:false}}
|
||||
});
|
||||
*/
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
|
@ -144,7 +143,7 @@
|
|||
[% END %]
|
||||
|
||||
[% IF (error_cancelling_receipt) %]
|
||||
<div class="error">
|
||||
<div class="dialog error">
|
||||
Cannot cancel receipt. Possible reasons :
|
||||
<ul>
|
||||
<li>
|
||||
|
|
@ -161,6 +160,13 @@
|
|||
</div>
|
||||
[% END %]
|
||||
|
||||
[% IF error_invoice_not_known %]
|
||||
<div class="dialog error">
|
||||
The invoice referenced by this invoiceid does not exist.
|
||||
</div>
|
||||
[% END %]
|
||||
|
||||
[% UNLESS no_orders_to_display %]
|
||||
<div id="acqui_receive_summary">
|
||||
<p><strong>Invoice number:</strong> [% invoice %] <strong>Received by:</strong> [% loggedinusername %] <strong>On:</strong> [% formatteddatereceived %]</p>
|
||||
</div>
|
||||
|
|
@ -200,9 +206,9 @@
|
|||
[% END %]
|
||||
<br />
|
||||
[% IF ( loop_order.notes ) %]
|
||||
<p class="ordernote"><strong>Note: </strong>[% loop_order.notes|html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Change note</a>]</p>
|
||||
<p class="ordernote"><strong>Note: </strong>[% loop_order.notes|html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid %]">Change note</a>]</p>
|
||||
[% ELSE %]
|
||||
[<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Add note</a>]
|
||||
[<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid %]">Add note</a>]
|
||||
[% END %]
|
||||
</td>
|
||||
<td><a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td>
|
||||
|
|
@ -333,7 +339,6 @@
|
|||
[% ELSE %]There are no received orders.[% END %]
|
||||
</div>
|
||||
|
||||
<!--<form action="/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% booksellerid %]" method="post">-->
|
||||
[% IF (invoiceclosedate) %]
|
||||
<a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid %]">View invoice</a>
|
||||
[% ELSE %]
|
||||
|
|
@ -345,8 +350,12 @@
|
|||
</form>
|
||||
[% END %]
|
||||
|
||||
[% END %]
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="yui-b">
|
||||
<form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post">
|
||||
<fieldset class="brief">
|
||||
|
|
|
|||
Loading…
Reference in New Issue