Lines 42-47
use Koha::DateUtils;
Link Here
|
42 |
use C4::Utils::DataTables::Members; |
42 |
use C4::Utils::DataTables::Members; |
43 |
use C4::Members; |
43 |
use C4::Members; |
44 |
use C4::Search; # enabled_staff_search_views |
44 |
use C4::Search; # enabled_staff_search_views |
|
|
45 |
use Data::Dumper; |
45 |
|
46 |
|
46 |
use Koha::Biblios; |
47 |
use Koha::Biblios; |
47 |
use Koha::DateUtils; |
48 |
use Koha::DateUtils; |
Lines 568-573
foreach my $biblionumber (@biblionumbers) {
Link Here
|
568 |
} @reserves |
569 |
} @reserves |
569 |
) |
570 |
) |
570 |
{ |
571 |
{ |
|
|
572 |
|
571 |
my $priority = $res->priority(); |
573 |
my $priority = $res->priority(); |
572 |
my %reserve; |
574 |
my %reserve; |
573 |
my @optionloop; |
575 |
my @optionloop; |
Lines 580-586
foreach my $biblionumber (@biblionumbers) {
Link Here
|
580 |
} |
582 |
} |
581 |
); |
583 |
); |
582 |
} |
584 |
} |
583 |
|
|
|
584 |
if ( $res->is_found() ) { |
585 |
if ( $res->is_found() ) { |
585 |
$reserve{'holdingbranch'} = $res->item()->holdingbranch(); |
586 |
$reserve{'holdingbranch'} = $res->item()->holdingbranch(); |
586 |
$reserve{'biblionumber'} = $res->item()->biblionumber(); |
587 |
$reserve{'biblionumber'} = $res->item()->biblionumber(); |
Lines 631-640
foreach my $biblionumber (@biblionumbers) {
Link Here
|
631 |
$reserve{itemtype} = $res->itemtype(); |
632 |
$reserve{itemtype} = $res->itemtype(); |
632 |
$reserve{branchcode} = $res->branchcode(); |
633 |
$reserve{branchcode} = $res->branchcode(); |
633 |
$reserve{'hold_group_id'} = $res->hold_group_id; |
634 |
$reserve{'hold_group_id'} = $res->hold_group_id; |
634 |
|
|
|
635 |
push( @reserveloop, \%reserve ); |
635 |
push( @reserveloop, \%reserve ); |
636 |
} |
636 |
} |
637 |
|
637 |
|
|
|
638 |
my %reserve_records; |
639 |
my $count = 0; |
640 |
foreach my $reserve ( @reserves ) { |
641 |
warn $reserve->reserve_id; |
642 |
if ($reserve->hold_group_id) { |
643 |
# Keep track of which hold_group_id (duplicated field) go with each reserve_id (unique field) |
644 |
$reserve_records{ $reserve->hold_group_id }->{ $reserve->reserve_id }++; |
645 |
warn $reserve->reserve_id; |
646 |
@reserveloop = grep { $_->{reserve_id} != $reserve->reserve_id } @reserveloop; |
647 |
}else { |
648 |
warn $reserve->reserve_id; |
649 |
warn $reserve->hold_group_id; |
650 |
} |
651 |
} |
652 |
my @grouped_parts; |
653 |
for my $hold_group ( sort { $a <=> $b } keys %reserve_records ) { |
654 |
my @reserveids = sort { $a <=> $b } keys %{ $reserve_records{ $hold_group } }; |
655 |
|
656 |
my @holds = GetHoldGroupHolds($hold_group); |
657 |
my $hold = $holds[0]; |
658 |
my $patron = Koha::Patrons->find( {borrowernumber => $hold->{borrowernumber}} ); |
659 |
|
660 |
# Merge the itemnumbers with each hold_group_id |
661 |
push @grouped_parts, { |
662 |
hold_group_id => $hold_group, |
663 |
reserve_id => join(', ', sort { $a <=> $b } @reserveids), |
664 |
hold => $hold, |
665 |
patron => $patron, |
666 |
}; |
667 |
} |
668 |
if (@grouped_parts) { |
669 |
$template->param( grouped_holds => \@grouped_parts ); |
670 |
} |
671 |
|
638 |
# get the time for the form name... |
672 |
# get the time for the form name... |
639 |
my $time = time(); |
673 |
my $time = time(); |
640 |
|
674 |
|
641 |
- |
|
|