diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-07-31 05:24:27 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-07-31 05:24:27 -0700 |
commit | 51a648bdf566a6be176b1d7f98a89a2e400481bf (patch) | |
tree | 75e01ca382dc0696412038293061301934673518 /FS | |
parent | 1f9cad18af5742ee646a56bc0d5a40e6775eabab (diff) |
simple A/P
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/vend_bill.pm | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/FS/FS/vend_bill.pm b/FS/FS/vend_bill.pm index 81de6949e..c8fcdd746 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"; |