[freeside-commits] branch master updated. 83fef36304dae4f46748ba21d62cba606d8e88f0

Ivan ivan at 420.am
Wed Aug 5 22:53:51 PDT 2015


The branch, master has been updated
       via  83fef36304dae4f46748ba21d62cba606d8e88f0 (commit)
      from  029eb49464888b53f73303fe38e15494a2842170 (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 83fef36304dae4f46748ba21d62cba606d8e88f0
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Wed Aug 5 22:53:50 2015 -0700

    consider csv/xls imported payments "manual" for payment receipt purposes, RT#33681

diff --git a/FS/FS/cust_pay.pm b/FS/FS/cust_pay.pm
index d135599..b81f161 100644
--- a/FS/FS/cust_pay.pm
+++ b/FS/FS/cust_pay.pm
@@ -1226,23 +1226,26 @@ sub process_batch_import {
     return %hash;
   };
 
-  my $opt = { 'table'   => 'cust_pay',
-              'params'  => [ '_date', 'agentnum', 'payby', 'paybatch' ],
-                                         #agent_custid isn't a cust_pay field, see hash callback
-              'formats' => { 'simple' => [ qw(custnum agent_custid paid payinfo invnum) ] },
-              'format_types' => { 'simple' => '' }, #force infer from file extension
-              'default_csv' => 1, #if it's not .xls, it'll read as csv, regardless of extension
-              'format_hash_callbacks' => { 'simple' => $hashcb },
-              'postinsert_callback' => sub {
-                 my $cust_pay = shift;
-                 my $cust_main = $cust_pay->cust_main ||
-                   return "can't find customer to which payments apply";
-                 my $error = $cust_main->apply_payments_and_credits;
-                 return $error
-                   ? "can't apply payments to customer ".$cust_pay->custnum."$error"
-                   : '';
-              },
-            };
+  my $opt = {
+    'table'        => 'cust_pay',
+    'params'       => [ '_date', 'agentnum', 'payby', 'paybatch' ],
+                        #agent_custid isn't a cust_pay field, see hash callback
+    'formats'      => { 'simple' =>
+                          [ qw(custnum agent_custid paid payinfo invnum) ] },
+    'format_types' => { 'simple' => '' }, #force infer from file extension
+    'default_csv'  => 1, #if not .xls, will read as csv, regardless of extension
+    'format_hash_callbacks' => { 'simple' => $hashcb },
+    'insert_args_callback'  => sub { ( 'manual'=>1 ) },
+    'postinsert_callback'   => sub {
+      my $cust_pay = shift;
+      my $cust_main = $cust_pay->cust_main
+                        or return "can't find customer to which payments apply";
+      my $error = $cust_main->apply_payments_and_credits;
+      return $error
+               ? "can't apply payments to customer ".$cust_pay->custnum."$error"
+               : '';
+    },
+  };
 
   FS::Record::process_batch_import( $job, $opt, @_ );
 

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

Summary of changes:
 FS/FS/cust_pay.pm |   37 ++++++++++++++++++++-----------------
 1 file changed, 20 insertions(+), 17 deletions(-)




More information about the freeside-commits mailing list