projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
71df2ac
)
fix encryption upgrades when a payment is refunded, then deleted. RT#74270, RT#73085
author
Ivan Kohler
<ivan@freeside.biz>
Wed, 25 Jan 2017 19:26:46 +0000
(11:26 -0800)
committer
Ivan Kohler
<ivan@freeside.biz>
Wed, 25 Jan 2017 19:26:46 +0000
(11:26 -0800)
FS/FS/cust_refund.pm
patch
|
blob
|
history
diff --git
a/FS/FS/cust_refund.pm
b/FS/FS/cust_refund.pm
index
12ab0d6
..
2d5b3aa
100644
(file)
--- a/
FS/FS/cust_refund.pm
+++ b/
FS/FS/cust_refund.pm
@@
-472,6
+472,19
@@
sub unapplied_sql {
}
}
+sub _upgrade_schema {
+ #my ($class, %opts) = @_;
+
+ my $sql = 'UPDATE cust_refund SET source_paynum = NULL
+ WHERE source_paynum IS NOT NULL
+ AND NOT EXISTS ( SELECT 1 FROM cust_pay
+ WHERE paynum = cust_refund.source_paynum )
+ ';
+ my $sth = dbh->prepare($sql) or die dbh->errstr;
+ $sth->execute or die $sth->errstr;
+ '';
+}
+
# Used by FS::Upgrade to migrate to a new database.
sub _upgrade_data { # class method
my ($class, %opts) = @_;
# Used by FS::Upgrade to migrate to a new database.
sub _upgrade_data { # class method
my ($class, %opts) = @_;