summaryrefslogtreecommitdiff
path: root/FS/FS/vend_bill.pm
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2013-07-31 05:24:27 -0700
committerIvan Kohler <ivan@freeside.biz>2013-07-31 05:24:27 -0700
commit51a648bdf566a6be176b1d7f98a89a2e400481bf (patch)
tree75e01ca382dc0696412038293061301934673518 /FS/FS/vend_bill.pm
parent1f9cad18af5742ee646a56bc0d5a40e6775eabab (diff)
simple A/P
Diffstat (limited to 'FS/FS/vend_bill.pm')
-rw-r--r--FS/FS/vend_bill.pm13
1 files changed, 10 insertions, 3 deletions
diff --git a/FS/FS/vend_bill.pm b/FS/FS/vend_bill.pm
index 81de694..c8fcdd7 100644
--- a/FS/FS/vend_bill.pm
+++ b/FS/FS/vend_bill.pm
@@ -193,6 +193,7 @@ sub search {
my ($class, $param) = @_;
my @where = ();
+ my $addl_from = '';
#_date
if ( $param->{_date} ) {
@@ -202,7 +203,7 @@ sub search {
"vend_bill._date < $ending";
}
- #_date
+ #payment_date
if ( $param->{payment_date} ) {
my($beginning, $ending) = @{$param->{payment_date}};
@@ -210,11 +211,17 @@ sub search {
"vend_pay._date < $ending";
}
+ if ( $param->{'classnum'} =~ /^(\d+)$/ ) {
+ #also simplistic, but good for now
+ $addl_from .= ' LEFT JOIN vend_main USING (vendnum) ';
+ push @where, "vend_main.classnum = $1";
+ }
+
my $extra_sql = scalar(@where) ? ' WHERE '. join(' AND ', @where) : '';
#simplistic, but how we are for now
- my $addl_from = ' LEFT JOIN vend_bill_pay USING (vendbillnum) '.
- ' LEFT JOIN vend_pay USING (vendpaynum) ';
+ $addl_from .= ' LEFT JOIN vend_bill_pay USING (vendbillnum) '.
+ ' LEFT JOIN vend_pay USING (vendpaynum) ';
my $count_query = "SELECT COUNT(*), SUM(charged) FROM vend_bill $addl_from $extra_sql";