From 21226b440bd6889e9b071d50c06d6c56e4741940 Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Thu, 25 Oct 2018 11:19:01 +0200 Subject: [PATCH] Bug 20194: Display both biblioitems.itemtype and items.itype in circulation screens Test plan: 1. Verify that biblioitems.itemtype, items.itype are mapped to a MARC field. Otherwise create those mappings. 2. Create a biblio with an itemtype 3. Create an item with a different itemtype for this biblio 4. Check out this item to a patron (P1) 5. Verify that both itemtypes are displayed in the checkouts table (moremember.pl, circulation.pl, returns.pl) 6. Create a patron whose guarantor is P1 and verify that both itemtypes and the ccode are displayed in the 'relatives checkouts' table Followed test plan, patch worked as described, also passes QA test tool Signed-off-by: Alex Buckley --- admin/columns_settings.yml | 6 ++++++ circ/returns.pl | 4 +++- .../prog/en/includes/checkouts-table-footer.inc | 2 +- koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt | 5 +++-- .../intranet-tmpl/prog/en/modules/members/moremember.tt | 2 ++ koha-tmpl/intranet-tmpl/prog/js/checkouts.js | 12 +++++++++++- svc/checkouts | 7 +++++-- 9 files changed, 33 insertions(+), 7 deletions(-) diff --git a/admin/columns_settings.yml b/admin/columns_settings.yml index 1480019..d2d8dd3 100644 --- a/admin/columns_settings.yml +++ b/admin/columns_settings.yml @@ -329,6 +329,8 @@ modules: - columnname: title - + columnname: record_type + - columnname: item_type - columnname: collection @@ -486,6 +488,8 @@ modules: - columnname: title - + columnname: record_type + - columnname: item_type - columnname: collection @@ -538,6 +542,8 @@ modules: columnname: dateaccessioned is_hidden: 1 - + columnname: record_type + - columnname: itype - columnname: borrower diff --git a/circ/returns.pl b/circ/returns.pl index c2f20ef..75fc732 100755 --- a/circ/returns.pl +++ b/circ/returns.pl @@ -582,6 +582,7 @@ foreach ( sort { $a <=> $b } keys %returneditems ) { my $item = Koha::Items->find({ barcode => $bar_code }); next unless $item; # FIXME The item has been deleted in the meantime, # we could handle that better displaying a message in the template + my $biblio = $item->biblio; # FIXME pass $item to the template and we are done here... $ri{itembiblionumber} = $biblio->biblionumber; @@ -589,7 +590,8 @@ foreach ( sort { $a <=> $b } keys %returneditems ) { $ri{itemauthor} = $biblio->author; $ri{itemcallnumber} = $item->itemcallnumber; $ri{dateaccessioned} = $item->dateaccessioned; - $ri{itemtype} = $item->effective_itemtype; + $ri{recordtype} = $biblio->itemtype; + $ri{itemtype} = $item->itype; $ri{itemnote} = $item->itemnotes; $ri{itemnotes_nonpublic} = $item->itemnotes_nonpublic; $ri{ccode} = $item->ccode; diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc index b831c1e..40d2195 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table-footer.inc @@ -1,6 +1,6 @@ - Totals: + Totals: [% totaldue | html %] [% finetotal | html %] [% totalprice | html %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc index d78e001..3d106ee 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkouts-table.inc @@ -15,6 +15,7 @@ Due date Due date Title + Record type Item type Collection Location diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt index 2b273e0..bc411a4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt @@ -851,6 +851,7 @@ No patron matched [% message | html %] Due date (unformatted, hidden) Due date Title + Record type Item type Collection code Location diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt index 5763e97..dd502d9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/returns.tt @@ -683,7 +683,7 @@ [% IF ( riloop ) %]

Checked-in items

- + [% FOREACH riloo IN riloop %] @@ -710,7 +710,8 @@ - + + + + diff --git a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js index b964a9c..c850e98 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js +++ b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js @@ -292,6 +292,11 @@ $(document).ready(function() { }, { "mDataProp": function ( oObj ) { + return oObj.recordtype_description.escapeHtml(); + } + }, + { + "mDataProp": function ( oObj ) { return oObj.itemtype_description.escapeHtml(); } }, @@ -516,7 +521,7 @@ $(document).ready(function() { // Build a summary of checkouts grouped by itemtype var checkoutsByItype = json.aaData.reduce(function (obj, row) { - obj[row.itemtype_description] = (obj[row.itemtype_description] || 0) + 1; + obj[row.type_for_stat] = (obj[row.type_for_stat] || 0) + 1; return obj; }, {}); var ul = $('
Due dateTitleAuthorBarcodeHome libraryHolding libraryShelving locationCall numberDate acquiredTypePatronNote
Due dateTitleAuthorBarcodeHome libraryHolding libraryShelving locationCall numberDate acquiredRecord typeItem typePatronNote
[% riloo.location | html %] [% riloo.itemcallnumber | html %] [% riloo.dateaccessioned | $KohaDates %][% ItemTypes.GetDescription( riloo.itemtype ) | html %] [% AuthorisedValues.GetByCode('CCODE', riloo.ccode) | html %][% ItemTypes.GetDescription( riloo.recordtype ) | html %][% ItemTypes.GetDescription( riloo.itemtype ) | html %] [% AuthorisedValues.GetByCode('CCODE', riloo.ccode) | html %] [% IF ( riloo.duedate ) %] [% riloo.patron.surname | html %], [% riloo.patron.firstname | html %] ([% riloo.patron.category.description | html %]) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt index a88a98e..3411c8d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tt @@ -690,7 +690,9 @@ Due date hidden not formatted Due date TitleRecord type Item typeCollection Location Checked out on Checked out from