details:   https://code.openbravo.com/erp/devel/pi/rev/3dc369ce4c58
changeset: 28868:3dc369ce4c58
user:      Atul Gaware <atul.gaware <at> openbravo.com>
date:      Tue Apr 05 15:26:26 2016 +0530
summary:   Fixes Issue 32383:Payments can be deposited without being executed

In case of payment created using financial account transaction add payment 
selector (+), a check for payment method with automatic execution process is 
added before processing transaction and payment has awaiting execution status.

details:   https://code.openbravo.com/erp/devel/pi/rev/93df53b537f9
changeset: 28869:93df53b537f9
user:      Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
date:      Mon Apr 11 10:46:58 2016 +0200
summary:   Related to issue 32383: Code review improvements

diffstat:

 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml 
                           |  12 ++++++++++
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 |  11 ++++++++-
 2 files changed, 22 insertions(+), 1 deletions(-)

diffs (57 lines):

diff -r f7c2d3f60821 -r 93df53b537f9 
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
--- 
a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
    Fri Apr 08 14:58:03 2016 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MESSAGE.xml
    Mon Apr 11 10:46:58 2016 +0200
@@ -1225,6 +1225,18 @@
 <!--BE7AE60244C34C8AB03616F5A70B45D2-->  
<ISINCLUDEINI18N><![CDATA[N]]></ISINCLUDEINI18N>
 <!--BE7AE60244C34C8AB03616F5A70B45D2--></AD_MESSAGE>
 
+<!--C05265FE175B42248130883AACF2BD20--><AD_MESSAGE>
+<!--C05265FE175B42248130883AACF2BD20-->  
<AD_MESSAGE_ID><![CDATA[C05265FE175B42248130883AACF2BD20]]></AD_MESSAGE_ID>
+<!--C05265FE175B42248130883AACF2BD20-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--C05265FE175B42248130883AACF2BD20-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--C05265FE175B42248130883AACF2BD20-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--C05265FE175B42248130883AACF2BD20-->  
<VALUE><![CDATA[APRM_AutomaticExecutionProcess]]></VALUE>
+<!--C05265FE175B42248130883AACF2BD20-->  <MSGTEXT><![CDATA[It is not possible 
to process a transaction with a payment having an automatic execution process 
payment method. Please, execute the payment in Payment In/Out window 
first.]]></MSGTEXT>
+<!--C05265FE175B42248130883AACF2BD20-->  <MSGTYPE><![CDATA[E]]></MSGTYPE>
+<!--C05265FE175B42248130883AACF2BD20-->  
<AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
+<!--C05265FE175B42248130883AACF2BD20-->  
<ISINCLUDEINI18N><![CDATA[N]]></ISINCLUDEINI18N>
+<!--C05265FE175B42248130883AACF2BD20--></AD_MESSAGE>
+
 <!--C36865A47B99485980CC8B56AAF59057--><AD_MESSAGE>
 <!--C36865A47B99485980CC8B56AAF59057-->  
<AD_MESSAGE_ID><![CDATA[C36865A47B99485980CC8B56AAF59057]]></AD_MESSAGE_ID>
 <!--C36865A47B99485980CC8B56AAF59057-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r f7c2d3f60821 -r 93df53b537f9 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Fri Apr 08 14:58:03 2016 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Mon Apr 11 10:46:58 2016 +0200
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2015 Openbravo SLU
+ * All portions are Copyright (C) 2010-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -24,6 +24,7 @@
 import org.apache.commons.lang.StringUtils;
 import org.hibernate.criterion.Restrictions;
 import org.openbravo.advpaymentmngt.APRM_FinaccTransactionV;
+import org.openbravo.advpaymentmngt.dao.AdvPaymentMngtDao;
 import org.openbravo.advpaymentmngt.utility.FIN_Utility;
 import org.openbravo.base.exception.OBException;
 import org.openbravo.base.provider.OBProvider;
@@ -121,6 +122,14 @@
           if (transaction.getBusinessPartner() == null) {
             transaction.setBusinessPartner(payment.getBusinessPartner());
           }
+          AdvPaymentMngtDao dao = new AdvPaymentMngtDao();
+          if (StringUtils.equals(payment.getStatus(), 
dao.PAYMENT_STATUS_AWAITING_EXECUTION)
+              && dao.isAutomatedExecutionPayment(financialAccount, 
payment.getPaymentMethod(),
+                  payment.isReceipt())) {
+            msg = OBMessageUtils.messageBD("APRM_AutomaticExecutionProcess");
+            throw new OBException(msg);
+          }
+
           payment.setStatus(payment.isReceipt() ? "RDNC" : "PWNC");
           transaction.setStatus(payment.isReceipt() ? "RDNC" : "PWNC");
           if (transaction.getPaymentAmount().compareTo(BigDecimal.ZERO) > 0) {

------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial! http://pubads.g.doubleclick.net/
gampad/clk?id=1444514301&iu=/ca-pub-7940484522588532
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to