[freeside-commits] branch master updated. e44835f640559a6eb5bc831e08732d5ab8947dd4

Christopher Burger burgerc at freeside.biz
Mon Jul 16 11:41:05 PDT 2018


The branch, master has been updated
       via  e44835f640559a6eb5bc831e08732d5ab8947dd4 (commit)
      from  fcd077e54f251a44e1643e9824e6cd8f33a04da2 (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 e44835f640559a6eb5bc831e08732d5ab8947dd4
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Mon Jul 16 14:40:39 2018 -0400

    RT# 74435 - added check, to make sure batch format can handle refunds

diff --git a/FS/FS/pay_batch/RBC.pm b/FS/FS/pay_batch/RBC.pm
index dea89cde1..3d1d98b17 100644
--- a/FS/FS/pay_batch/RBC.pm
+++ b/FS/FS/pay_batch/RBC.pm
@@ -228,5 +228,10 @@ $name = 'RBC';
   },
 );
 
+## this format can handle credit transactions
+sub can_handle_credits {
+  1;
+}
+
 1;
 
diff --git a/httemplate/misc/download-batch.cgi b/httemplate/misc/download-batch.cgi
index c4bc37e93..c6a0b68c3 100644
--- a/httemplate/misc/download-batch.cgi
+++ b/httemplate/misc/download-batch.cgi
@@ -20,9 +20,18 @@ elsif ( $cgi->param('format') =~ /^([\w\- ]+)$/ ) {
   $opt{'format'} = $1;
 }
 
-my $pay_batch = qsearchs('pay_batch', { batchnum => $batchnum } );
+my $credit_transactions = "EXISTS (SELECT 1 FROM cust_pay_batch WHERE batchnum = $batchnum AND paycode = 'C') AS arecredits";
+my $pay_batch = qsearchs({ 'select'    => "*, $credit_transactions",
+                           'table'     => 'pay_batch',
+                           'hashref'   => { batchnum => $batchnum },
+                         });
 die "Batch not found: '$batchnum'" if !$pay_batch;
 
+if ($pay_batch->{Hash}->{arecredits}) {
+  my $export_format = "FS::pay_batch::".$opt{'format'};
+    die "This format can not handle refunds." unless $export_format->can('can_handle_credits');
+}
+
 my $exporttext = $pay_batch->export_batch(%opt);
 unless ($exporttext) {
   http_header('Content-Type' => 'text/html' );

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

Summary of changes:
 FS/FS/pay_batch/RBC.pm             |  5 +++++
 httemplate/misc/download-batch.cgi | 11 ++++++++++-
 2 files changed, 15 insertions(+), 1 deletion(-)




More information about the freeside-commits mailing list