diff options
author | Christopher Burger <burgerc@freeside.biz> | 2018-03-09 14:14:14 -0500 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2018-04-02 09:26:40 -0400 |
commit | 5ffcb1400018f9d7b35b05f6cd9d2878a690a390 (patch) | |
tree | 7f4dc586be0c8c4e95b1afd7711e116bbad0bec4 /FS/FS/part_pkg | |
parent | a01d62d61d155ff14ffc378811e1d1a006e16160 (diff) |
RT# 79239 - updated code to use existing sub routine
Diffstat (limited to 'FS/FS/part_pkg')
-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 77b5e49..75c7e13 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; } |