Author: diveshdutta
Date: Sun Jun 19 00:52:31 2016 New Revision: 1749113 URL: http://svn.apache.org/viewvc?rev=1749113&view=rev Log: Applied fix from trunk for revision: 1749111 === [OFBIZ-7190] Now CSR should be able to cancel order items of multiple ship groups. Also CSR should be able to cancel quantities less than ordered quantity. This should also fix OFBIZ-7255. Thanks Ankush Upadhyay for your patch. Thanks Mohammad Kathawala and Ratnesh Upadhyay for reporting the issues. Modified: ofbiz/branches/release15.12/ (props changed) ofbiz/branches/release15.12/applications/order/servicedef/services.xml ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderEvents.java ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderServices.java ofbiz/branches/release15.12/applications/order/webapp/ordermgr/order/editorderitems.ftl Propchange: ofbiz/branches/release15.12/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Sun Jun 19 00:52:31 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,1742741,1743025,1743027,1743230,1743411-1743412,1743656,1743937,1744117,1744198,1744396,1744662,1744768,1744773,1744873,1744911,1745111,1745264,1745428,1745438,1745573,1745577,1745592,1745751,1746228, 1746422,1746459,1746524,1746527,1746536,1746601,1746676,1746714,1746755,1746805,1746832,1746890,1747223,1747349,1747498,1747639,1747642,1747646,1747650,1747661,1747956,1747959,1747963,1748121,1748133,1748206,1748218,1748223,1748260,1748357,1748394,1748401,1748543,1748559,1748628,1748689,1748693,1748703,1748837,1748854,1748907,1748925,1748929,1748944,1748972,1749026,1749083,1749092 +/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,1743025,1743027,1743230,1743411-1743412,1743656,1743937,1744117,1744198,1744396,1744662,1744768,1744773,1744873,1744911,1745111,1745264,1745428,1745438,1745573,1745577,1745592,1745751,1746228, 1746422,1746459,1746524,1746527,1746536,1746601,1746676,1746714,1746755,1746805,1746832,1746890,1747223,1747349,1747498,1747639,1747642,1747646,1747650,1747661,1747956,1747959,1747963,1748121,1748133,1748206,1748218,1748223,1748260,1748357,1748394,1748401,1748543,1748559,1748628,1748689,1748693,1748703,1748837,1748854,1748907,1748925,1748929,1748944,1748972,1749026,1749083,1749092,1749111 Modified: ofbiz/branches/release15.12/applications/order/servicedef/services.xml URL: http://svn.apache.org/viewvc/ofbiz/branches/release15.12/applications/order/servicedef/services.xml?rev=1749113&r1=1749112&r2=1749113&view=diff ============================================================================== --- ofbiz/branches/release15.12/applications/order/servicedef/services.xml (original) +++ ofbiz/branches/release15.12/applications/order/servicedef/services.xml Sun Jun 19 00:52:31 2016 @@ -293,6 +293,7 @@ under the License. <attribute name="cancelQuantity" type="BigDecimal" mode="IN" optional="true"/> <attribute name="itemReasonMap" type="Map" mode="IN" string-map-prefix="irm_" optional="true"/> <attribute name="itemCommentMap" type="Map" mode="IN" string-map-prefix="icm_" optional="true"/> + <attribute name="itemQtyMap" type="Map" mode="IN" string-map-prefix="iqm_" optional="true"/> </service> <service name="cancelOrderItemNoActions" engine="java" auth="true" location="org.ofbiz.order.order.OrderServices" invoke="cancelOrderItem"> Modified: ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderEvents.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderEvents.java?rev=1749113&r1=1749112&r2=1749113&view=diff ============================================================================== --- ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderEvents.java (original) +++ ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderEvents.java Sun Jun 19 00:52:31 2016 @@ -34,6 +34,7 @@ import javax.servlet.http.HttpSession; import org.apache.commons.io.IOUtils; import org.ofbiz.base.util.Debug; import org.ofbiz.base.util.GeneralException; +import org.ofbiz.base.util.UtilGenerics; import org.ofbiz.base.util.UtilHttp; import org.ofbiz.base.util.UtilMisc; import org.ofbiz.content.data.DataResourceWorker; @@ -44,6 +45,7 @@ import org.ofbiz.entity.util.EntityQuery import org.ofbiz.service.GenericServiceException; import org.ofbiz.service.LocalDispatcher; import org.ofbiz.service.ServiceUtil; +import java.math.BigDecimal; /** * Order Events @@ -113,21 +115,21 @@ public class OrderEvents { Map<String, Object> resultMap = new HashMap<String, Object>(); String orderId = request.getParameter("orderId"); - String[] orderItemSeqIds = request.getParameterValues("selectedItem"); - - if (orderItemSeqIds != null) { - for (String orderItemSeqId : orderItemSeqIds) { - try { - GenericValue orderItem = EntityQuery.use(delegator).from("OrderItem").where("orderId", orderId, "orderItemSeqId", orderItemSeqId).queryOne(); - List<GenericValue> orderItemShipGroupAssocs = orderItem.getRelated("OrderItemShipGroupAssoc", null, null, false); - for (GenericValue orderItemShipGroupAssoc : orderItemShipGroupAssocs) { - GenericValue orderItemShipGroup = orderItemShipGroupAssoc.getRelatedOne("OrderItemShipGroup", false); - String shipGroupSeqId = orderItemShipGroup.getString("shipGroupSeqId"); - + String[] selectedItems = request.getParameterValues("selectedItem"); + + + + if (selectedItems != null) { + for (String selectedItem : selectedItems) { + String [] orderItemSeqIdAndOrderItemShipGrpId = selectedItem.split(":"); + String orderItemSeqId = orderItemSeqIdAndOrderItemShipGrpId[0]; + String shipGroupSeqId = orderItemSeqIdAndOrderItemShipGrpId[1]; + BigDecimal cancelQuantity = new BigDecimal(request.getParameter("iqm_"+orderItemSeqId+":"+shipGroupSeqId)); Map<String, Object> contextMap = new HashMap<String, Object>(); contextMap.put("orderId", orderId); contextMap.put("orderItemSeqId", orderItemSeqId); contextMap.put("shipGroupSeqId", shipGroupSeqId); + contextMap.put("cancelQuantity", cancelQuantity); contextMap.put("userLogin", userLogin); contextMap.put("locale", locale); try { @@ -145,11 +147,6 @@ public class OrderEvents { request.setAttribute("_ERROR_MESSAGE_", e.getMessage()); return "error"; } - } - } catch (GenericEntityException e) { - Debug.logError(e, module); - return "error"; - } } return "success"; } else { Modified: ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderServices.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderServices.java?rev=1749113&r1=1749112&r2=1749113&view=diff ============================================================================== --- ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderServices.java (original) +++ ofbiz/branches/release15.12/applications/order/src/org/ofbiz/order/order/OrderServices.java Sun Jun 19 00:52:31 2016 @@ -2058,7 +2058,14 @@ public class OrderServices { String shipGroupSeqId = (String) context.get("shipGroupSeqId"); Map<String, String> itemReasonMap = UtilGenerics.checkMap(context.get("itemReasonMap")); Map<String, String> itemCommentMap = UtilGenerics.checkMap(context.get("itemCommentMap")); - + Map<String, String> itemQuantityMap = UtilGenerics.checkMap(context.get("itemQtyMap")); + if ((cancelQuantity == null) && UtilValidate.isNotEmpty(itemQuantityMap)) { + String key = orderItemSeqId+":"+shipGroupSeqId; + if (UtilValidate.isNotEmpty(itemQuantityMap.get(key))) { + cancelQuantity = new BigDecimal(itemQuantityMap.get(key)); + } + + } // debugging message info String itemMsgInfo = orderId + " / " + orderItemSeqId + " / " + shipGroupSeqId; @@ -2157,12 +2164,15 @@ public class OrderServices { "orderId", orderItem.getString("orderId"), "orderItemSeqId", orderItem.getString("orderItemSeqId"), "shipGroupSeqId", orderItemShipGroupAssoc.getString("shipGroupSeqId")); - try { - dispatcher.runSync("deleteOrderItemShipGroupAssoc", localCtx); - } catch (GenericServiceException e) { - Debug.logError(e, module); - return ServiceUtil.returnError(e.getMessage()); + if (availableQuantity.compareTo(thisCancelQty) == 0) { + try { + dispatcher.runSync("deleteOrderItemShipGroupAssoc", localCtx); + } catch (GenericServiceException e) { + Debug.logError(e, module); + return ServiceUtil.returnError(e.getMessage()); + } } + // create order item change record if (!"Y".equals(orderItem.getString("isPromo"))) { Modified: ofbiz/branches/release15.12/applications/order/webapp/ordermgr/order/editorderitems.ftl URL: http://svn.apache.org/viewvc/ofbiz/branches/release15.12/applications/order/webapp/ordermgr/order/editorderitems.ftl?rev=1749113&r1=1749112&r2=1749113&view=diff ============================================================================== --- ofbiz/branches/release15.12/applications/order/webapp/ordermgr/order/editorderitems.ftl (original) +++ ofbiz/branches/release15.12/applications/order/webapp/ordermgr/order/editorderitems.ftl Sun Jun 19 00:52:31 2016 @@ -257,7 +257,7 @@ under the License. <td align="center"> <input type="text" name="iqm_${shipGroupAssoc.orderItemSeqId}:${shipGroupAssoc.shipGroupSeqId}" size="6" value="${shipGroupQty?string.number}"/> <#if itemSelectable> - <input type="checkbox" name="selectedItem" value="${orderItem.orderItemSeqId}" /> + <input type="checkbox" name="selectedItem" value="${orderItem.orderItemSeqId}:${shipGroupAssoc.shipGroupSeqId}" /> </#if> </td> </#if> |
Free forum by Nabble | Edit this page |