add skip_dcontext_suffix to skip CDRs with dcontext ending in a definable string...
[freeside.git] / FS / FS / part_pkg / torrus_Common.pm
index 672fa86..b32deab 100644 (file)
@@ -7,6 +7,15 @@ our %info = ( 'disabled' => 1 ); #torrus_Common not a usable price plan directly
 
 our $DEBUG = 1;
 
+sub recur_temporality { 'preceding'; }
+
+sub price_info {
+    my $self = shift;
+    my $str = $self->SUPER::price_info(@_);
+    $str .= " plus usage" if $str;
+    $str;
+}
+
 sub calc_recur {
   my $self = shift;
   my($cust_pkg, $sdate, $details, $param ) = @_;
@@ -53,7 +62,7 @@ sub calc_usage {
     SELECT value FROM reportfields
       WHERE rep_id = $rep_id
         AND name = ?
-        AND servciceid = ?
+        AND serviceid = ?
   ";
  
   my $total = 0;
@@ -74,14 +83,15 @@ sub calc_usage {
     $max -= $inc;
     next if $max < 0;
 
-    my $amount = sprintf('%.2f', $self->option($self->_torrus_rate) * $max );
+    my $rate = $self->option($self->_torrus_rate);
+    my $amount = sprintf('%.2f', $rate * $max );
     $total += $amount;
 
     #add usage details to invoice
     my $l = $self->_torrus_label;
-    my $d = "Last month's usage for $serviceid: $max$l";
+    my $d = "Last month's usage for $serviceid: ". sprintf('%.2f',$max). $l;
     $d .= " (". ($max+$inc). "$l - $inc$l included)" if $inc;
-    $d .= ": $money_char$amount";
+    $d .= " @ $money_char$rate/$l: $money_char$amount";
 
     push @$details, $d;