[freeside-commits] branch FREESIDE_4_BRANCH updated. 4278039073ed08e3a139b091626e17338bfedf48

Christopher Burger burgerc at freeside.biz
Thu Feb 28 23:55:28 PST 2019


The branch, FREESIDE_4_BRANCH has been updated
       via  4278039073ed08e3a139b091626e17338bfedf48 (commit)
       via  8388cd27b2d5bebd865ba5f748363b05251edecf (commit)
      from  75866018ce20f390d3af012c8fb119a8e87616d3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 4278039073ed08e3a139b091626e17338bfedf48
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Fri Mar 1 02:52:02 2019 -0500

    RT# 82955 - fixed batch delete error

diff --git a/bin/cust_pay_batch_refund_delete b/bin/cust_pay_batch_refund_delete
index c1ddba449..4e1f1e0c6 100755
--- a/bin/cust_pay_batch_refund_delete
+++ b/bin/cust_pay_batch_refund_delete
@@ -37,7 +37,7 @@ foreach (@batch_refunds) {
 
      ## delete the refund from the batch.
      unless ($delete_cust_refund_error) {
-     	my $delete_cust_pay_batch_error = $_->delete;
+     	my $delete_cust_pay_batch_error = $_->unbatch_and_delete;
      	warn "could not delete cust refund $delete_cust_pay_batch_error\n" if $delete_cust_pay_batch_error;
      }
 

commit 8388cd27b2d5bebd865ba5f748363b05251edecf
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Fri Mar 1 02:05:51 2019 -0500

    RT# 82955 - add script to un refund electronic refunds in batch file

diff --git a/bin/cust_pay_batch_refund_delete b/bin/cust_pay_batch_refund_delete
new file mode 100755
index 000000000..c1ddba449
--- /dev/null
+++ b/bin/cust_pay_batch_refund_delete
@@ -0,0 +1,54 @@
+#!/usr/bin/perl
+
+use FS::UID qw( adminsuidsetup );
+use FS::Record qw( qsearch qsearchs );
+use FS::cust_pay_refund;
+use Data::Dumper;
+
+adminsuidsetup shift or die usage();
+
+## get a list of all refunds in batches.
+
+my $extrasql = " LEFT JOIN pay_batch USING ( batchnum ) WHERE cust_pay_batch.paycode = 'C' AND pay_batch.download IS NULL";
+
+my @batch_refunds = qsearch({
+  'table'   => 'cust_pay_batch',
+  'select'  => 'cust_pay_batch.*',
+  'extra_sql' => $extrasql,
+});
+
+warn "found ".scalar @batch_refunds." batch refunds.\n";
+warn "Searching for their cust refunds...\n" if (scalar @batch_refunds > 0);
+
+
+## find the cust_pay_refund for all those
+foreach (@batch_refunds) {
+	my $extra_batch_refund_sql = " WHERE custnum = '".$_->{Hash}->{custnum}."' AND refund = '".$_->{Hash}->{amount}."' ORDER BY _date DESC LIMIT 1";
+	my $cust_refund = qsearchs({ 
+       'table'  => 'cust_refund',
+       'extra_sql' => $extra_batch_refund_sql,
+	});
+
+	warn "found cust refund number ".$cust_refund->{Hash}->{refundnum}.", now to delete it.\n";
+
+	## delete the cust_pay_refund
+	my $delete_cust_refund_error = $cust_refund->delete;
+	warn "could not delete cust refund $delete_cust_refund_error\n" if $delete_cust_refund_error;
+
+     ## delete the refund from the batch.
+     unless ($delete_cust_refund_error) {
+     	my $delete_cust_pay_batch_error = $_->delete;
+     	warn "could not delete cust refund $delete_cust_pay_batch_error\n" if $delete_cust_pay_batch_error;
+     }
+
+     if ($delete_cust_refund_error || $delete_cust_pay_batch_error) { die "Could no delete cust_pay_batch refund\n"; }
+     else { warn "cust refund ".$cust_refund->{Hash}->{refundnum}." deleted\n"; }
+}
+
+
+
+warn "all done!\n";
+
+sub usage {
+  "Usage: Call script as user freeside\n Example: cust_pay_batch_refund_delete <freeside username> ";
+}
\ No newline at end of file

-----------------------------------------------------------------------

Summary of changes:
 bin/cust_pay_batch_refund_delete | 54 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100755 bin/cust_pay_batch_refund_delete




More information about the freeside-commits mailing list