Author: hansbak
Date: Thu Oct 12 23:47:16 2006 New Revision: 463574 URL: http://svn.apache.org/viewvc?view=rev&rev=463574 Log: in the findservices add an optional timestamp filterByDateValue for the filterByDate function Modified: incubator/ofbiz/trunk/framework/common/servicedef/services.xml incubator/ofbiz/trunk/framework/common/src/org/ofbiz/common/FindServices.java Modified: incubator/ofbiz/trunk/framework/common/servicedef/services.xml URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/common/servicedef/services.xml?view=diff&rev=463574&r1=463573&r2=463574 ============================================================================== --- incubator/ofbiz/trunk/framework/common/servicedef/services.xml (original) +++ incubator/ofbiz/trunk/framework/common/servicedef/services.xml Thu Oct 12 23:47:16 2006 @@ -215,6 +215,7 @@ <attribute name="orderBy" type="String" mode="IN" optional="true"/> <attribute name="noConditionFind" type="String" mode="IN" optional="true"><!-- find with no condition (empty entityConditionList) only done when this is Y --></attribute> <attribute name="filterByDate" type="String" mode="IN" optional="true"/> + <attribute name="filterByDateValue" type="Timestamp" mode="IN" optional="true"/> <attribute name="listIt" type="org.ofbiz.entity.util.EntityListIterator" mode="OUT" optional="true"/> <attribute name="queryString" type="String" mode="OUT" optional="true"/> <attribute name="queryStringMap" type="java.util.Map" mode="OUT" optional="true"/> @@ -228,6 +229,7 @@ <attribute name="orderBy" type="String" mode="IN" optional="true"/> <attribute name="noConditionFind" type="String" mode="IN" optional="true"><!-- find with no condition (empty entityConditionList) only done when this is Y --></attribute> <attribute name="filterByDate" type="String" mode="IN" optional="true"/> + <attribute name="filterByDateValue" type="Timestamp" mode="IN" optional="true"/> <attribute name="viewIndex" type="Integer" mode="IN" optional="true"/> <attribute name="viewSize" type="Integer" mode="IN" optional="true"/> <attribute name="list" type="List" mode="OUT" optional="true"/> @@ -242,6 +244,7 @@ <attribute name="inputFields" type="java.util.Map" mode="IN" optional="false"/> <attribute name="orderBy" type="String" mode="IN" optional="true"/> <attribute name="filterByDate" type="String" mode="IN" optional="true"/> + <attribute name="filterByDateValue" type="Timestamp" mode="IN" optional="true"/> <attribute name="item" type="GenericValue" mode="OUT" optional="true"/> <attribute name="queryString" type="String" mode="OUT" optional="true"/> <attribute name="queryStringMap" type="java.util.Map" mode="OUT" optional="true"/> Modified: incubator/ofbiz/trunk/framework/common/src/org/ofbiz/common/FindServices.java URL: http://svn.apache.org/viewvc/incubator/ofbiz/trunk/framework/common/src/org/ofbiz/common/FindServices.java?view=diff&rev=463574&r1=463573&r2=463574 ============================================================================== --- incubator/ofbiz/trunk/framework/common/src/org/ofbiz/common/FindServices.java (original) +++ incubator/ofbiz/trunk/framework/common/src/org/ofbiz/common/FindServices.java Thu Oct 12 23:47:16 2006 @@ -404,12 +404,13 @@ // try finding in inputFields Map filterByDate = (String) inputFields.get("filterByDate"); } + Timestamp filterByDateValue = (Timestamp) context.get("filterByDateValue"); LocalDispatcher dispatcher = dctx.getDispatcher(); Map prepareResult = null; try { - prepareResult = dispatcher.runSync("prepareFind", UtilMisc.toMap("entityName", entityName, "orderBy", orderBy, "inputFields", inputFields, "filterByDate", filterByDate, "userLogin", userLogin)); + prepareResult = dispatcher.runSync("prepareFind", UtilMisc.toMap("entityName", entityName, "orderBy", orderBy, "inputFields", inputFields, "filterByDate", filterByDate,"filterByDateValue", filterByDateValue, "userLogin", userLogin)); } catch (GenericServiceException gse) { return ServiceUtil.returnError("Error preparing conditions: " + gse.getMessage()); } @@ -454,6 +455,7 @@ // try finding in inputFields Map filterByDate = (String) inputFields.get("filterByDate"); } + Timestamp filterByDateValue = (Timestamp) context.get("filterByDateValue"); // parameters run thru UtilHttp.getParameterMap Map queryStringMap = new HashMap(); @@ -476,8 +478,13 @@ */ if ((tmpList.size() > 0) || ((noConditionFind != null) && (noConditionFind.equals("Y")))) { if (!UtilValidate.isEmpty(filterByDate) && "Y".equals(filterByDate)) { - EntityCondition filterByDateCondition = EntityUtil.getFilterByDateExpr(); - tmpList.add(filterByDateCondition); + if (!UtilValidate.isEmpty(filterByDateValue)) { + EntityCondition filterByDateCondition = EntityUtil.getFilterByDateExpr(); + tmpList.add(filterByDateCondition); + } else { + EntityCondition filterByDateCondition = EntityUtil.getFilterByDateExpr(filterByDateValue); + tmpList.add(filterByDateCondition); + } } } @@ -495,6 +502,7 @@ Map reducedQueryStringMap = buildReducedQueryString(inputFields, entityName, delegator); reducedQueryStringMap.put("noConditionFind", noConditionFind); reducedQueryStringMap.put("filterByDate", filterByDate); + reducedQueryStringMap.put("filterByDateValue", filterByDateValue); String queryString = UtilHttp.urlEncodeArgs(reducedQueryStringMap); results.put("queryString", queryString); results.put("queryStringMap", reducedQueryStringMap); @@ -644,7 +652,9 @@ Debug.logInfo("Problem getting list Item" + e,module); } - result.put("item",item); + if (!UtilValidate.isEmpty(item)) { + result.put("item",item); + } result.remove("listIt"); return result; } |
Free forum by Nabble | Edit this page |