diff options
author | ivan <ivan> | 2001-09-02 05:38:13 +0000 |
---|---|---|
committer | ivan <ivan> | 2001-09-02 05:38:13 +0000 |
commit | 4f8a0bb6d0c789c7e156a446dc61dbe27938a372 (patch) | |
tree | 8d793aafaff9d0258d501e94caa9ad5e3bc74d4e /FS/FS/cust_refund.pm | |
parent | 9b81123e5ff5825d2c3c000432e4dd18b5fd764f (diff) |
migration. ugh.
Diffstat (limited to 'FS/FS/cust_refund.pm')
-rw-r--r-- | FS/FS/cust_refund.pm | 55 |
1 files changed, 53 insertions, 2 deletions
diff --git a/FS/FS/cust_refund.pm b/FS/FS/cust_refund.pm index 89f8f68..77bacdf 100644 --- a/FS/FS/cust_refund.pm +++ b/FS/FS/cust_refund.pm @@ -96,9 +96,11 @@ sub insert { my $error = $self->check; return $error if $error; + die; + if ( $self->crednum ) { my $cust_credit_refund = new FS::cust_credit_refund { - 'cred' => $self->cred, + 'crednum' => $self->crednum, 'refundnum' => $self->refundnum, 'amount' => $self->refund, '_date' => $self->_date, @@ -123,6 +125,55 @@ sub insert { } +sub upgrade_replace { + my $self = shift; + + local $SIG{HUP} = 'IGNORE'; + local $SIG{INT} = 'IGNORE'; + local $SIG{QUIT} = 'IGNORE'; + local $SIG{TERM} = 'IGNORE'; + local $SIG{TSTP} = 'IGNORE'; + local $SIG{PIPE} = 'IGNORE'; + + my $oldAutoCommit = $FS::UID::AutoCommit; + local $FS::UID::AutoCommit = 0; + my $dbh = dbh; + + my $error = $self->check; + return $error if $error; + + my %new = $self->hash; + my $new = FS::cust_refund->new(\%new); + + if ( $self->crednum ) { + my $cust_credit_refund = new FS::cust_credit_refund { + 'crednum' => $self->crednum, + 'refundnum' => $self->refundnum, + 'amount' => $self->refund, + '_date' => $self->_date, + }; + $error = $cust_credit_refund->insert; + if ( $error ) { + $dbh->rollback if $oldAutoCommit; + return $error; + } + $new->custnum($cust_credit_refund->cust_credit->custnum); + } else { + die; + } + + $error = $new->SUPER::insert($self); + if ( $error ) { + $dbh->rollback if $oldAutoCommit; + return $error; + } + + $dbh->commit or die $dbh->errstr if $oldAutoCommit; + + ''; + +} + =item delete Currently unimplemented (accounting reasons). @@ -198,7 +249,7 @@ sub check { =head1 VERSION -$Id: cust_refund.pm,v 1.7 2001-09-02 04:25:55 ivan Exp $ +$Id: cust_refund.pm,v 1.8 2001-09-02 05:38:13 ivan Exp $ =head1 BUGS |