diff options
author | Christopher Burger <burgerc@freeside.biz> | 2018-03-09 14:14:14 -0500 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2018-03-09 14:14:14 -0500 |
commit | 5a78b285800539935217563c961cd5dc8f084cd0 (patch) | |
tree | 6d501bd79ceec2af763eccd237abe2e785d36b7f /FS/FS/part_pkg/sql_external.pm | |
parent | e3a53cf6d4915941327a316927310586c0126d77 (diff) |
RT# 79239 - updated code to use existing sub routine
Diffstat (limited to 'FS/FS/part_pkg/sql_external.pm')
-rw-r--r-- | FS/FS/part_pkg/sql_external.pm | 39 |
1 files changed, 4 insertions, 35 deletions
diff --git a/FS/FS/part_pkg/sql_external.pm b/FS/FS/part_pkg/sql_external.pm index 77b5e4983..75c7e132e 100644 --- a/FS/FS/part_pkg/sql_external.pm +++ b/FS/FS/part_pkg/sql_external.pm @@ -145,41 +145,10 @@ sub calc_recur { } sub cutoff_day { - my $self = shift; - my $cust_pkg = shift; - my $cust_main = $cust_pkg->cust_main; - # force it to act like a prorate package, is what this means - # because we made a distinction once between prorate and flat packages - if ( $cust_main->force_prorate_day and $cust_main->prorate_day ) { - return ( $cust_main->prorate_day ); - } - if ( $self->option('sync_bill_date',1) ) { - my $next_bill = $cust_pkg->cust_main->next_bill_date; - if ( $next_bill ) { - return (localtime($next_bill))[3]; - } else { - # This is the customer's only active package and hasn't been billed - # yet, so set the cutoff day to either today or tomorrow, whichever - # would result in a full period after rounding. - my $setup = $cust_pkg->setup; # because it's "now" - my $rounding_mode = $self->option('prorate_round_day',1); - return () if !$setup or !$rounding_mode; - my ($sec, $min, $hour, $mday, $mon, $year) = localtime($setup); - - if ( ( $rounding_mode == 1 and $hour >= 12 ) - or ( $rounding_mode == 3 and ( $sec > 0 or $min > 0 or $hour > 0 )) - ) { - # then the prorate period will be rounded down to start from - # midnight tomorrow, so the cutoff day should be the current day + - # 1. - $setup = timelocal(59,59,23,$mday,$mon,$year) + 1; - $mday = (localtime($setup))[3]; - } - # otherwise, it will be rounded up, so leave the cutoff day at today. - return $mday; - } - } - return (); + my( $self, $cust_pkg ) = @_; + my $error = SUPER->cutoff_day($cust_pkg); + #my $error = FS::part_pkg::flat::cutoff_day( $self, $cust_pkg )); + return $error; } sub can_discount { 1; } |