From 57a5184aac23b742a9e57e7b3d54520f34bd79e3 Mon Sep 17 00:00:00 2001 From: Chris Cormack Date: Wed, 9 Apr 2014 10:05:40 +1200 Subject: [PATCH] Continuing with the work for RequestHandler --- lib/NCIP/Handler/RequestItem.pm | 21 +++++++++++---------- lib/NCIP/ILS/Koha.pm | 2 +- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/lib/NCIP/Handler/RequestItem.pm b/lib/NCIP/Handler/RequestItem.pm index c12464f..dd5643e 100644 --- a/lib/NCIP/Handler/RequestItem.pm +++ b/lib/NCIP/Handler/RequestItem.pm @@ -27,21 +27,22 @@ sub handle { my $xpc = XML::LibXML::XPathContext->new; $xpc->registerNs( 'ns', $self->namespace() ); - my $userid = - $xpc->findnodes( 'ns:RequestItem/UniqueUserId/UserIdentifierValue', - $root ); - my $itemid = - $xpc->findnodes( 'ns:RequestItem/UniqueItemId/ItemIdentifierValue', - $root ); - my $biblionumber = $xpc->findnodes( '//ns:BibliographicRecordIdentifier', - $root ); + my ($userid) = $xpc->findnodes( '//ns:UserIdentifierValue', $root ); + $userid = $userid->textContent() if $userid; + + my ($itemid) = $xpc->findnodes( '//ns:ItemIdentifierValue', $root ); + $itemid = $itemid->textContent() if $itemid; + my ($biblionumber) = + $xpc->findnodes( '//ns:BibliographicRecordIdentifier', $root ); + $biblionumber = $biblionumber->textContent() if $biblionumber; + # request the item my $result = $self->ils->request( $userid, $itemid, $biblionumber ); my $vars; my $output; - $vars->{'barcode'} = $itemid; + $vars->{'barcode'} = $itemid; $vars->{'messagetype'} = 'RequestItemResponse'; - if (! $result->{'success'}) { + if ( !$result->{'success'} ) { $vars->{'processingerror'} = 1; $vars->{'processingerrortype'} = $messages; $vars->{'processingerrorelement'} = 'UniqueItemIdentifier'; diff --git a/lib/NCIP/ILS/Koha.pm b/lib/NCIP/ILS/Koha.pm index 38e2ccc..c78b52a 100644 --- a/lib/NCIP/ILS/Koha.pm +++ b/lib/NCIP/ILS/Koha.pm @@ -182,7 +182,7 @@ sub request { 'Placed By ILL', '', $itemdata->{'itemnumber'}, undef ); - my ( $reservedate, $borrowernumber, $branchcode, $reserve_id, $wait ) = + my ( $reservedate, $borrowernumber, $branchcode2, $reserve_id, $wait ) = GetReservesFromItemnumber( $itemdata->{'itemnumber'} ); $result = { success => 1, -- 2.11.0