X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fprospect_main.pm;h=79efa86d01d2d354bd98f7cc82bba219f8f14240;hb=292ef074d01bb925e9a466ed771bf2ac418bb44f;hp=81f71a99679bb27d8dcb7eceab129dbb51e47912;hpb=167dbdad01e2c1b62fd9be43cc05212e8c874a02;p=freeside.git diff --git a/FS/FS/prospect_main.pm b/FS/FS/prospect_main.pm index 81f71a996..79efa86d0 100644 --- a/FS/FS/prospect_main.pm +++ b/FS/FS/prospect_main.pm @@ -5,7 +5,7 @@ use strict; use vars qw( $DEBUG @location_fields ); use Scalar::Util qw( blessed ); use FS::Conf; -use FS::Record qw( dbh qsearch ); # qsearchs ); +use FS::Record qw( dbh qsearch qsearchs ); use FS::cust_location; use FS::cust_main; @@ -246,6 +246,7 @@ sub check { || $self->ut_foreign_key( 'agentnum', 'agent', 'agentnum' ) || $self->ut_foreign_keyn( 'refnum', 'part_referral', 'refnum' ) || $self->ut_textn('company') + || $self->ut_foreign_keyn( 'taxstatusnum', 'tax_status', 'taxstatusnum' ) ; return $error if $error; @@ -299,6 +300,36 @@ Returns the qualifications (see L) associated with this prospect. Returns the agent (see L) for this customer. +=item tax_status + +Returns the external tax status, as an FS::tax_status object, or the empty +string if there is no tax status. + +=cut + +sub tax_status { + my $self = shift; + if ( $self->taxstatusnum ) { + qsearchs('tax_status', { 'taxstatusnum' => $self->taxstatusnum } ); + } else { + return ''; + } +} + +=item taxstatus + +Returns the tax status code if there is one. + +=cut + +sub taxstatus { + my $self = shift; + my $tax_status = $self->tax_status; + $tax_status + ? $tax_status->taxstatus + : ''; +} + =item convert_cust_main Converts this prospect to a customer. @@ -325,7 +356,7 @@ sub convert_cust_main { my $cust_main = new FS::cust_main { 'bill_location' => $cust_location[0], 'ship_location' => $cust_location[0], - ( map { $_ => $self->$_ } qw( agentnum refnum company ) ), + ( map { $_ => $self->$_ } qw( agentnum refnum company taxstatusnum ) ), }; $cust_main->refnum( FS::Conf->new->config('referraldefault') || 1 ) @@ -339,9 +370,9 @@ sub convert_cust_main { $cust_main->set('last', 'Unknown'); } - #v3 payby - $cust_main->payby('BILL'); - $cust_main->paydate('12/2037'); + #v3 payby no longer allowed + #$cust_main->payby('BILL'); + #$cust_main->paydate('12/2037'); $cust_main->insert( {}, \@invoicing_list, 'prospectnum' => $self->prospectnum, @@ -410,6 +441,11 @@ sub cust_bill { return; } +# XXX should have real localization here eventually +sub locale { + FS::Conf->new->config('locale'); +} + =back =head1 BUGS