Author: jacopoc
Date: Mon Sep 10 07:32:49 2007
New Revision: 574259

URL: http://svn.apache.org/viewvc?rev=574259&view=rev
Log:
Implemented ability to change the shipToParty in the cart; I have only 
implemented the ui for this in the quick checkout screen.

Modified:
    ofbiz/trunk/applications/order/config/OrderUiLabels.properties
    ofbiz/trunk/applications/order/data/OrderSecurityData.xml
    
ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java
    
ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/actions/entry/checkoutoptions.bsh
    ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/controller.xml
    ofbiz/trunk/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl

Modified: ofbiz/trunk/applications/order/config/OrderUiLabels.properties
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/config/OrderUiLabels.properties?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/config/OrderUiLabels.properties (original)
+++ ofbiz/trunk/applications/order/config/OrderUiLabels.properties Mon Sep 10 
07:32:49 2007
@@ -844,6 +844,7 @@
 OrderShippingInformation=Shipping Information
 OrderShipRequest=Ship Request
 OrderShipToAnotherParty=Ship to Another Party
+OrderShipToParty=Ship to Party
 OrderShipmentInformation=Shipment Information
 OrderShortfalled=Shortfalled
 OrderShowAllNotes=Show All Notes

Modified: ofbiz/trunk/applications/order/data/OrderSecurityData.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/data/OrderSecurityData.xml?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/data/OrderSecurityData.xml (original)
+++ ofbiz/trunk/applications/order/data/OrderSecurityData.xml Mon Sep 10 
07:32:49 2007
@@ -51,6 +51,7 @@
     <SecurityGroup description="Order entry with purchasing permissions" 
groupId="ORDERPURCH"/>
     <SecurityGroup description="Order entry permission for all stores.  No 
special role is needed." groupId="ORDERENTRY_ALL"/>
     
+    <SecurityGroupPermission groupId="ORDERADMIN_LTD" 
permissionId="ORDERMGR_VIEW"/>
     <SecurityGroupPermission groupId="ORDERADMIN_LTD" 
permissionId="ORDERMGR_ROLE_VIEW"/>
     <SecurityGroupPermission groupId="ORDERADMIN_LTD" 
permissionId="ORDERMGR_ROLE_CREATE"/>
     <SecurityGroupPermission groupId="ORDERADMIN_LTD" 
permissionId="ORDERMGR_ROLE_UPDATE"/>

Modified: 
ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- 
ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java
 (original)
+++ 
ofbiz/trunk/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java
 Mon Sep 10 07:32:49 2007
@@ -257,6 +257,13 @@
         return "success";
     }
 
+    public static String setCartShipToCustomerParty(HttpServletRequest 
request, HttpServletResponse response) {
+        ShoppingCart cart = (ShoppingCart) 
request.getSession().getAttribute("shoppingCart");
+        String shipToCustomerPartyId = 
request.getParameter("shipToCustomerPartyId");
+        cart.setShipToCustomerPartyId(shipToCustomerPartyId);
+        return "success";
+    }
+
     public static String checkPaymentMethods(HttpServletRequest request, 
HttpServletResponse response) {
         ShoppingCart cart = (ShoppingCart) 
request.getSession().getAttribute("shoppingCart");
         LocalDispatcher dispatcher = (LocalDispatcher) 
request.getAttribute("dispatcher");

Modified: 
ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/actions/entry/checkoutoptions.bsh
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/actions/entry/checkoutoptions.bsh?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- 
ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/actions/entry/checkoutoptions.bsh
 (original)
+++ 
ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/actions/entry/checkoutoptions.bsh
 Mon Sep 10 07:32:49 2007
@@ -50,7 +50,8 @@
 context.put("userLogin", userLogin);
 context.put("productStoreId", productStore.get("productStoreId"));
 context.put("productStore", productStore);
-context.put("shippingContactMechList", ContactHelper.getContactMech(party, 
"SHIPPING_LOCATION", "POSTAL_ADDRESS", false));
+shipToParty = delegator.findByPrimaryKeyCache("Party", 
UtilMisc.toMap("partyId", shoppingCart.getShipToCustomerPartyId()));
+context.put("shippingContactMechList", 
ContactHelper.getContactMech(shipToParty, "SHIPPING_LOCATION", 
"POSTAL_ADDRESS", false));
 context.put("emailList",  ContactHelper.getContactMechByType(party, 
"EMAIL_ADDRESS", false));
 
 if (shoppingCart.getShipmentMethodTypeId() != null && 
shoppingCart.getCarrierPartyId() != null) {
@@ -66,3 +67,33 @@
 if (shoppingCart.selectedPayments() == 0 && profiledefs != null && 
profiledefs.get("defaultPayMeth") != null) {
     shoppingCart.addPayment(profiledefs.get("defaultPayMeth"));
 }
+
+// create a list containing all the parties associated to the current cart, 
useful to change
+// the ship to party id
+List cartParties = UtilMisc.toList(shoppingCart.getShipToCustomerPartyId());
+if (!cartParties.contains(partyId)) {
+    cartParties.add(partyId);
+}
+if (!cartParties.contains(shoppingCart.getOrderPartyId())) {
+    cartParties.add(shoppingCart.getOrderPartyId());
+}
+if (!cartParties.contains(shoppingCart.getPlacingCustomerPartyId())) {
+    cartParties.add(shoppingCart.getPlacingCustomerPartyId());
+}
+if (!cartParties.contains(shoppingCart.getBillToCustomerPartyId())) {
+    cartParties.add(shoppingCart.getBillToCustomerPartyId());
+}
+if (!cartParties.contains(shoppingCart.getEndUserCustomerPartyId())) {
+    cartParties.add(shoppingCart.getEndUserCustomerPartyId());
+}
+if (!cartParties.contains(shoppingCart.getSupplierAgentPartyId())) {
+    cartParties.add(shoppingCart.getSupplierAgentPartyId());
+}
+List salesReprs = 
(List)shoppingCart.getAdditionalPartyRoleMap().get("SALES_REP");
+for (int i = 0; i < salesReprs.size(); i++) {
+    String salesRep = (String)salesReprs.get(i);
+    if (!cartParties.contains(salesRep)) {
+        cartParties.add(salesRep);
+    }
+}
+context.put("cartParties", cartParties);

Modified: ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/controller.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/controller.xml?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/controller.xml 
(original)
+++ ofbiz/trunk/applications/order/webapp/ordermgr/WEB-INF/controller.xml Mon 
Sep 10 07:32:49 2007
@@ -700,6 +700,12 @@
         <response name="success" type="view" value="checkoutshippingaddress"/>
         <response name="error" type="view" value="showcart"/>
     </request-map>
+    <request-map uri="cartUpdateShipToCustomerParty">
+        <security https="true" auth="true"/>
+        <event type="java" path="org.ofbiz.order.shoppingcart.CheckOutEvents" 
invoke="setCartShipToCustomerParty"/>
+        <response name="success" type="view" value="quickcheckout"/>
+        <response name="error" type="view" value="showcart"/>
+    </request-map>
     <request-map uri="checkout">
         <security https="true" auth="true"/>
         <event type="java" path="org.ofbiz.order.shoppingcart.CheckOutEvents" 
invoke="setQuickCheckOutOptions"/>
@@ -1125,6 +1131,12 @@
     <request-map uri="approveRequirements">
         <security https="true" auth="true"/>
         <event type="service-multi" invoke="approveRequirement"/>
+        <response name="success" type="view" value="ApproveRequirements"/>
+        <response name="error" type="view" value="ApproveRequirements"/>
+    </request-map>
+    <request-map uri="createTransfersFromRequirements">
+        <security https="true" auth="true"/>
+        <event type="service-multi" invoke="createTransferFromRequirement"/>
         <response name="success" type="view" value="ApproveRequirements"/>
         <response name="error" type="view" value="ApproveRequirements"/>
     </request-map>

Modified: 
ofbiz/trunk/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl?rev=574259&r1=574258&r2=574259&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl 
(original)
+++ ofbiz/trunk/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl 
Mon Sep 10 07:32:49 2007
@@ -63,6 +63,10 @@
         // selected shipping address
         
form.action="<@ofbizUrl>updateCheckoutOptions/quickcheckout</@ofbizUrl>";
         form.submit();
+    } else if (mode == "SC") {
+        // selected ship to party
+        form.action="<@ofbizUrl>cartUpdateShipToCustomerParty</@ofbizUrl>";
+        form.submit();
     }
 }
 
@@ -86,6 +90,16 @@
             </div>
             <div class="screenlet-body" style="height: 100%;">
                 <table width="100%" border="0" cellpadding="1" cellspacing="0">
+                  <tr>
+                    <td colspan="2">
+                      <span 
class="tabletext">${uiLabelMap.OrderShipToParty}:</span>
+                      <select name="shipToCustomerPartyId" 
onChange="javascript:submitForm(document.checkoutInfoForm, 'SC', null);">
+                          <#list cartParties as cartParty>
+                          <option value="${cartParty}">${cartParty}</option>
+                          </#list>
+                      </select>
+                    </td>
+                  </tr>
                   <tr>
                     <td colspan="2">
                       <span class="tabletext">${uiLabelMap.CommonAdd}:</span>


Reply via email to