[ 
https://issues.apache.org/jira/browse/OFBIZ-2115?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12666593#action_12666593
 ] 

Jacques Le Roux commented on OFBIZ-2115:
----------------------------------------

Stephen,

Good catch on "if (UtilValidate.isNotEmpty(orderAttributesList))" from r727640 
I did not spot

But could you please preferably use for loop like
{code}
        Map<String, Object> attributeNames = FastMap.newInstance();
        Set<String> keys = itemAttributesMap.keySet();
        for (String key : keys) {
            String[] attributeInfo = key.split(":");
            attributeNames.put(attributeInfo[0],attributeInfo[0]);
        }
{code}
instead of 
{code}
        Map attributeNames =FastMap.newInstance();
        Iterator ia = itemAttributesMap.keySet().iterator();
        while (ia.hasNext()) {
            String key = (String) ia.next();
            String[] attributeInfo = key.split(":");
            attributeNames.put(attributeInfo[0],attributeInfo[0]);
        }
{code}
Don't worry about 1st line indentation above, seems that Jira is not handling 
that well...

BTW are your sure it's attributeInfo[0] in both cases ? 


> OrderServices.updateApprovedOrderItems should update OrderItemAttributes
> ------------------------------------------------------------------------
>
>                 Key: OFBIZ-2115
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-2115
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: order
>    Affects Versions: SVN trunk
>         Environment: Windows XP
>            Reporter: Stephen Rufle
>            Assignee: Jacques Le Roux
>             Fix For: SVN trunk
>
>         Attachments: 2009-01-14_001_shoppingcart.patch, 
> 2009-01-14_001_shoppingcart.patch
>
>
> I wanted updateApprovedOrderItems to be able to update any 
> OrderItemAttributes there may be. added a new map (itemAttributesMap) to 
> /applications/order/servicedef/services.xml#updateOrderItems the key value of 
> the map should be in the form of
> attibuteName+ ":" + orderItemSeqId
> At the top of
> OrderServices.updateApprovedOrderItems(DispatchContext, Map) I create a new 
> map with only the attribute names, later in the same method we repopulate the 
> cartItem's OrderItemAttributes with any non-empty values. In 
> saveUpdatedCartToOrder we call my modified 
> ShoppingCart.makeAllOrderItemAttributes(String, int) I added the ability to 
> return just empty , just filled or both empty and filled. 
> For previously filled attributes that are now empty I remove them from the 
> database. for either new or chnaged ones they are just added to the toStore 
> that already existed 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to