From 8daac2ef97c794ff226a07241436878491bcd90e Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Fri, 28 Aug 2015 17:27:46 -0400 Subject: [PATCH] LP#1464709 holds using is_available repairs * Fix hold targeter is_available statuses lookup * Add is_available logic to open-ils.circ.hold_pull_list.print.stream API. * Add is_available column config::copy_status CDBI. Signed-off-by: Bill Erickson --- Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm | 7 ++++++- .../src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.pm | 2 +- .../perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm index a859f114d9..314fc5f3a7 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Holds.pm @@ -1723,7 +1723,7 @@ sub print_hold_pull_list_stream { "field" => "id", "fkey" => "current_copy", "filter" => { - "circ_lib" => $$params{org_id}, "status" => [0,7] + "circ_lib" => $$params{org_id} }, "join" => { "acn" => { @@ -1747,6 +1747,11 @@ sub print_hold_pull_list_stream { "filter" => { "location" => {"=" => {"+acp" => "location"}} } + }, + "ccs" => { + "filter" => { + is_available => "t" + } } } } diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.pm index 3873405f97..62c7777f76 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/CDBI/config.pm @@ -73,7 +73,7 @@ package config::copy_status; use base qw/config/; __PACKAGE__->table('config_copy_status'); __PACKAGE__->columns(Primary => 'id'); -__PACKAGE__->columns(Essential => qw/name holdable opac_visible copy_active restrict_copy_delete/); +__PACKAGE__->columns(Essential => qw/name holdable opac_visible copy_active restrict_copy_delete is_available/); #------------------------------------------------------------------------------- package config::net_access_level; 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 3bc6f4c3cb..f5e6cd68a8 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 @@ -1097,7 +1097,7 @@ sub new_hold_copy_targeter { $self->{max_loops} = {}; my %avail_statuses = map { $_->id => 1 } - @{asset::copy_status->search_where({is_available => 't'})}; + config::copy_status->search_where({is_available => 't'}); my $holds; @@ -1715,7 +1715,7 @@ sub reservation_targeter { my $reservations; my %avail_statuses = map { $_->id => 1 } - @{asset::copy_status->search_where({is_available => 't'})}; + config::copy_status->search_where({is_available => 't'}); try { if ($one_reservation) { -- 2.11.0