Bugzilla – Attachment 31039 Details for
Bug 12557
Cannot revert the changes done by AcqItemSetSubfieldsWhenReceived on canceling a receipt
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 12557: Partially received - the change should affect the new order
Bug-12557-Partially-received---the-change-should-a.patch (text/plain), 3.90 KB, created by
Jonathan Druart
on 2014-08-21 09:06:03 UTC
(
hide
)
Description:
Bug 12557: Partially received - the change should affect the new order
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2014-08-21 09:06:03 UTC
Size:
3.90 KB
patch
obsolete
>From 6572a69f9f3a912d39bf0449e9fed9e04710c301 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Thu, 21 Aug 2014 11:02:48 +0200 >Subject: [PATCH] Bug 12557: Partially received - the change should affect the > new order > >If the receipt in not on the whole order but only on a part of it, the >change should be done on the itemnumber linked to the "new order", the >one we are reverting. >--- > C4/Acquisition.pm | 3 ++- > t/db_dependent/Acquisition/CancelReceipt.t | 27 ++++++++++++++++----------- > 2 files changed, 18 insertions(+), 12 deletions(-) > >diff --git a/C4/Acquisition.pm b/C4/Acquisition.pm >index 7c7222d..108836c 100644 >--- a/C4/Acquisition.pm >+++ b/C4/Acquisition.pm >@@ -1605,6 +1605,8 @@ sub CancelReceipt { > > my $parent_ordernumber = $order->{'parent_ordernumber'}; > >+ my @itemnumbers = GetItemnumbersFromOrder( $ordernumber ); >+ > if($parent_ordernumber == $ordernumber || not $parent_ordernumber) { > # The order line has no parent, just mark it as not received > $query = qq{ >@@ -1668,7 +1670,6 @@ sub CancelReceipt { > if(C4::Context->preference('AcqCreateItem') eq 'ordering') { > my @affects = split q{\|}, C4::Context->preference("AcqItemSetSubfieldsWhenReceiptIsCancelled"); > if ( @affects ) { >- my @itemnumbers = GetItemnumbersFromOrder( $parent_ordernumber ); > for my $in ( @itemnumbers ) { > my $biblionumber = C4::Biblio::GetBiblionumberFromItemnumber( $in ); > my $frameworkcode = GetFrameworkCode($biblionumber); >diff --git a/t/db_dependent/Acquisition/CancelReceipt.t b/t/db_dependent/Acquisition/CancelReceipt.t >index b94e17f..ed99c98 100644 >--- a/t/db_dependent/Acquisition/CancelReceipt.t >+++ b/t/db_dependent/Acquisition/CancelReceipt.t >@@ -2,7 +2,7 @@ > > use Modern::Perl; > >-use Test::More tests => 3; >+use Test::More tests => 4; > use C4::Context; > use C4::Acquisition; > use C4::Biblio; >@@ -69,7 +69,8 @@ CancelReceipt($ordernumber); > my $order = GetOrder( $ordernumber ); > is(scalar GetItemnumbersFromOrder($order->{ordernumber}), 0, "Create items on receiving: 0 item exist after cancelling a receipt"); > >-$itemnumber = AddItem({}, $biblionumber); >+my $itemnumber1 = AddItem({}, $biblionumber); >+my $itemnumber2 = AddItem({}, $biblionumber); > t::lib::Mocks::mock_preference('AcqCreateItem', 'ordering'); > t::lib::Mocks::mock_preference('AcqItemSetSubfieldsWhenReceiptIsCancelled', '7=9'); # notforloan is mapped with 952$7 > ( undef, $ordernumber ) = C4::Acquisition::NewOrder( >@@ -81,23 +82,27 @@ t::lib::Mocks::mock_preference('AcqItemSetSubfieldsWhenReceiptIsCancelled', '7=9 > } > ); > >-ModReceiveOrder( >+NewOrderItem($itemnumber1, $ordernumber); >+NewOrderItem($itemnumber2, $ordernumber); >+ >+my ( undef, $new_ordernumber ) = ModReceiveOrder( > { > biblionumber => $biblionumber, > ordernumber => $ordernumber, >- quantityreceived => 2, >- datereceived => dt_from_string >+ quantityreceived => 1, >+ datereceived => dt_from_string, >+ received_items => [ $itemnumber1 ], > } > ); > >-NewOrderItem($itemnumber, $ordernumber); >+CancelReceipt($new_ordernumber); > >-CancelReceipt($ordernumber); >+is(scalar( GetItemnumbersFromOrder($ordernumber) ), 2, "Create items on ordering: items are not deleted after cancelling a receipt"); > >-$order = GetOrder( $ordernumber ); >-is(scalar GetItemnumbersFromOrder($order->{ordernumber}), 1, "Create items on ordering: items are not deleted after cancelling a receipt"); >+my $item1 = C4::Items::GetItem( $itemnumber1 ); >+is( $item1->{notforloan}, 9, "The notforloan value has been updated with '9'" ); > >-my $item = C4::Items::GetItem( $itemnumber ); >-is( $item->{notforloan}, 9, "The notforloan value has been updated with '9'" ); >+my $item2 = C4::Items::GetItem( $itemnumber2 ); >+is( $item2->{notforloan}, 0, "The notforloan value has been updated with '9'" ); > > $dbh->rollback; >-- >2.0.0.rc2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 12557
:
29620
|
29621
|
30886
|
30887
|
31009
|
31039
|
31040
|
31041
|
31042
|
31043