svn commit: r500280 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java

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

svn commit: r500280 - /ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java

sichen
Author: sichen
Date: Fri Jan 26 08:40:56 2007
New Revision: 500280

URL: http://svn.apache.org/viewvc?view=rev&rev=500280
Log:
Fix bug with receive offline payments screen in ordermgr which was not filling in partyId of customer or the currency of payment.  This probably addresses a JIRA issue though I can't remember which one right now

Modified:
    ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java

Modified: ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java?view=diff&rev=500280&r1=500279&r2=500280
==============================================================================
--- ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java (original)
+++ ofbiz/trunk/applications/order/src/org/ofbiz/order/order/OrderServices.java Fri Jan 26 08:40:56 2007
@@ -3463,12 +3463,19 @@
                 return ServiceUtil.returnError("Failed to create Payment: Cannot get related OrderHeader from payment preference");
             }
 
-            // get the store for the order
+            // get the store for the order.  It will be used to set the currency
             GenericValue productStore = orderHeader.getRelatedOne("ProductStore");
             if (productStore == null) {
                 return ServiceUtil.returnError("Failed to create Payment: Cannot get the ProductStore for the order header");
             }
 
+            // get the partyId billed to
+            OrderReadHelper orh = new OrderReadHelper(orderHeader);
+            GenericValue billToParty = orh.getBillToParty();
+            if (billToParty == null) {
+                return ServiceUtil.returnError("Failed to create Payment: cannot find the bill to customer party");
+            }
+                
             // set the payToPartyId
             String payToPartyId = productStore.getString("payToPartyId");
             if (payToPartyId == null) {
@@ -3483,6 +3490,8 @@
             paymentParams.put("amount", orderPaymentPreference.getDouble("maxAmount"));
             paymentParams.put("statusId", "PMNT_RECEIVED");
             paymentParams.put("effectiveDate", UtilDateTime.nowTimestamp());
+            paymentParams.put("partyIdFrom", billToParty.getString("partyId"));
+            paymentParams.put("currencyUomId", productStore.getString("defaultCurrencyUomId"));
             paymentParams.put("partyIdTo", payToPartyId);
             if (paymentRefNum != null) {
                 paymentParams.put("paymentRefNum", paymentRefNum);