# by default, set the included minutes for this region/time to
# what's in the rate_detail
- $included_min->{$regionnum}{$ratetimenum} = $rate_detail->min_included
- unless exists $included_min->{$regionnum}{$ratetimenum};
+ if (!exists( $included_min->{$regionnum}{$ratetimenum} )) {
+ $included_min->{$regionnum}{$ratetimenum} =
+ ($rate_detail->min_included * $cust_pkg->quantity || 1);
+ }
if ( $included_min->{$regionnum}{$ratetimenum} >= $minutes ) {
$charge_sec = 0;
my $included_min = $self->option('min_included', 1) || 0;
#single price rating
#or region group
+ $included_min *= ($cust_pkg->quantity || 1);
my $included_calls = $self->option('calls_included', 1) || 0;
+ $included_calls *= ($cust_pkg->quantity || 1);
my $cdr_svc_method = $self->option('cdr_svc_method',1)||'svc_phone.phonenum';
my $rating_method = $self->option('rating_method') || 'prefix';
FS::cust_pkg_usage->new({
'pkgnum' => $cust_pkg->pkgnum,
'pkgusagepart' => $part,
- 'minutes' => $part_pkg_usage->minutes,
+ 'minutes' => $part_pkg_usage->minutes *
+ ($cust_pkg->quantity || 1),
});
foreach my $cdr_usage (
qsearch('cdr_cust_pkg_usage', {'cdrusagenum' => $usage->cdrusagenum})
# my $downstream_cdr = '';
my $included_min = $self->option('min_included', 1) || 0;
+ $included_min *= ($cust_pkg->quantity || 1);
my $use_duration = $self->option('use_duration');
my $output_format = $self->option('output_format', 1) || 'default';
# find the price and add detail to the invoice
###
- $included_min{$regionnum} = $rate_detail->min_included
+ $included_min{$regionnum} =
+ ($rate_detail->min_included * $cust_pkg->quantity || 1)
unless exists $included_min{$regionnum};
my $granularity = $rate_detail->sec_granularity;
&& ( $last_bill eq '' || $last_bill == 0 );
my $included_min = $self->option('min_included', 1) || 0;
+ $included_min *= ($cust_pkg->quantity || 1);
my $cdr_svc_method = $self->option('cdr_svc_method',1)||'svc_phone.phonenum';
my $cdr_inout = ($cdr_svc_method eq 'svc_phone.phonenum')
&& $self->option('cdr_inout',1)