summaryrefslogtreecommitdiff
path: root/FS/FS/phone_avail.pm
diff options
context:
space:
mode:
authorivan <ivan>2008-09-15 07:18:57 +0000
committerivan <ivan>2008-09-15 07:18:57 +0000
commitdcc553538ede04c0783bc92d3942c905c29131c1 (patch)
treebff35615cfa95478c0ee1bfb757ecb228da2c78f /FS/FS/phone_avail.pm
parentf9befdcb5ce8cf5dc5b9cacb6fe04ce29ed3cb80 (diff)
add internal did database & ability to query for availability, plus upload tool
Diffstat (limited to 'FS/FS/phone_avail.pm')
-rw-r--r--FS/FS/phone_avail.pm34
1 files changed, 34 insertions, 0 deletions
diff --git a/FS/FS/phone_avail.pm b/FS/FS/phone_avail.pm
index 68aeca1..136fc24 100644
--- a/FS/FS/phone_avail.pm
+++ b/FS/FS/phone_avail.pm
@@ -57,6 +57,18 @@ npa
nxx
+=item station
+
+station
+
+=item svcnum
+
+svcnum
+
+=item availbatch
+
+availbatch
+
=back
=head1 METHODS
@@ -123,12 +135,34 @@ sub check {
|| $self->ut_alphan('state')
|| $self->ut_number('npa')
|| $self->ut_numbern('nxx')
+ || $self->ut_numbern('station')
+ || $self->ut_foreign_keyn('svcnum', 'cust_svc', 'svcnum' )
+ || $self->ut_textn('availbatch')
;
return $error if $error;
$self->SUPER::check;
}
+sub process_batch_import {
+ my $job = shift;
+
+ my $numsub = sub {
+ my( $hash, $value ) = @_;
+ $value =~ s/\D//g;
+ $value =~ /^(\d{3})(\d{3})(\d+)$/ or die "unparsable number $value\n";
+ ( $hash->{npa}, $hash->{nxx}, $hash->{station} ) = ( $1, $2, $3 );
+ };
+
+ my $opt = { 'table' => 'phone_avail',
+ 'params' => [ 'availbatch', 'exportnum', 'countrycode' ],
+ 'formats' => { 'default' => [ 'state', $numsub ] },
+ };
+
+ FS::Record::process_batch_import( $job, $opt, @_ );
+
+}
+
=back
=head1 BUGS