Try skipping the perm update step
authorTerran McCanna <tmccanna@georgialibraries.org>
Thu, 22 Dec 2022 19:50:13 +0000 (14:50 -0500)
committerTerran McCanna <tmccanna@georgialibraries.org>
Thu, 22 Dec 2022 19:50:13 +0000 (14:50 -0500)
For a renewal, this shouldn't be necessary, right? The code just
looks like it's trying to re-write lines in the db that already
exist, but it's accessing the wrong table and failing.

Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm

index 933699e..8c8982b 100644 (file)
@@ -628,10 +628,13 @@ $logger->error("E-RENEW: passed _add_survey_responses");
     return $evt if $evt;
 #DEBUGGING
 $logger->error("E-RENEW: passed _create_stat_maps");
+#Try skipping updating perm maps for account renewals
+if($patron->isnew()) {
     ($new_patron, $evt) = _create_perm_maps($e, $patron, $new_patron);
     return $evt if $evt;
+}
 #DEBUGGING
-$logger->error("E-RENEW: passed _create_perm_maps");
+$logger->error("E-RENEW: passed _create_perm_maps step");
     $evt = apply_invalid_addr_penalty($e, $patron);
     return $evt if $evt;
 
@@ -1226,8 +1229,6 @@ $logger->error("E-RENEW: perm maps: $maps");
     for my $map (@$maps) {
 #DEBUGGING
 $logger->error("E-RENEW: map id: ". $map->id);
-$logger->error("E-RENEW: map usr: ". $map->usr);
-$logger->error("E-RENEW: map usr id: ". $map->usr->id);
         my $method = "update_permission_usr_perm_map";
         if ($map->isdeleted()) {
 #DEBUGGING
@@ -1241,8 +1242,7 @@ $logger->error("E-RENEW: map isnew");
         }
 
         $map->usr($new_patron->id);
-#DEBUGGING
-$logger->error("E-RENEW: for each map - ". $map->usr);
+
         $logger->info( "Updating permissions with method $method and map $map" );
 
         $e->$method($map) or return (undef, $e->die_event);