wireless broadband service import, RT#38986
authorIvan Kohler <ivan@freeside.biz>
Tue, 2 Feb 2016 17:10:43 +0000 (09:10 -0800)
committerIvan Kohler <ivan@freeside.biz>
Tue, 2 Feb 2016 17:10:43 +0000 (09:10 -0800)
FS/FS/cust_main/Import.pm
httemplate/misc/cust_main-import.cgi

index b5fb274..1b26027 100644 (file)
@@ -9,6 +9,7 @@ use FS::UID qw( dbh );
 use FS::Record qw( qsearchs );
 use FS::cust_main;
 use FS::svc_acct;
+use FS::svc_broadband;
 use FS::svc_external;
 use FS::svc_phone;
 use FS::svc_hardware;
@@ -183,6 +184,18 @@ sub batch_import {
                   customer_options
                 );
     $payby = 'BILL';
+ } elsif ( $format =~ /^svc_broadband/ ) {
+    @fields = qw( agent_custid refnum
+                  last first company address1 address2 city state zip country
+                  daytime night
+                  ship_last ship_first ship_company ship_address1 ship_address2
+                  ship_city ship_state ship_zip ship_country
+                  payinfo paycvv paydate
+                  invoicing_list
+                  cust_pkg.pkgpart cust_pkg.bill
+                );
+    push @fields, map "svc_broadband.$_", qw( ip_addr mac_addr sectornum );
+    $payby = 'BILL';
  } elsif ( $format =~ /^svc_external/ ) {
     @fields = qw( agent_custid refnum
                   last first company address1 address2 city state zip country
@@ -340,6 +353,10 @@ sub batch_import {
 
         $svc_x{$1} = shift @columns;
 
+      } elsif ( $field =~ /^svc_broadband\.(ip_addr|mac_addr|sectornum)$/ ) {
+
+        $svc_x{$1} = shift @columns;
+
       } elsif ( $field =~ /^svc_external\.(id|title)$/ ) {
 
         $svc_x{$1} = shift @columns;
@@ -451,6 +468,8 @@ sub batch_import {
         $svcdb = 'svc_acct';
       } elsif ( $svc_x{'id'} || $svc_x{'title'} ) {
         $svcdb = 'svc_external';
+      } elsif ( $svc_x{ip_addr} || $svc_x{mac_addr} ) {
+        $svcdb = 'svc_broadband';
       }
 
       my $svc_phone = '';
index d56feac..46d1536 100644 (file)
@@ -33,6 +33,7 @@ Import a file containing customer records.
         <OPTION VALUE="extended-plus_options">Extended + options
         <OPTION VALUE="extended-plus_company">Extended plus company
         <OPTION VALUE="extended-plus_company_and_options">Extended plus company and options
+        <OPTION VALUE="svc_broadband">Wireless broadband service
         <OPTION VALUE="svc_external">External service
         <OPTION VALUE="svc_external_svc_phone">External service and phone service
         <OPTION VALUE="birthdates-acct_phone_hardware">Birthdates and account, phone and hardware services
@@ -102,6 +103,9 @@ Uploaded files can be CSV (comma-separated value) files or Excel spreadsheets.
 <b>Extended plus company and options </b> format has the following field order: <i>agent_custid, refnum<%$req%>, last<%$req%>, first<%$req%>, company, address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country, daytime, night, ship_last, ship_first, ship_company, ship_address1, ship_address2, ship_city, ship_state, ship_zip, ship_country, payinfo, paycvv, paydate, invoicing_list, pkgpart, username, _password, options</i>
 <BR><BR>
 
+<b>Wireless broadband service</b> format has the following field order: <i>agent_custid, refnum<%$req%>, last<%$req%>, first<%$req%>, company, address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country, daytime, night, ship_last, ship_first, ship_company, ship_address1, ship_address2, ship_city, ship_state, ship_zip, ship_country, payinfo, paycvv, paydate, invoicing_list, pkgpart, next_bill_date, ip_addr, mac_addr, sectornum</i>
+<BR><BR>
+
 <b>External service</b> format has the following field order: <i>agent_custid, refnum<%$req%>, last<%$req%>, first<%$req%>, company, address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country, daytime, night, ship_last, ship_first, ship_company, ship_address1, ship_address2, ship_city, ship_state, ship_zip, ship_country, payinfo, paycvv, paydate, invoicing_list, pkgpart, next_bill_date, id, title</i>
 <BR><BR>