6 [% USE currency = format('%.2f') -%]
7 [% PROCESS 'i18n.inc' %]
9 [% INCLUDE 'doc-head-open.inc' %]
10 <title>Koha › Acquisitions › [% IF ( date ) %]
11 Receipt summary for [% name | html %] [% IF ( invoice ) %]invoice [% invoice | html %][% END %] on [% datereceived | $KohaDates %][% ELSE %]Receive orders from [% name | html %][% END %]</title>
12 [% INCLUDE 'doc-head-close.inc' %]
15 <body id="acq_parcel" class="acq">
16 [% INCLUDE 'header.inc' %]
17 [% INCLUDE 'acquisitions-search.inc' %]
19 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> ›
21 Receipt summary for <i>[% name | html %]</i>
23 <i>[ [% invoice | html %] ]</i>
25 on <i>[% datereceived | $KohaDates %]</i>
27 Receive orders from [% name | html %]
32 <div class="main container-fluid">
34 <div class="col-sm-10 col-sm-push-2">
37 [% IF ( receive_error ) %]
38 <div class="dialog alert">
39 <h3>Error adding items:</h3>
41 [% FOREACH error_loo IN error_loop %]
42 <li>[% error_loo.error_param | html %][% IF ( error_loo.error_duplicate_barcode ) %]Duplicate Barcode[% END %] <!-- todo: other error conditions come here. --></li>
49 Receipt summary for <i>[% name | html %]</i> [% IF ( invoice ) %] <i> [ [% invoice | html %] ] </i>[% END %] on <i>[% datereceived | $KohaDates %]</i>
51 Receive orders from [% name | html %]
55 [% IF ( success_delorder ) %]
56 <div class="dialog message">The order has been successfully canceled.</div>
58 [% IF ( error_delitem ) %]
59 <div class="dialog alert">The order has been canceled, although one or more items could not have been deleted.</div>
61 [% IF ( error_delbiblio ) %]
62 <div class="dialog alert">The order has been canceled, although the record has not been deleted.</div>
66 [% IF (error_cancelling_receipt) %]
67 <div class="dialog alert">
68 Cannot cancel receipt. Possible reasons :
71 The order line you trying to cancel was created from a partial receipt
72 of another order line which is already received. Try to cancel this
76 The order line you trying to cancel was created from a partial receipt
77 of another order line which has been deleted. Cancellation is not
84 [% IF error_invoice_not_known %]
85 <div class="dialog alert">
86 The invoice referenced by this invoiceid does not exist.
90 [% UNLESS no_orders_to_display %]
91 <div id="acqui_receive_summary">
92 <p><strong>Invoice number:</strong> [% invoice | html %] <strong>Received by:</strong> [% logged_in_user.userid | html %] <strong>On:</strong> [% datereceived | $KohaDates %]</p>
94 [% UNLESS (invoiceclosedate) %]
95 <div id="acqui_receive_search">
96 <h3>Pending orders</h3>
98 [% IF ( loop_orders ) %]
102 <th>Basket search</th>
103 <th>Basket group search</th>
104 <th>Order line search</th>
105 <th>Summary search</th>
107 <th>Replacement price search</th>
108 <th>Quantity search</th>
109 <th>Unit cost search</th>
110 <th>Order cost search</th>
117 <th>Basket group</th>
121 <th>Replacement price</th>
130 <tbody class="filterclass">
131 [% FOREACH loop_order IN loop_orders %]
133 <td class="basketfilterclass"><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_order.basketno | uri %]">[% loop_order.basketname | html %] ([% loop_order.basketno | html %])</a></td>
135 [% IF loop_order.basketgroupid %]
136 <a href="/cgi-bin/koha/acqui/basketgroup.pl?op=add&booksellerid=[% booksellerid | uri %]&basketgroupid=[% loop_order.basketgroupid | uri %]">[% loop_order.basketgroupname | html %] ([% loop_order.basketgroupid | html %])</a>
141 <td class="orderfilterclass"><a href="neworderempty.pl?ordernumber=[% loop_order.ordernumber | uri %]&booksellerid=[% loop_order.booksellerid | uri %]">[% loop_order.ordernumber | html %]</a></td>
142 <td class="summaryfilterclass">
143 <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_order.biblionumber | uri %]">[% loop_order.title | html %]</a>
144 [% IF ( loop_order.author ) %] by [% loop_order.author | html %][% END %]
145 [% IF ( loop_order.isbn ) %] – [% loop_order.isbn | html %][% END %]
146 [% IF ( loop_order.publishercode ) %]
147 <br />Publisher: [% loop_order.publishercode | html %]
148 [%- IF ( loop_order.publicationyear > 0) -%], [% loop_order.publicationyear | html %]
149 [%- ELSIF ( loop_order.copyrightdate > 0) -%] [% loop_order.copyrightdate | html %]
152 [% IF ( loop_order.suggestionid ) %]
154 Suggested by: <a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_order.suggestionid | uri %]&op=show">[% loop_order.surnamesuggestedby | html %][% IF ( loop_order.firstnamesuggestedby ) %], [% loop_order.firstnamesuggestedby | html %] [% END %]( #[% loop_order.suggestionid | html %])</a>
157 [% IF ( loop_order.order_internalnote ) %]
158 <p class="ordernote"><strong>Internal note: </strong>[% loop_order.order_internalnote | html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=internal">Change internal note</a>]</p>
160 [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=internal">Add internal note</a>]
162 [% IF ( loop_order.order_vendornote ) %]
163 <p class="ordernote"><strong>Vendor note: </strong>[% loop_order.order_vendornote | html %]</p>
165 [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=vendor">Add vendor note</a>]
169 <a href="/cgi-bin/koha/acqui/showorder.pl?ordernumber=[% loop_order.ordernumber | uri %]" class="previewData">[% tp('noun', 'Order') | html %]</a><br>
170 <a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_order.biblionumber | uri %]" class="previewData">MARC</a><br>
171 <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&id=[% loop_order.biblionumber | uri %]" class="previewData">Card</a>
173 <td>[% loop_order.replacementprice | $Price %]</td>
174 <td>[% loop_order.quantity | html %]</td>
175 <td>[% loop_order.ecost | $Price %]</td>
176 <td>[% loop_order.total | $Price %]</td>
177 <td>[% loop_order.budget_name | html %]</td>
179 <a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber | uri %]&invoiceid=[% invoiceid | uri %]">Receive</a>
181 <a href="#" onclick="transfer_order_popup([% loop_order.ordernumber | html %]); return false;">Transfer</a>
184 [% IF ( loop_order.left_holds_on_order ) %]
185 <span class="button" title="Can't cancel order, ([% loop_order.holds_on_order | html %]) holds are linked with this order. Cancel holds first">Can't cancel order</span><br>
187 <a href="/cgi-bin/koha/acqui/cancelorder.pl?ordernumber=[% loop_order.ordernumber | uri %]&biblionumber=[% loop_order.biblionumber | uri %]&referrer=[% "/cgi-bin/koha/acqui/parcel.pl?invoiceid=$invoiceid" | uri %]">Cancel order</a><br />
189 [% IF ( loop_order.can_del_bib ) %]
190 <a href="/cgi-bin/koha/acqui/cancelorder.pl?ordernumber=[% loop_order.ordernumber | uri %]&biblionumber=[% loop_order.biblionumber | uri %]&del_biblio=1&referrer=[% "/cgi-bin/koha/acqui/parcel.pl?invoiceid=$invoiceid" | uri %]">Cancel order and catalog record</a><br />
192 <span class="button" title="Can't delete catalog record, see constraints below">Can't cancel order and delete catalog record</span><br>
194 [% IF ( loop_order.left_item ) %]
195 <b title="Can't delete catalog record, because of [% loop_order.items | html %] existing item(s)" >[% loop_order.items | html %] item(s) left</b><br>
197 [% IF ( loop_order.left_biblio ) %]
198 <b title="Can't delete catalog record, delete other orders linked to it first">[% loop_order.biblios | html %] order(s) left</b><br>
200 [% IF ( loop_order.left_subscription ) %]
201 <b title="Can't delete catalog record, delete subscriptions first">[% loop_order.subscriptions | html %] subscription(s) left</b><br>
203 [% IF ( loop_order.left_holds ) %]
204 <b title="Can't delete catalog record or order, cancel holds first">[% loop_order.holds | html %] hold(s) left</b>
211 [% ELSE %]There are no pending orders.[% END %]
215 Invoice is closed, so you can't receive orders anymore.
216 [% IF CAN_user_acquisition_reopen_closed_invoices %]
217 <a href="/cgi-bin/koha/acqui/invoice.pl?op=reopen&invoiceid=[% invoiceid | uri %]&referer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]">Reopen it</a>.
222 <div id="acqui_receive_receivelist">
223 <h3>Already received</h3>
225 [% IF ( loop_received ) %]
226 <form action="/cgi-bin/koha/acqui/parcel.pl" method="get" name="orderform">
227 <table id="receivedt">
231 <th>Basket group</th>
233 <th title="Item holds / Total holds">Holds</th>
236 <th>Replacement price</th>
246 [% FOREACH key IN subtotal_for_funds.keys.sort %]
248 [% IF invoiceincgst %]
249 <td colspan="6" class="total">(Tax inc.)</td>
251 <td colspan="6" class="total">(Tax exc.)</td>
253 <td colspan="3"><i>Subtotal for</i> [% key | html %]</td>
254 <td>[% subtotal_for_funds.$key.ecost | $Price %]</td>
255 <td>[% subtotal_for_funds.$key.unitprice | $Price %]</td>
261 <th colspan="11" class="total">Total tax exc.</th>
262 <th>[% total_tax_excluded | $Price %]</th>
265 [% FOREACH book_foot IN book_foot_loop %]
267 <th colspan="11">Total (GST [% book_foot.tax_rate * 100 | html %]%)</th>
268 <th>[% book_foot.tax_value | $Price %]</th>
273 <th colspan="11" class="total">Total tax inc.</th>
274 <th>[% total_tax_included | $Price %]</th>
278 <tbody class="filterclass">
279 [% FOREACH order IN loop_received %]
281 <td><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% order.basketno | uri %]"> [% order.basketname | html %] ([% order.basketno | html %])</a></td>
283 [% IF order.basketgroupid %]
284 <a href="/cgi-bin/koha/acqui/basketgroup.pl?op=add&booksellerid=[% booksellerid | uri %]">[% order.basketgroupname | html %] ([% order.basketgroupid | html %])</a>
290 <a href="neworderempty.pl?ordernumber=[% order.ordernumber | uri %]&booksellerid=[% booksellerid | uri %]">[% order.ordernumber | html %]</a>
291 [% IF (order.parent_ordernumber && (order.parent_ordernumber != order.ordernumber)) %]
292 (<a href="neworderempty.pl?ordernumber=[% order.parent_ordernumber | uri %]&booksellerid=[% booksellerid | uri %]" title="Original order line">[% order.parent_ordernumber | html %]</a>)
296 [% IF order.total_holds > 0 %]
297 [% IF order.item_holds > 0 %]
298 <span class="error"><a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% order.biblionumber | uri %]">[% order.item_holds | html %]</a></span>
303 <span class="error"><a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% order.biblionumber | uri %]">[% order.total_holds | html %]</a></span>
308 <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% order.biblionumber | uri %]">[% order.title | html %]</a>
309 [% IF ( order.author ) %] / [% order.author | html %][% END %]
310 [% IF ( order.isbn ) %] - [% order.isbn | html %][% END %]
311 [% IF ( order.publishercode ) %]
312 <br />Publisher: [% order.publishercode | html %]
313 [%- IF ( order.publicationyear > 0) -%], [% order.publicationyear | html %]
314 [%- ELSIF ( order.copyrightdate > 0) -%] [% order.copyrightdate | html %]
317 [% IF ( order.suggestionid ) %]
319 Suggested by: [% order.surnamesuggestedby | html %][% IF ( order.firstnamesuggestedby ) %], [% order.firstnamesuggestedby | html %] [% END %]
320 (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% order.suggestionid | uri %]&op=show">suggestion #[% order.suggestionid | html %]</a>)
323 [% IF ( order.order_internalnote ) %]
324 <p class="ordernote"><strong>Internal note: </strong>[% order.order_internalnote | html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=internal">Change internal note</a>]</p>
326 [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=internal">Add internal note</a>]
328 [% IF ( order.order_vendornote ) %]
329 <p class="ordernote"><strong>Vendor note: </strong>[% order.order_vendornote | html %]</p>
331 [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% order.ordernumber | uri %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid | uri %]&type=vendor">Add vendor note</a>]
335 <a href="/cgi-bin/koha/acqui/showorder.pl?ordernumber=[% order.ordernumber | uri %]" class="previewData">[% tp('noun', 'Order') | html %]</a><br>
336 <a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% order.biblionumber | uri %]" class="previewData">MARC</a><br>
337 <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&id=[% order.biblionumber | uri %]" class="previewData">Card</a>
339 <td>[% order.replacementprice | $Price %]</td>
340 <td>[% order.quantityreceived | html %]</td>
341 <td>[% order.budget.budget_name | html %]</td>
342 <td>[% order.ecost | $Price %]</td>
343 <td>[% order.unitprice | $Price %]</td>
344 <td>[% order.total | $Price %]</td>
346 [% IF loop_receive.cannot_cancel or ( order.basket.effective_create_items == "receiving" and loop_receive.holds > 0 ) %]
347 [% IF loop_receive.cannot_cancel %]
348 [% span_title = BLOCK %]
349 Cannot cancel receipt of this order line because it
350 was created from a partial receipt of order line no.
351 [% order.parent_ordernumber | html %], which is
352 already received. Try cancelling this one first and
356 [%# FIXME Here we block the cancellation if holds exist. Actually it could be possible if items will be exist after the deletion %]
357 [%# Some additional checks should be added in the pl file %]
358 [% span_title = BLOCK %]
359 Cannot cancel receipt of this order line because at least one reservation exists on the records.
362 <span title="[% span_title | collapse | html %]">
366 <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid | uri %]&op=cancelreceipt&ordernumber=[% order.ordernumber | uri %]">Cancel receipt</a>
375 [% ELSE %]There are no received orders.[% END %]
378 <div id="dataPreview" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="dataPreviewLabel" aria-hidden="true">
379 <div class="modal-dialog">
380 <div class="modal-content">
381 <div class="modal-header">
382 <button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
383 <h3 id="dataPreviewLabel">MARC preview</h3>
385 <div class="modal-body">
386 <div id="loading"> <img src="[% interface | html %]/[% theme | html %]/img/spinner-small.gif" alt="" /> Loading </div>
388 <div class="modal-footer">
389 <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Close</button>
395 [% IF (invoiceclosedate) %]
396 <a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid | uri %]">View invoice</a>
398 <form action="/cgi-bin/koha/acqui/invoice.pl" method="get">
399 <input type="hidden" name="invoiceid" value="[% invoiceid | html %]" />
400 <fieldset class="action">
401 <input type="submit" value="Finish receiving" />
409 </div> <!-- /.col-sm-10.col-sm-push-2 -->
411 <div class="col-sm-2 col-sm-pull-10">
414 <form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post">
415 <fieldset class="brief">
419 <label for="summaryfilter">ISBN, author or title:</label>
420 <input type="text" name="summaryfilter" id="summaryfilter" value="[% summaryfilter | html %]"/>
423 <label for="basketfilter">Basket name:</label>
424 <input type="text" name="basketfilter" id="basketfilter" value="[% basketfilter | html %]"/>
427 <label for="basketgroupnamefilter">Basket group name:</label>
428 <input type="text" name="basketgroupnamefilter" id="basketgroupnamefilter" value="[% basketgroupnamefilter | html %]" />
431 <label for="orderfilter">Order line:</label>
432 <input type="text" name="orderfilter" id="orderfilter" value="[% orderfilter | html %]"/>
436 <label for="eanfilter">EAN :</label>
437 <input type="text" name="eanfilter" id="eanfilter" value="[% eanfilter | html %]"/>
441 <fieldset class="action">
442 <input type="hidden" value="search" name="op" />
443 <input type="hidden" value="[% invoiceid | html %]" name="invoiceid" />
444 <input type="submit" value="Filter" />
445 <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid | uri %]">Clear</a>
449 [% INCLUDE 'acquisitions-menu.inc' %]
451 </div> <!-- /.col-sm-2.col-sm-pull-10 -->
452 </div> <!-- /.row -->
454 [% MACRO jsinclude BLOCK %]
455 [% Asset.js("js/acquisitions-menu.js") | $raw %]
456 [% INCLUDE 'datatables.inc' %]
457 [% Asset.js("lib/jquery/plugins/jquery.dataTables.columnFilter.js") | $raw %]
458 [% Asset.js("lib/jquery/plugins/jquery.cookie.min.js") | $raw %]
459 <style>#dataPreview { width : 80%; } @media (max-width: 767px) { #dataPreview { margin: 0; width : auto; } }</style>
461 dt_overwrite_html_sorting_localeCompare();
462 var sticky_filters = [% sticky_filters | html %];
464 $(document).ready(function(){
465 if ( $("#pendingt").length ) {
466 var pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, {
468 "iCookieDuration": 60*60*24*1000, // 1000 days
469 "iDisplayLength": 10,
470 "aLengthMenu": [[5, 10, 20, 50, 100, -1], [5, 10, 20, 50, 100, _("All")]],
472 { "aTargets": [ 4, 9, 10 ], "bSortable": false, "bSearchable": false },
477 { "sType": "num-html" },
478 { "sType": "anti-the" },
489 "sPaginationType": "full"
492 sPlaceHolder: "head:after",
510 if ( $("#receivedt").length ) {
511 var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, {
513 "iCookieDuration": 60*60*24*1000, // 1000 days
514 "iDisplayLength": 10,
515 "aLengthMenu": [[5, 10, 20, 50, 100, -1], [5, 10, 20, 50, 100, _("All")]],
517 { "aTargets": [ 5, -1 ], "bSortable": false, "bSearchable": false },
523 { "sType": "num-html" },
524 { "sType": "anti-the" },
534 "sPaginationType": "full"
538 // Keep filters from finishreceive.pl to parcel.pl
539 $.cookie("filter_parcel_summary", $("#summaryfilter").val());
540 $.cookie("filter_parcel_basketname", $("#basketfilter").val());
541 $.cookie("filter_parcel_orderno", $("#orderfilter").val());
542 $.cookie("filter_parcel_basketgroupname", $("#basketgroupnamefilter").val());
543 $.cookie("filter_parcel_ean", $("#eanfilter").val());
545 $("#filterform").on('submit', function(){
546 $.cookie("filter_parcel_summary", $("#summaryfilter").val());
547 $.cookie("filter_parcel_basketname", $("#basketfilter").val());
548 $.cookie("filter_parcel_orderno", $("#orderfilter").val());
549 $.cookie("filter_parcel_basketgroupname", $("#basketgroupnamefilter").val());
550 $.cookie("filter_parcel_ean", $("#eanfilter").val());
553 $(".previewData").on("click", function(e){
555 var ltitle = $(this).text();
556 var page = $(this).attr("href");
557 $("#dataPreviewLabel").text(ltitle);
558 $("#dataPreview .modal-body").load(page + " div");
559 $('#dataPreview').modal({show:true});
561 $("#dataPreview").on("hidden.bs.modal", function(){
562 $("#dataPreviewLabel").html("");
563 $("#dataPreview .modal-body").html("<div id=\"loading\"><img src=\"[% interface | html %]/[% theme | html %]/img/spinner-small.gif\" alt=\"\" /> "+_("Loading")+"</div>");
568 // Case-insensitive version of jquery's contains function
569 jQuery.extend(jQuery.expr[':'], {
570 icontains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0"
573 // Contains exactly function
574 jQuery.extend(jQuery.expr[':'], {
575 containsExactly: "$(a).text() == m[3]"
578 function transfer_order_popup(ordernumber) {
579 var url = "/cgi-bin/koha/acqui/transferorder.pl?"
580 + "ordernumber=" + ordernumber
581 window.open(url, 'TransferOrder');
586 [% INCLUDE 'intranet-bottom.inc' %]