diff options
author | mark <mark> | 2010-04-27 05:38:28 +0000 |
---|---|---|
committer | mark <mark> | 2010-04-27 05:38:28 +0000 |
commit | 70c24f77f50484dd9e7486dd52332e276254476a (patch) | |
tree | 3a0bc92fd84c1bbce649eb4c867332e190103643 /FS/FS/cust_svc.pm | |
parent | 37591b61f8ad6fc5c5acb2fd8f520d2dbe4f1539 (diff) |
RT#7046: inbound rate for rate plan billing
Diffstat (limited to 'FS/FS/cust_svc.pm')
-rw-r--r-- | FS/FS/cust_svc.pm | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/FS/FS/cust_svc.pm b/FS/FS/cust_svc.pm index 3ce1314..c0766e5 100644 --- a/FS/FS/cust_svc.pm +++ b/FS/FS/cust_svc.pm @@ -709,72 +709,6 @@ sub get_session_history { } -=item get_cdrs_for_update - -Returns (and SELECTs "FOR UPDATE") all unprocessed (freesidestatus NULL) CDR -objects (see L<FS::cdr>) associated with this service. - -CDRs are associated with svc_phone services via svc_phone.phonenum - -=cut - -sub get_cdrs_for_update { - my $self = shift; - $self->get_cdrs( 'freesidestatus' => '', - 'for_update' => 1, - @_, - ); -} - -sub get_cdrs { - my($self, %options) = @_; - - my @fields = ( 'charged_party' ); - push @fields, 'src' unless $options{'disable_src'}; - - my $for_update = $options{'for_update'} ? 'FOR UPDATE' : ''; - - my %hash = (); - $hash{'freesidestatus'} = $options{'freesidestatus'} - if exists($options{'freesidestatus'}); - - #CDRs are associated with svc_phone services via svc_phone.phonenum - - #return () unless $self->svc_x->isa('FS::svc_phone'); - return () unless $self->part_svc->svcdb eq 'svc_phone'; - my $number = $self->svc_x->phonenum; - - my $prefix = $options{'default_prefix'}; - - my @orwhere = map " $_ = '$number' ", @fields; - push @orwhere, map " $_ = '$prefix$number' ", @fields - if length($prefix); - if ( $prefix =~ /^\+(\d+)$/ ) { - push @orwhere, map " $_ = '$1$number' ", @fields - } - - my @where = ( ' ( '. join(' OR ', @orwhere ). ' ) ' ); - - if ( $options{'begin'} ) { - push @where, 'startdate >= '. $options{'begin'}; - } - if ( $options{'end'} ) { - push @where, 'startdate < '. $options{'end'}; - } - - my $extra_sql = ( keys(%hash) ? ' AND ' : ' WHERE ' ). join(' AND ', @where ); - - my @cdrs = - qsearch( { - 'table' => 'cdr', - 'hashref' => \%hash, - 'extra_sql' => $extra_sql, - 'order_by' => "ORDER BY startdate $for_update", - } ); - - @cdrs; -} - =back =head1 BUGS |