details:   https://code.openbravo.com/erp/devel/pi/rev/e2656d6965dd
changeset: 35297:e2656d6965dd
user:      Asier Martirena <asier.martirena <at> openbravo.com>
date:      Wed Dec 26 21:10:50 2018 +0100
summary:   [Omnichannel] In C&R now the credit is directly managed from the API 
to create payments

diffstat:

 src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java |  36 
++++-----
 1 files changed, 16 insertions(+), 20 deletions(-)

diffs (61 lines):

diff -r 5f484db5ed98 -r e2656d6965dd 
src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java
--- a/src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java    
Thu Dec 27 11:36:51 2018 +0000
+++ b/src/org/openbravo/erpCommon/businessUtility/CancelAndReplaceUtils.java    
Wed Dec 26 21:10:50 2018 +0100
@@ -61,7 +61,6 @@
 import org.openbravo.erpCommon.utility.Utility;
 import org.openbravo.materialmgmt.ReservationUtils;
 import org.openbravo.model.ad.access.OrderLineTax;
-import org.openbravo.model.common.businesspartner.BusinessPartner;
 import org.openbravo.model.common.enterprise.DocumentType;
 import org.openbravo.model.common.enterprise.Locator;
 import org.openbravo.model.common.enterprise.Organization;
@@ -598,11 +597,15 @@
       if (triggersDisabled) {
         TriggerHandler.getInstance().enable();
       }
-      // Calling Cancelandreplaceorderhook
-      
WeldUtils.getInstanceFromStaticBeanManager(CancelAndReplaceOrderHookCaller.class)
-          .executeHook(replaceOrder, triggersDisabled, oldOrder, newOrder, 
inverseOrder, jsonorder);
-      if (triggersDisabled) {
-        TriggerHandler.getInstance().disable();
+      try {
+        // Calling Cancelandreplaceorderhook
+        
WeldUtils.getInstanceFromStaticBeanManager(CancelAndReplaceOrderHookCaller.class)
+            .executeHook(replaceOrder, triggersDisabled, oldOrder, newOrder, 
inverseOrder,
+                jsonorder);
+      } finally {
+        if (triggersDisabled) {
+          TriggerHandler.getInstance().disable();
+        }
       }
     } catch (Exception e1) {
       Throwable e2 = DbUtility.getUnderlyingSQLException(e1);
@@ -1268,21 +1271,14 @@
         if (triggersDisabled) {
           TriggerHandler.getInstance().enable();
         }
-        if (nettingPayment != null) {
-          if (jsonorder != null && jsonorder.has("canceledorder")) {
-            final JSONObject canceledOrder = 
jsonorder.getJSONObject("canceledorder");
-            if (canceledOrder.optBoolean("paidOnCredit", false)) {
-              final BusinessPartner bp = 
OBDal.getInstance().get(BusinessPartner.class,
-                  canceledOrder.getJSONObject("bp").getString("id"));
-              bp.setCreditUsed(bp.getCreditUsed().subtract(
-                  
BigDecimal.valueOf(canceledOrder.getDouble("creditAmount"))));
-              OBDal.getInstance().save(bp);
-            }
+        try {
+          if (nettingPayment != null) {
+            FIN_PaymentProcess.doProcessPayment(nettingPayment, "P", null, 
null);
           }
-          FIN_PaymentProcess.doProcessPayment(nettingPayment, "P", null, null);
-        }
-        if (triggersDisabled) {
-          TriggerHandler.getInstance().disable();
+        } finally {
+          if (triggersDisabled) {
+            TriggerHandler.getInstance().disable();
+          }
         }
 
       } else {


_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to