[freeside-commits] branch FREESIDE_3_BRANCH updated. 453d0509426c36f94868c06823327bb58871a763

Mark Wells mark at 420.am
Fri Oct 2 16:08:23 PDT 2015


The branch, FREESIDE_3_BRANCH has been updated
       via  453d0509426c36f94868c06823327bb58871a763 (commit)
      from  ddfa1b3070f48aacfeb380dd2624040d2daaac8e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 453d0509426c36f94868c06823327bb58871a763
Author: Mark Wells <mark at freeside.biz>
Date:   Fri Oct 2 16:05:41 2015 -0700

    fix unit setup fee on prorate-deferred packages, #31276

diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm
index 014d715..b7837c5 100644
--- a/FS/FS/cust_main/Billing.pm
+++ b/FS/FS/cust_main/Billing.pm
@@ -1230,7 +1230,14 @@ sub _make_lines {
         return "$@ running calc_setup for $cust_pkg\n"
           if $@;
 
-        $unitsetup = $cust_pkg->part_pkg->unit_setup || $setup; #XXX uuh
+        # Only increment unitsetup here if there IS a setup fee.
+        # prorate_defer_bill may cause calc_setup on a setup-stage package
+        # to return zero, and the setup fee to be charged later. (This happens
+        # when it's first billed on the prorate cutoff day. RT#31276.)
+        if ( $setup ) {
+          $unitsetup = $cust_pkg->base_setup()
+                         || $setup; #XXX uuh
+        }
     }
 
     $cust_pkg->setfield('setup', $time)
@@ -1369,7 +1376,7 @@ sub _make_lines {
       # Add an additional setup fee at the billing stage.
       # Used for prorate_defer_bill.
       $setup += $param{'setup_fee'};
-      $unitsetup += $param{'setup_fee'};
+      $unitsetup = $cust_pkg->base_setup();
       $lineitems++;
     }
 

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/cust_main/Billing.pm |   11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)




More information about the freeside-commits mailing list