svn commit: r566458 - /ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java

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

svn commit: r566458 - /ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java

jonesde
Author: jonesde
Date: Wed Aug 15 18:05:20 2007
New Revision: 566458

URL: http://svn.apache.org/viewvc?view=rev&rev=566458
Log:
Added little utility method for getting refurb or original productIds, useful for doing inventory queries by serial number and productId when it may change after refurbishment but keep the same serial number

Modified:
    ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java

Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java?view=diff&rev=566458&r1=566457&r2=566458
==============================================================================
--- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java (original)
+++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java Wed Aug 15 18:05:20 2007
@@ -44,6 +44,7 @@
 import org.ofbiz.service.LocalDispatcher;
 import org.ofbiz.service.ModelService;
 import javolution.util.FastList;
+import javolution.util.FastSet;
 
 /**
  * Product Worker class to reduce code in JSPs.
@@ -820,5 +821,28 @@
         }
         return false;
     }
-}
+    
+    public static Set getRefurbishedProductIdSet(String productId, GenericDelegator delegator) throws GenericEntityException {
+        Set productIdSet = FastSet.newInstance();
 
+        // find associated refurb items, we want serial number for main item or any refurb items too
+        List refubProductAssocs = EntityUtil.filterByDate(delegator.findByAnd("ProductAssoc",
+                UtilMisc.toMap("productId", productId, "productAssocTypeId", "PRODUCT_REFURB")), true);
+        Iterator refubProductAssocIter = refubProductAssocs.iterator();
+        while (refubProductAssocIter.hasNext()) {
+            GenericValue refubProductAssoc = (GenericValue) refubProductAssocIter.next();
+            productIdSet.add(refubProductAssoc.get("productIdTo"));
+        }
+        
+        // see if this is a refurb productId to, and find product(s) it is a refurb of
+        List refubProductToAssocs = EntityUtil.filterByDate(delegator.findByAnd("ProductAssoc",
+                UtilMisc.toMap("productIdTo", productId, "productAssocTypeId", "PRODUCT_REFURB")), true);
+        Iterator refubProductToAssocIter = refubProductToAssocs.iterator();
+        while (refubProductToAssocIter.hasNext()) {
+            GenericValue refubProductToAssoc = (GenericValue) refubProductToAssocIter.next();
+            productIdSet.add(refubProductToAssoc.get("productId"));
+        }
+        
+        return productIdSet;
+    }
+}