From b94846d563bd29dcf9c11bb0cd6f75652e2b7a7b Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Mon, 25 Sep 2017 15:17:21 -0700 Subject: added invoice details to package import, RT#76992 --- FS/FS/cust_pkg/Import.pm | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'FS') diff --git a/FS/FS/cust_pkg/Import.pm b/FS/FS/cust_pkg/Import.pm index 2467e6fde..3cf38cd41 100644 --- a/FS/FS/cust_pkg/Import.pm +++ b/FS/FS/cust_pkg/Import.pm @@ -105,7 +105,7 @@ my %formatfields = ( 'svc_phone' => [qw( countrycode phonenum sip_password pin )], 'svc_external' => [qw( id title )], 'location' => [qw( address1 address2 city state zip country )], - 'quan_price' => [qw( quantity setup_fee recur_fee )], + 'quan_price' => [qw( quantity setup_fee recur_fee invoice_details )], ); sub _formatfields { @@ -162,6 +162,25 @@ warn join('-', @location_params); 'postinsert_callback' => sub { my( $record, $param ) = @_; + if ( $param->{'quan_price.invoice_details'} ) { + + my $weight = 0; + foreach my $detail (split(/\|/, $param->{'quan_price.invoice_details'})) { + + my $cust_pkg_detail = new FS::cust_pkg_detail { + 'pkgnum' => $record->pkgnum, + 'detail' => $detail, + 'detailtype' => 'I', + 'weight' => $weight++, + }; + + my $error = $cust_pkg_detail->insert; + return "error inserting invoice detail: $error" if $error; + + } + + } + my $formatfields = _formatfields; foreach my $svc_x ( grep /^svc/, keys %$formatfields ) { -- cgit v1.2.1