X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fagent.pm;h=4ad878d4306302141d8455bc58e36058b880170b;hb=66ca614efafe334e2eff37d912f786dd1121548a;hp=721749956c49b38a76427fb3077b87553bcdc3a6;hpb=7ff73ebf72cb30c9e9b8135038c30832d8f9188b;p=freeside.git diff --git a/FS/FS/agent.pm b/FS/FS/agent.pm index 721749956..4ad878d43 100644 --- a/FS/FS/agent.pm +++ b/FS/FS/agent.pm @@ -1,5 +1,5 @@ package FS::agent; -use base qw( FS::m2m_Common FS::m2name_Common FS::Record ); +use base qw( FS::Commission_Mixin FS::m2m_Common FS::m2name_Common FS::Record ); use strict; use vars qw( @ISA ); @@ -618,6 +618,28 @@ sub num_cancel_cust_pkg { shift->num_pkg_sql(FS::cust_pkg->cancel_sql); } +=item num_on_hold_cust_pkg + +Returns the number of inactive customer packages (one-time packages otherwise +unsuspended/uncancelled) for this agent. + +=cut + +sub num_on_hold_cust_pkg { + shift->num_pkg_sql(FS::cust_pkg->on_hold_sql); +} + +=item num_not_yet_billed_cust_pkg + +Returns the number of inactive customer packages (one-time packages otherwise +unsuspended/uncancelled) for this agent. + +=cut + +sub num_not_yet_billed_cust_pkg { + shift->num_pkg_sql(FS::cust_pkg->not_yet_billed_sql); +} + =item generate_reg_codes NUM PKGPART_ARRAYREF Generates the specified number of registration codes, allowing purchase of the @@ -709,6 +731,16 @@ sub num_sales { $sth->fetchrow_arrayref->[0]; } +sub commission_where { + my $self = shift; + 'cust_credit.commission_agentnum = ' . $self->agentnum; +} + +sub sales_where { + my $self = shift; + 'cust_main.agentnum = ' . $self->agentnum; +} + =back =head1 BUGS