TT#72900 fee onoffpeak usefreetime

Change-Id: Iab78a5892a6fb1b70df46a3691ba39644d96b89a
changes/43/36643/3
Rene Krenn 5 years ago
parent 16a6f1d522
commit 2bc84bd4dc

@ -121,12 +121,13 @@ log4perl.appender.Default.layout.ConversionPattern=%d{ISO8601} [%p] [%F +%L] %m{
element_order offpeak_init_interval
element_order offpeak_follow_rate
element_order offpeak_follow_interval
element_order use_free_time
element_order onpeak_use_free_time
element_order match_mode
element_order onpeak_extra_rate
element_order onpeak_extra_second
element_order offpeak_extra_rate
element_order offpeak_extra_second
element_order offpeak_use_free_time
</fees_csv>
<sip>

@ -155,11 +155,20 @@ has_field 'offpeak_follow_interval' => (
required => 1,
);
has_field 'use_free_time' => (
has_field 'onpeak_use_free_time' => (
type => 'Boolean',
element_attr => {
rel => ['tooltip'],
title => ['Whether free minutes may be used when calling this destination.']
title => ['Whether free minutes may be used when calling this destination during onpeak hours.']
},
default => 0,
);
has_field 'offpeak_use_free_time' => (
type => 'Boolean',
element_attr => {
rel => ['tooltip'],
title => ['Whether free minutes may be used when calling this destination during offpeak hours.']
},
default => 0,
);
@ -219,7 +228,7 @@ has_block 'fields' => (
render_list => [qw/billing_zone match_mode source destination direction
onpeak_init_rate onpeak_init_interval onpeak_follow_rate
onpeak_follow_interval offpeak_init_rate offpeak_init_interval
offpeak_follow_rate offpeak_follow_interval use_free_time
offpeak_follow_rate offpeak_follow_interval onpeak_use_free_time offpeak_use_free_time
onpeak_extra_rate onpeak_extra_second offpeak_extra_rate offpeak_extra_second
/],
);

@ -28,7 +28,7 @@ has_block 'fields' => (
render_list => [qw/purge_existing billing_zone billing_profile_id match_mode source destination direction
onpeak_init_rate onpeak_init_interval onpeak_follow_rate
onpeak_follow_interval offpeak_init_rate offpeak_init_interval
offpeak_follow_rate offpeak_follow_interval use_free_time
offpeak_follow_rate offpeak_follow_interval onpeak_use_free_time offpeak_use_free_time
/],
);

@ -251,8 +251,7 @@ sub process_billing_fees{
push @fails, $linenum;
next;
}
$row->{onpeak_extra_second} = undef if $row->{onpeak_extra_second} eq '';
$row->{offpeak_extra_second} = undef if $row->{offpeak_extra_second} eq '';
my $k = $row->{zone}.'__NGCP__'.$row->{zone_detail};
unless(exists $zones{$k}) {
my $zone = $profile->billing_zones->find_or_create({
@ -265,6 +264,11 @@ sub process_billing_fees{
delete $row->{zone};
delete $row->{zone_detail};
$row->{match_mode} = 'regex_longest_pattern' unless $row->{match_mode};
$row->{onpeak_extra_rate} = 0 unless $row->{onpeak_extra_rate};
$row->{offpeak_extra_rate} = 0 unless $row->{offpeak_extra_rate};
$row->{onpeak_extra_second} = undef if (defined $row->{onpeak_extra_second} and $row->{onpeak_extra_second} eq '');
$row->{offpeak_extra_second} = undef if (defined $row->{offpeak_extra_second} and $row->{offpeak_extra_second} eq '');
$row->{offpeak_use_free_time} = $row->{onpeak_use_free_time} if (not defined $row->{offpeak_use_free_time} or $row->{offpeak_use_free_time} eq '');
unless (validate_billing_fee($row,
sub {
my ($field,$error,$error_detail) = @_;

Loading…
Cancel
Save