From c1202c1492a210ea51610a164d938faef4a4d28c Mon Sep 17 00:00:00 2001 From: Ben Shum Date: Wed, 23 Nov 2011 15:14:32 -0500 Subject: [PATCH] Fix for LP894125 - reshelving interval Update to reshelving code to utilize actor.org_unit_ancestor_setting function and properly retrieve org settings for "circ.reshelving_complete.interval" for org unit or ancestors. Signed-off-by: Ben Shum Signed-off-by: Jason Stephenson --- .../perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm index 2069f58ca9..d58e213627 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm @@ -161,7 +161,6 @@ sub complete_reshelving { throw OpenSRF::EX::InvalidArg ("I need an interval of more than 0 seconds!") unless (interval_to_seconds( $window )); - my $setting = actor::org_unit_setting->table; my $cp = asset::copy->table; my $sql = <<" SQL"; @@ -170,14 +169,12 @@ sub complete_reshelving { WHERE id IN ( SELECT cp.id FROM $cp cp - LEFT JOIN $setting setting - ON (cp.circ_lib = setting.org_unit AND setting.name = 'circ.reshelving_complete.interval') WHERE cp.status = 7 - AND cp.status_changed_time < NOW() - CAST( COALESCE( BTRIM( setting.value,'"' ), ? ) AS INTERVAL) + AND cp.status_changed_time < NOW() - CAST( COALESCE( BTRIM( (SELECT value FROM actor.org_unit_ancestor_setting('circ.reshelving_complete.interval', cp.circ_lib)),'"' ), ? ) AS INTERVAL) ) SQL my $sth = action::circulation->db_Main->prepare_cached($sql); - $sth->execute($window, $window, $window); + $sth->execute($window); return $sth->rows; -- 2.11.0