Scott Gray wrote:
Why is this in common instead of product?

You are very curious :o)

Because I quickly followed the path already opened by getAssociatedStateList.

Tomorrow I will commit the related service and js script in Product and will 
then move it to Product too.
I committed as is for now because I had bigger fish to fry this evening but 
needed this in trunk already and it was convenient to
temporary put it there .

I'm also willing to bet that a method already exists that does this.

I'd more than happy to use it if it already exists, just show me the way...

Jacques


Regards
Scott

HotWax Media
http://www.hotwaxmedia.com

On 2/07/2010, at 2:05 AM, jler...@apache.org wrote:

Author: jleroux
Date: Thu Jul  1 14:05:21 2010
New Revision: 959673

URL: http://svn.apache.org/viewvc?rev=959673&view=rev
Log:
Adds a getAssociatedProductsList method. I will certainly add the companions 
service and request later in the Product
application.
I have also the vague desire to generalize this more, as I have been able to 
quickly use it in a widget form following the
Freemarker way already used.

Modified:
   ofbiz/trunk/framework/common/src/org/ofbiz/common/CommonWorkers.java

Modified: ofbiz/trunk/framework/common/src/org/ofbiz/common/CommonWorkers.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/framework/common/src/org/ofbiz/common/CommonWorkers.java?rev=959673&r1=959672&r2=959673&view=diff
============================================================================== 
---
ofbiz/trunk/framework/common/src/org/ofbiz/common/CommonWorkers.java (original) 
+++
ofbiz/trunk/framework/common/src/org/ofbiz/common/CommonWorkers.java Thu Jul  1 
14:05:21 2010 @@ -33,6 +33,7 @@ import
org.ofbiz.entity.GenericValue;
import org.ofbiz.entity.condition.EntityCondition;
import org.ofbiz.entity.condition.EntityExpr;
import org.ofbiz.entity.condition.EntityOperator;
+import org.ofbiz.entity.util.EntityUtil;

/**
 * Common Workers
@@ -135,6 +136,35 @@ public class CommonWorkers {
        return geoList;
    }

+    public static List<GenericValue> getAssociatedProductsList(Delegator 
delegator, String productCategoryId) {
+        return getAssociatedProductsList(delegator, productCategoryId, null);
+    }
+
+    /**
+     * Returns a list of active related products for a product category
+     */
+    public static List<GenericValue> getAssociatedProductsList(Delegator 
delegator, String productCategoryId, String
listOrderBy) { +        List<GenericValue> products = FastList.newInstance();
+        if (UtilValidate.isNotEmpty(productCategoryId)) {
+            EntityCondition productsFindCond = EntityCondition.makeCondition(
+                    EntityCondition.makeCondition("productCategoryId", 
productCategoryId));
+
+            if (UtilValidate.isEmpty(listOrderBy)) {
+                listOrderBy = "sequenceNum";
+            }
+            List<String> sortList = UtilMisc.toList(listOrderBy);
+
+            try {
+                products = delegator.findList("ProductCategoryMember", 
productsFindCond, null, sortList, null, true);
+                products = EntityUtil.filterByDate(products);
+            } catch (GenericEntityException e) {
+                Debug.logError(e, "Cannot lookup ProductCategoryMember", 
module);
+            }
+        }
+
+        return products;
+    }
+
    /**
     * A generic method to be used on Type enities, e.g. ProductType.  Recurse 
to the root level in the type hierarchy
     * and checks if the specified type childType has parentType as its parent 
somewhere in the hierarchy.


Reply via email to