X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Fnorthern_911.pm;h=027a52d215fb86ddf3c9ef47a045b6482874293f;hp=27f150cbab8e3e5efefa495b022ffff57faed43c;hb=cff1496af12df71e2fd35775cb72d8e8bf2560f8;hpb=7e9c8df93590ae1319539626c540c97b9199beb0 diff --git a/FS/FS/part_export/northern_911.pm b/FS/FS/part_export/northern_911.pm index 27f150cba..027a52d21 100644 --- a/FS/FS/part_export/northern_911.pm +++ b/FS/FS/part_export/northern_911.pm @@ -52,6 +52,7 @@ sub export_insert { my %location_hash = $svc_phone->location_hash; $location_hash{address1} =~ /^(\w+) +(.*)$/; + my %customer = ( 'PHONE_NUMBER' => $svc_phone->phonenum, 'STREET_NUMBER' => $1, @@ -61,6 +62,31 @@ sub export_insert { 'POSTAL_CODE_ZIP' => $location_hash{zip}, 'OTHER_ADDRESS_INFO' => $location_hash{address2}, ); + my $phone_name = $svc_phone->phone_name; + if ( $phone_name ) { + # could be a personal name or a business... + if ( $svc_phone->e911_class and + grep { $_ eq $svc_phone->e911_class } + ( 2, 4, 5, 6, 7, 0, 'A', 'D', 'E', 'K') + ) + { + # one of the "Business" classes, Centrex, a payphone, or + # VoIP Enterprise class + $customer{'LAST_NAME'} = $phone_name; + } else { + # assume residential, and try (inaccurately) to make a first/last + # name out of it. + @customer{'FIRST_NAME', 'LAST_NAME'} = split(' ', $phone_name, 2); + } + } else { + my $cust_main = $svc_phone->cust_svc->cust_pkg->cust_main; + if ($cust_main->company) { + $customer{'LAST_NAME'} = $cust_main->company; + } else { + $customer{'LAST_NAME'} = $cust_main->last; + $customer{'FIRST_NAME'} = $cust_main->first; + } + } if ($self->option('debug')) { warn "\nAddorUpdateCustomer:\n".Dumper(\%customer)."\n\n";