Skip to content

TopProducts ​

Type
Class
Namespace
craft\commerce\stats
Inherits
craft\commerce\stats\TopProducts » craft\commerce\base\Stat
Implements
craft\commerce\base\HasStoreInterface, craft\commerce\base\StatInterface
Uses traits
craft\commerce\base\StatTrait, craft\commerce\base\StoreTrait
Since
3.0

Top Products Stat

View source

Public Properties ​

PropertyDescription
cacheboolean
cacheDurationinteger – How long to cache the data, in seconds.
dateRangestring, null
limitinteger – Number of products to show.
revenueOptionsstring[]
storeIdinteger, null – Store ID
typestring – Type either 'qty' or 'revenue'.
weekStartDayinteger

limit ​

Type
integer
Default value
5

Number of products to show.

View source

revenueOptions ​

Type
string[]
Default value
[]
Since
3.4

View source

type ​

Type
string
Default value
self::TYPE_QTY

Type either 'qty' or 'revenue'.

View source

Protected Properties ​

PropertyDescription
_handlestring

_handle ​

Type
string
Default value
'topProducts'

View source

Public Methods ​

MethodDescription
__construct()Stat constructor.
get()
getChartQueryOptionsByInterval()
getData()
getDateRangeInterval()
getDateRangeWording()
getEndDate()
getHandle()
getOrderStatuses()
getStartDate()
getStore()
prepareData()
setEndDate()
setOrderStatuses()Set order statuses to limit stat query. Accepts array of OrderStatus models, handle strings or uid strings.
setStartDate()

__construct() ​

Stat constructor.

View source

Arguments ​

Throws ​

getData() ​

View source

Returns ​

mixed

getHandle() ​

View source

prepareData() ​

View source

Arguments ​

  • $data (mixed)

Returns ​

mixed

Protected Methods ​

MethodDescription
_createChartQuery()
_createStatQuery()Generate base stat query
createAdjustmentsSubQuery()Create the adjustments sub query for use with revenue calculation.
getAdjustmentsSelect()Create select statement for a stat type custom based on the options chosen.
getGroupBy()Return group by statement based on state type.
getOrderBy()Return the order by clause for the data query.

createAdjustmentsSubQuery() ​

Since
3.4

Create the adjustments sub query for use with revenue calculation.

View source

getAdjustmentsSelect() ​

Since
3.4

Create select statement for a stat type custom based on the options chosen.

View source

getGroupBy() ​

Since
3.4

Return group by statement based on state type.

View source

getOrderBy() ​

Since
3.4

Return the order by clause for the data query.

View source

Constants ​

ConstantDescription
REVENUE_OPTION_DISCOUNT
REVENUE_OPTION_SHIPPING
REVENUE_OPTION_TAX
REVENUE_OPTION_TAX_INCLUDED
TYPE_QTYStat returned based on quantity.
TYPE_REVENUEStat returned based on revenue.