Ticket #32336 Unit prices not showing on quotations
authorJeremy Davis <jeremyd@freeside.biz>
Mon, 24 Nov 2014 17:50:55 +0000 (12:50 -0500)
committerJeremy Davis <jeremyd@freeside.biz>
Mon, 24 Nov 2014 17:50:55 +0000 (12:50 -0500)
FS/FS/Template_Mixin.pm
FS/FS/quotation_pkg.pm

index 7018223..2fae464 100644 (file)
@@ -2729,6 +2729,8 @@ sub _items_cust_bill_pkg {
             'pkgnum'      => $cust_bill_pkg->pkgpart, #so it displays in Ref
             'description' => $description,
             'amount'      => sprintf("%.2f", $cust_bill_pkg->setup),
+            'unit_amount'   => sprintf("%.2f", $cust_bill_pkg->unitsetup),
+            'quantity'    => $cust_bill_pkg->quantity,
             'preref_html' => ( $opt{preref_callback}
                                  ? &{ $opt{preref_callback} }( $cust_bill_pkg )
                                  : ''
@@ -2740,6 +2742,8 @@ sub _items_cust_bill_pkg {
             'pkgnum'      => $cust_bill_pkg->pkgpart, #so it displays in Ref
             'description' => "$desc (". $cust_bill_pkg->part_pkg->freq_pretty.")",
             'amount'      => sprintf("%.2f", $cust_bill_pkg->recur),
+            'unit_amount'   => sprintf("%.2f", $cust_bill_pkg->unitrecur),
+            'quantity'    => $cust_bill_pkg->quantity,
            'preref_html' => ( $opt{preref_callback}
                                  ? &{ $opt{preref_callback} }( $cust_bill_pkg )
                                  : ''
index 79cce80..33c761e 100644 (file)
@@ -164,6 +164,26 @@ sub recur {
   sprintf('%.2f', $recur);
 }
 
+sub unitsetup {
+  my $self = shift;
+  return '0.00' if $self->waive_setup eq 'Y' || $self->{'_NO_SETUP_KLUDGE'};
+  my $part_pkg = $self->part_pkg;
+  my $setup = $part_pkg->option('setup_fee');
+
+  #XXX discounts
+  sprintf('%.2f', $setup);
+}
+
+sub unitrecur {
+  my $self = shift;
+  return '0.00' if $self->{'_NO_RECUR_KLUDGE'};
+  my $part_pkg = $self->part_pkg;
+  my $recur = $part_pkg->can('base_recur') ? $part_pkg->base_recur
+                                           : $part_pkg->option('recur_fee');
+  #XXX discounts
+  sprintf('%.2f', $recur);
+}
+
 =item part_pkg_currency_option OPTIONNAME
 
 Returns a two item list consisting of the currency of this quotation's customer