Revision d24e5589
Von Tamino Steinert vor 9 Monaten hinzugefügt
SL/BackgroundJob/CreatePeriodicInvoices.pm | ||
---|---|---|
my $config = shift;
|
||
my $period_start_date = shift;
|
||
|
||
my $period_length = $config->periodicity eq 'o' ? $config->get_order_value_period_length : $config->get_billing_period_length;
|
||
my $period_length = $config->get_order_value_period_length || $config->get_billing_period_length || 1;
|
||
my $period_end_date = $period_start_date->clone->add(months => $period_length)->subtract(days => 1);
|
||
|
||
my @month_names = ('',
|
SL/DB/PeriodicInvoicesConfig.pm | ||
---|---|---|
$new_order->reqdate($period_start_date);
|
||
$new_order->tax_point(
|
||
add_months(
|
||
$period_start_date, $self->get_billing_period_length
|
||
$period_start_date, $self->get_billing_period_length || $self->get_order_value_period_length || 1
|
||
)->add(days => -1)
|
||
);
|
||
my @items;
|
||
... | ... | |
|
||
sub get_billing_period_length {
|
||
my $self = shift;
|
||
return $PERIOD_LENGTHS{ $self->periodicity } || 1;
|
||
return $PERIOD_LENGTHS{ $self->periodicity };
|
||
}
|
||
|
||
sub get_order_value_period_length {
|
||
my $self = shift;
|
||
return $self->get_billing_period_length if $self->order_value_periodicity eq 'p';
|
||
return $ORDER_VALUE_PERIOD_LENGTHS{ $self->order_value_periodicity } || 1;
|
||
return $ORDER_VALUE_PERIOD_LENGTHS{ $self->order_value_periodicity };
|
||
}
|
||
|
||
sub add_months {
|
Auch abrufbar als: Unified diff
S:D:PeriodicInvoicesConfig: Periodizität von einmalig nicht überschreiben