X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_bill_pkg.pm;h=adc09d7a7d6b919a5728aa6f4ac3e7d2053e03e3;hb=3db061f538c06804bd0a52b9ef8be3dc6b6db82e;hp=ab9d35074a84f2aeaf0a7daf39d7d871a809fe4c;hpb=3892b13ea137969a2b4f880883960e58003cc1b3;p=freeside.git diff --git a/FS/FS/cust_bill_pkg.pm b/FS/FS/cust_bill_pkg.pm index ab9d35074..adc09d7a7 100644 --- a/FS/FS/cust_bill_pkg.pm +++ b/FS/FS/cust_bill_pkg.pm @@ -831,11 +831,21 @@ sub usage { if ( $self->get('details') ) { @values = - map { $_->[2] } - grep { ref($_) && ( defined($classnum) ? $_->[3] eq $classnum : 1 ) } + map { ref($_) eq 'HASH' + ? $_->{'amount'} + : $_->[2] + } + grep { ref($_) && ( defined($classnum) + ? $classnum eq ( ref($_) eq 'HASH' + ? $_->{'classnum'} + : $_->[3] + ) + : 1 + ) + } @{ $self->get('details') }; - }else{ + } else { my $hashref = { 'billpkgnum' => $self->billpkgnum }; $hashref->{ 'classnum' } = $classnum if defined($classnum); @@ -863,11 +873,14 @@ sub usage_classes { my %seen = (); foreach my $detail ( grep { ref($_) } @{$self->get('details')} ) { - $seen{ $detail->[3] } = 1; + $seen{ ref($detail) eq 'HASH' + ? $detail->{'classnum'} + : $detail->[3] + } = 1; } keys %seen; - }else{ + } else { map { $_->classnum } qsearch({ table => 'cust_bill_pkg_detail',