com.elasticpath.cmweb.reportservice
Class ReportCriteria

java.lang.Object
  extended by com.elasticpath.cmweb.reportservice.ReportCriteria

public final class ReportCriteria
extends java.lang.Object

This class contains all criterias used to pass to PersistenceEngine. Currently, we use HQL to specify criterias.


Field Summary
static java.lang.String INVENTORY_LOW_STOCK
          Criteria for low stock report.
static java.lang.String ORDER_SELECT_BY_CREATED_DATE
          Criteria to retrieve order by created date.
static java.lang.String ORDER_SUMMARY_BASE
          Criteria to retrieve order summary report by created date.
static java.lang.String ORDER_SUMMARY_END
          Criteria to order by created date.
static java.lang.String ORDER_TOTAL_BASE
          Criteria to retrieve order total report by created date.
static java.lang.String REGISTRATION_BASE
          Criteria base for registration report.
static java.lang.String REGISTRATION_COUNT_BASE
          Critera for counting registrations.
static java.lang.String REGISTRATION_END
          Criteria end for registration report.
static java.lang.String VISIT_COUNT_BASE
          Criteria for counting visits.
 
Method Summary
static ReportCriteria getInstance()
          Returns singleton instance of criteria object.
 java.lang.String getNewVisitsCountQuery(java.util.Date startDate, java.util.Date endDate)
          Query for calculating aggregate sum of new visits.
 java.lang.String getOrderSummaryQuery(java.util.Date startDate, java.util.Date endDate, boolean cancelled)
          Create query for order summary.
 java.lang.String getOrderTotalStatsQuery(java.util.Date startDate, java.util.Date endDate, boolean cancelled)
          Create a query for obtaining total order statistics for the given dates, returning for the time period the #orders, #items, total order value.
 java.lang.String getRegistrationCountQuery(java.util.Date startDate, java.util.Date endDate)
          Query for calculating aggregate sum of registrations.
 java.lang.String getRegistrationQuery(java.util.Date startDate, java.util.Date endDate)
          Create query for order summary.
 java.lang.String getReturnVisitsCountQuery(java.util.Date startDate, java.util.Date endDate)
          Query for calculating aggregate sum of return visits.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INVENTORY_LOW_STOCK

public static final java.lang.String INVENTORY_LOW_STOCK
Criteria for low stock report.

See Also:
Constant Field Values

ORDER_SELECT_BY_CREATED_DATE

public static final java.lang.String ORDER_SELECT_BY_CREATED_DATE
Criteria to retrieve order by created date.

See Also:
Constant Field Values

ORDER_SUMMARY_BASE

public static final java.lang.String ORDER_SUMMARY_BASE
Criteria to retrieve order summary report by created date.

See Also:
Constant Field Values

ORDER_SUMMARY_END

public static final java.lang.String ORDER_SUMMARY_END
Criteria to order by created date.

See Also:
Constant Field Values

ORDER_TOTAL_BASE

public static final java.lang.String ORDER_TOTAL_BASE
Criteria to retrieve order total report by created date.

See Also:
Constant Field Values

REGISTRATION_BASE

public static final java.lang.String REGISTRATION_BASE
Criteria base for registration report.

See Also:
Constant Field Values

REGISTRATION_COUNT_BASE

public static final java.lang.String REGISTRATION_COUNT_BASE
Critera for counting registrations.

See Also:
Constant Field Values

REGISTRATION_END

public static final java.lang.String REGISTRATION_END
Criteria end for registration report.

See Also:
Constant Field Values

VISIT_COUNT_BASE

public static final java.lang.String VISIT_COUNT_BASE
Criteria for counting visits.

See Also:
Constant Field Values
Method Detail

getInstance

public static ReportCriteria getInstance()
Returns singleton instance of criteria object. Had to make a synchornized block inside method, even though I don't anticipate that this will be used synchronously a lot.

Returns:
singleton instance of criteria object.

getNewVisitsCountQuery

public java.lang.String getNewVisitsCountQuery(java.util.Date startDate,
                                               java.util.Date endDate)
Query for calculating aggregate sum of new visits.

Parameters:
startDate - start date.
endDate - end date.
Returns:
query Query in HQL format

getOrderSummaryQuery

public java.lang.String getOrderSummaryQuery(java.util.Date startDate,
                                             java.util.Date endDate,
                                             boolean cancelled)
Create query for order summary.

Parameters:
startDate - start date.
endDate - end date.
cancelled - include cancelled.
Returns:
query

getOrderTotalStatsQuery

public java.lang.String getOrderTotalStatsQuery(java.util.Date startDate,
                                                java.util.Date endDate,
                                                boolean cancelled)
Create a query for obtaining total order statistics for the given dates, returning for the time period the #orders, #items, total order value.

Parameters:
startDate - Start of time period
endDate - End of time period
cancelled - include cancelled.
Returns:
query

getRegistrationCountQuery

public java.lang.String getRegistrationCountQuery(java.util.Date startDate,
                                                  java.util.Date endDate)
Query for calculating aggregate sum of registrations.

Parameters:
startDate - start date.
endDate - end date.
Returns:
query Query in HQL format

getRegistrationQuery

public java.lang.String getRegistrationQuery(java.util.Date startDate,
                                             java.util.Date endDate)
Create query for order summary.

Parameters:
startDate - start date.
endDate - end date.
Returns:
query

getReturnVisitsCountQuery

public java.lang.String getReturnVisitsCountQuery(java.util.Date startDate,
                                                  java.util.Date endDate)
Query for calculating aggregate sum of return visits.

Parameters:
startDate - start date.
endDate - end date.
Returns:
query Query in HQL format