diff options
author | Ivan Kohler <ivan@freeside.biz> | 2017-04-19 17:16:25 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2017-04-19 17:16:25 -0700 |
commit | ff47ea64ff72717fa76b8cbb1d2d136910a5e6f1 (patch) | |
tree | ccc27aea79c0911c3c30ed1908b7437988a2e38f /FS/FS/cust_class.pm | |
parent | bbcc87b4f8a5e6c6fc2bd4d4cce17ae45d905a8d (diff) |
customer links on customer class browse
Diffstat (limited to 'FS/FS/cust_class.pm')
-rw-r--r-- | FS/FS/cust_class.pm | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/FS/FS/cust_class.pm b/FS/FS/cust_class.pm index fdc92ba..a71bc16 100644 --- a/FS/FS/cust_class.pm +++ b/FS/FS/cust_class.pm @@ -3,6 +3,7 @@ use base qw( FS::class_Common ); use strict; use FS::cust_category; +use FS::Record qw( dbh ); =head1 NAME @@ -117,8 +118,35 @@ sub cust_category { Returns the category name associated with this class, or false if there is none. +=item num_prospect + +=item num_ordered + +=item num_active + +=item num_inactive + +=item num_suspended + +=item num_cancelled + =cut +sub num_sql { + my( $self, $sql ) = @_; + my $statement = "SELECT COUNT(*) FROM cust_main WHERE classnum = ? AND $sql"; + my $sth = dbh->prepare($statement) or die dbh->errstr." preparing $statement"; + $sth->execute($self->classnum) or die $sth->errstr. " executing $statement"; + $sth->fetchrow_arrayref->[0]; +} + +sub num_prospect { shift->num_sql(FS::cust_main->prospect_sql) } +sub num_ordered { shift->num_sql(FS::cust_main->ordered_sql) } +sub num_active { shift->num_sql(FS::cust_main->active_sql) } +sub num_inactive { shift->num_sql(FS::cust_main->inactive_sql) } +sub num_suspended { shift->num_sql(FS::cust_main->susp_sql) } +sub num_cancelled { shift->num_sql(FS::cust_main->cancel_sql) } + =back =head1 BUGS |