[freeside-commits] branch master updated. 5f0388ca15d79d964b1c6197d0841d8f5c708d15
Ivan Kohler
ivan at freeside.biz
Mon Aug 5 16:14:42 PDT 2019
The branch, master has been updated
via 5f0388ca15d79d964b1c6197d0841d8f5c708d15 (commit)
from c49cfd25a8f92c7a2f44b51d72506a21f6b8d09f (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 5f0388ca15d79d964b1c6197d0841d8f5c708d15
Author: Ivan Kohler <ivan at freeside.biz>
Date: Mon Aug 5 16:14:35 2019 -0700
planet telecom rate import, RT#83146
diff --git a/bin/rate-ptelecom.import b/bin/rate-ptelecom.import
index 83e0fa7db..20724c4a1 100755
--- a/bin/rate-ptelecom.import
+++ b/bin/rate-ptelecom.import
@@ -7,6 +7,7 @@ use FS::Record qw( dbh );
use FS::rate;
use FS::rate_region;
use FS::rate_detail;
+use FS::rate_prefix;
our %opt;
getopts('d');
@@ -76,7 +77,8 @@ while( my $row = $csv->getline($rin) ) {
}
my $rate_region = new FS::rate_region {
- 'regionname' => "$destkey: $destid",
+ 'regionname' => $destid,
+ 'agent_regionid' => $destkey,
};
my $error = $rate_region->insert;
die $error if $error;
@@ -101,10 +103,56 @@ while( my $row = $csv->getline($rin) ) {
}
###
-# ??? import rate_prefix ("destinations?")
+# import rate_prefix ("country")
###
-#???
+my $pfile = shift or usage();
+open my $pin, '<', $pfile or die "$pfile: $!\n";
+
+my $rx = 0;
+while( my $row = $csv->getline($pin) ) {
+ my $destkey = $row->[1];
+ my $prefix = $row->[4];
+ my $countrycode = $row->[20];
+ #my $npa = $row->[21];
+ #my $npa2 = $row->[22];
+ my $pattern = $row->[24];
+
+ #$npa = '' if $npa eq 'NULL';
+ #$npa2 = '' if $npa2 eq 'NULL';
+
+ die "destkey $destkey: $prefix ne $pattern\n"
+ if $prefix ne $pattern;
+
+ if ( $countrycode eq 'NULL' ) {
+ warn "destkey $destkey: countrycode is null for prefix $prefix; skipping\n";
+ next;
+ }
+
+ my $rate_region = $rate_region{$destkey}
+ or do {
+ warn "destkey $destkey: not found for prefix $prefix; skipping\n";
+ next;
+ };
+
+ $prefix =~ s/^\Q$countrycode\E//;
+ $prefix =~ s/ //g;
+ $prefix =~ s/\.$//;
+
+ my $rate_prefix = new FS::rate_prefix {
+ 'regionnum' => $rate_region->regionnum,
+ 'countrycode' => $countrycode,
+ 'npa' => $prefix,
+ };
+ my $error = $rate_prefix->insert;
+ die "error inserting rate_prefix: $error for cc $countrycode prefix $prefix"
+ if $error;
+
+ $rx++;
+
+ #print '.' if $rx % 1000 == 0;
+}
+print "\n";
if ( $opt{d} ) {
dbh->rollback;
@@ -113,11 +161,11 @@ if ( $opt{d} ) {
dbh->commit;
}
-print "Inserted $rd rates for $rr regions in $rp rate plans\n";
+print "Inserted $rd rates for $rr regions with $rx prefixes in $rp rate plans\n";
1;
sub usage {
- die "Usage: rate-ptelecom.import [ -d ] <user> profiles.csv rates.csv\n"
+ die "Usage: rate-ptelecom.import [ -d ] <user> profiledestinationrates.csv callratingprofiles.csv country.csv\n"
}
-----------------------------------------------------------------------
Summary of changes:
bin/rate-ptelecom.import | 58 +++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 53 insertions(+), 5 deletions(-)
More information about the freeside-commits
mailing list