svn commit: r1742884 - in /ofbiz/branches/release15.12: ./ applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1742884 - in /ofbiz/branches/release15.12: ./ applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java

jleroux@apache.org
Author: jleroux
Date: Mon May  9 06:14:24 2016
New Revision: 1742884

URL: http://svn.apache.org/viewvc?rev=1742884&view=rev
Log:
"Applied fix from trunk for revision: 1742741 "
------------------------------------------------------------------------
r1742741 | diveshdutta | 2016-05-07 20:38:36 +0200 (sam. 07 mai 2016) | 1 ligne

(OFBIZ-7046) Fixed: Non existent Bulk Item throwing errors while its respective qty get updated. Actually system tries to get SupplierProduct data when updating quantity. When productId is not available for item in cart, added check in code so that system should not fetch SupplierProduct record. Thanks Swapnil Shah for reporting the issue and Devanshu Vyas for providing the patch.
------------------------------------------------------------------------


Modified:
    ofbiz/branches/release15.12/   (props changed)
    ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java

Propchange: ofbiz/branches/release15.12/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon May  9 06:14:24 2016
@@ -9,4 +9,4 @@
 /ofbiz/branches/json-integration-refactoring:1634077-1635900
 /ofbiz/branches/multitenant20100310:921280-927264
 /ofbiz/branches/release13.07:1547657
-/ofbiz/trunk:1722712,1723007,1723248,1724402,1724411,1724566,1724689,1724763,1724916,1724918,1724925,1724930,1724940,1724943,1724946,1724951,1724957,1724975,1724978,1725006,1725217,1725257,1725561,1725574,1726388,1726486,1726493,1726828,1727894,1728398,1728411,1729005,1729078,1729609,1729809,1730035,1730456,1730735-1730736,1730747,1730758,1730882,1730889,1731382,1731396,1732454,1732570,1732721,1733951,1733956,1734246,1734269,1734276,1734912,1734918,1735021,1735244,1735385,1735398,1735569,1735731,1735734,1735750,1735753,1735756,1735759,1735773,1736083,1736087,1736272,1736434,1736628,1736851,1736854,1736890,1737156,1737440,1738235,1738303,1738407,1738902,1739438,1739448,1739571,1740008,1740442,1740629,1741146,1741563,1741684,1741925,1741930,1741960,1742018,1742097,1742103,1742712,1742737
+/ofbiz/trunk:1722712,1723007,1723248,1724402,1724411,1724566,1724689,1724763,1724916,1724918,1724925,1724930,1724940,1724943,1724946,1724951,1724957,1724975,1724978,1725006,1725217,1725257,1725561,1725574,1726388,1726486,1726493,1726828,1727894,1728398,1728411,1729005,1729078,1729609,1729809,1730035,1730456,1730735-1730736,1730747,1730758,1730882,1730889,1731382,1731396,1732454,1732570,1732721,1733951,1733956,1734246,1734269,1734276,1734912,1734918,1735021,1735244,1735385,1735398,1735569,1735731,1735734,1735750,1735753,1735756,1735759,1735773,1736083,1736087,1736272,1736434,1736628,1736851,1736854,1736890,1737156,1737440,1738235,1738303,1738407,1738902,1739438,1739448,1739571,1740008,1740442,1740629,1741146,1741563,1741684,1741925,1741930,1741960,1742018,1742097,1742103,1742712,1742737,1742741

Modified: ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java?rev=1742884&r1=1742883&r2=1742884&view=diff
==============================================================================
--- ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java (original)
+++ ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCartHelper.java Mon May  9 06:14:24 2016
@@ -811,25 +811,28 @@ public class ShoppingCartHelper {
                                             oldDescription = item.getName();
                                             oldPrice = item.getBasePrice();
 
+                                            if (UtilValidate.isNotEmpty(item.getProductId())) {
+                                                GenericValue supplierProduct = this.cart.getSupplierProduct(item.getProductId(), quantity, this.dispatcher);
 
-                                            GenericValue supplierProduct = this.cart.getSupplierProduct(item.getProductId(), quantity, this.dispatcher);
-
-                                            if (supplierProduct == null) {
-                                                if ("_NA_".equals(cart.getPartyId())) {
-                                                    // no supplier does not require the supplier product
-                                                    item.setQuantity(quantity, dispatcher, this.cart);
-                                                    item.setName(item.getProduct().getString("internalName"));
+                                                if (supplierProduct == null) {
+                                                    if ("_NA_".equals(cart.getPartyId())) {
+                                                        // no supplier does not require the supplier product
+                                                        item.setQuantity(quantity, dispatcher, this.cart);
+                                                        item.setName(item.getProduct().getString("internalName"));
+                                                    } else {
+                                                        // in this case, the user wanted to purchase a quantity which is not available (probably below minimum)
+                                                        String errMsg = UtilProperties.getMessage(resource_error, "cart.product_not_valid_for_supplier", this.cart.getLocale());
+                                                        errMsg = errMsg + " (" + item.getProductId() + ", " + quantity + ", " + cart.getCurrency() + ")";
+                                                        errorMsgs.add(errMsg);
+                                                    }
                                                 } else {
-                                                    // in this case, the user wanted to purchase a quantity which is not available (probably below minimum)
-                                                    String errMsg = UtilProperties.getMessage(resource_error, "cart.product_not_valid_for_supplier", this.cart.getLocale());
-                                                    errMsg = errMsg + " (" + item.getProductId() + ", " + quantity + ", " + cart.getCurrency() + ")";
-                                                    errorMsgs.add(errMsg);
+                                                    item.setSupplierProductId(supplierProduct.getString("supplierProductId"));
+                                                    item.setQuantity(quantity, dispatcher, this.cart);
+                                                    item.setBasePrice(supplierProduct.getBigDecimal("lastPrice"));
+                                                    item.setName(ShoppingCartItem.getPurchaseOrderItemDescription(item.getProduct(), supplierProduct, cart.getLocale()));
                                                 }
                                             } else {
-                                                item.setSupplierProductId(supplierProduct.getString("supplierProductId"));
                                                 item.setQuantity(quantity, dispatcher, this.cart);
-                                                item.setBasePrice(supplierProduct.getBigDecimal("lastPrice"));
-                                                item.setName(ShoppingCartItem.getPurchaseOrderItemDescription(item.getProduct(), supplierProduct, cart.getLocale()));
                                             }
                                         }
                                     } else {