X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_bill_pay.pm;h=ac82c542d8467b92b71b8495711f390664230447;hb=4f8a0bb6d0c789c7e156a446dc61dbe27938a372;hp=e7040d96bf123d4abc7f5b6b90ae7ca9edb48023;hpb=80e8925f41f10f9787fa4fe245dcd056ada7a71f;p=freeside.git diff --git a/FS/FS/cust_bill_pay.pm b/FS/FS/cust_bill_pay.pm index e7040d96b..ac82c542d 100644 --- a/FS/FS/cust_bill_pay.pm +++ b/FS/FS/cust_bill_pay.pm @@ -1,9 +1,10 @@ -package cust_bill_pay; +package FS::cust_bill_pay; use strict; use vars qw( @ISA ); use FS::Record qw( qsearch qsearchs dbh ); -#use FS::cust_bill +use FS::cust_bill; +use FS::cust_pay; @ISA = qw( FS::Record ); @@ -106,9 +107,9 @@ sub insert { }; my $bill_total = 0; - $bill_total += foreach map { $_->amount } + $bill_total += $_ foreach map { $_->amount } qsearch('cust_bill_pay', { 'invnum' => $self->invnum } ); - $bill_total += foreach map { $_->amount } + $bill_total += $_ foreach map { $_->amount } qsearch('cust_credit_bill', { 'invnum' => $self->invnum } ); if ( $bill_total > $cust_bill->charged ) { $dbh->rollback if $oldAutoCommit; @@ -155,7 +156,7 @@ sub check { my $error = $self->ut_numbern('billpaynum') || $self->ut_number('invnum') - || $self->ut_numner('paynum') + || $self->ut_number('paynum') || $self->ut_money('amount') || $self->ut_numbern('_date') ; @@ -167,17 +168,40 @@ sub check { ''; #no error } +=item cust_pay + +Returns the payment (see L) + +=cut + +sub cust_pay { + my $self = shift; + qsearchs( 'cust_pay', { 'paynum' => $self->paynum } ); +} + +=item cust_bill + +Returns the invoice (see L) + +=cut + +sub cust_bill { + my $self = shift; + qsearchs( 'cust_bill', { 'invnum' => $self->invnum } ); +} + =back =head1 VERSION -$Id: cust_bill_pay.pm,v 1.2 2001-09-01 21:55:06 jeff Exp $ +$Id: cust_bill_pay.pm,v 1.6 2001-09-02 05:38:13 ivan Exp $ =head1 BUGS Delete and replace methods. -cust_credit_bill isn't checked yet (uncomment around line 111) +the checks for over-applied payments could be better done like the ones in +cust_bill_credit =head1 SEE ALSO