From 1de89ad0f3cec0ba82352b83481719c0a50bc5b8 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Wed, 5 Dec 2018 08:46:12 -0500 Subject: [PATCH] Bug 21951: Patron import fails if matching on cardnumber and userid also matches If a patron CSV file has both cardnumber and userid, and cardnumber is used as a matchpoint, the patron import will fail with an error like -- Userid kyle.hall is already used by another patron. -- even though that userid is used by the very same patron! Matching on userid does not generate this error. Test Plan: 1) Generate a patron CSV file where the userid and cardnumber columns match an existing patron 2) Attempt to overlay existing patron using this CSV file via the patron import tool 3) Note the "already used" error 4) Apply this patch 5) No error should be generated 6) Modify the cardnumber in the CSV file 7) Attempt to import and overlay again 8) Note you get the userid "already used" error Signed-off-by: Owen Leonard --- Koha/Patrons/Import.pm | 1 + 1 file changed, 1 insertion(+) diff --git a/Koha/Patrons/Import.pm b/Koha/Patrons/Import.pm index 712c978..056e312 100644 --- a/Koha/Patrons/Import.pm +++ b/Koha/Patrons/Import.pm @@ -207,6 +207,7 @@ sub import_patrons { and exists $borrower{userid} and $borrower{userid} and not Koha::Patron->new( { userid => $borrower{userid} } )->has_valid_userid + and ( (!$borrowernumber) || (Koha::Patrons->find($borrowernumber)->userid ne $borrower{userid}) ) ) { push @errors, { duplicate_userid => 1, userid => $borrower{userid} }; $invalid++; -- 2.1.4