X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_credit.pm;h=9cc92d2e82dc6f6a1c0d7ee4a260b6b6b6542b58;hb=f26658d1aa536ba0c5a60e8a8d22781ba2be682a;hp=90f9b59edf0661adc829b274839fe2e90a341697;hpb=f3212b82d6d54500bbe31c02c8ffa456f018a067;p=freeside.git diff --git a/FS/FS/cust_credit.pm b/FS/FS/cust_credit.pm index 90f9b59ed..9cc92d2e8 100644 --- a/FS/FS/cust_credit.pm +++ b/FS/FS/cust_credit.pm @@ -2,13 +2,16 @@ package FS::cust_credit; use strict; use vars qw( @ISA $conf $unsuspendauto ); +use Date::Format; use FS::UID qw( dbh getotaker ); +use FS::Misc qw(send_email); use FS::Record qw( qsearch qsearchs ); +use FS::cust_main_Mixin; use FS::cust_main; use FS::cust_refund; use FS::cust_credit_bill; -@ISA = qw( FS::Record ); +@ISA = qw( FS::cust_main_Mixin FS::Record ); #ask FS::UID to run this stuff for us later $FS::UID::callback{'FS::cust_credit'} = sub { @@ -73,6 +76,12 @@ Creates a new credit. To add the credit to the database, see L<"insert">. =cut sub table { 'cust_credit'; } +sub cust_linked { $_[0]->cust_main_custnum; } +sub cust_unlinked_msg { + my $self = shift; + "WARNING: can't find cust_main.custnum ". $self->custnum. + ' (cust_credit.crednum '. $self->crednum. ')'; +} =item insert @@ -104,6 +113,8 @@ sub insert { return "error inserting $self: $error"; } + $dbh->commit or die $dbh->errstr if $oldAutoCommit; + #false laziness w/ cust_credit::insert if ( $unsuspendauto && $old_balance && $cust_main->balance <= 0 ) { my @errors = $cust_main->unsuspend; @@ -298,6 +309,18 @@ sub credited { sprintf( "%.2f", $amount ); } +=item cust_main + +Returns the customer (see L) for this credit. + +=cut + +sub cust_main { + my $self = shift; + qsearchs( 'cust_main', { 'custnum' => $self->custnum } ); +} + + =back =head1 BUGS