Open Monograph Press  3.3.0
PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder Class Reference
Inheritance diagram for PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder:
PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface APP\Services\QueryBuilders\SubmissionQueryBuilder

Public Member Functions

 appGet ($q)
 
 assignedTo ($assignedTo)
 
 filterByCategories ($categoryIds)
 
 filterByContext ($contextId)
 
 filterByDaysInactive ($daysInactive)
 
 filterByIncomplete ($isIncomplete)
 
 filterByOverdue ($isOverdue)
 
 filterByStageIds ($stageIds)
 
 filterByStatus ($statuses)
 
 getCount ()
 
 getIds ()
 
 getQuery ()
 
 limitTo ($count)
 
 offsetBy ($offset)
 
 orderBy ($column, $direction='DESC')
 
 searchPhrase ($phrase)
 

Protected Attributes

 $assignedTo = []
 
 $categoryIds = null
 
 $columns = array()
 
 $contextId = null
 
 $daysInactive = null
 
 $isIncomplete = false
 
 $isOverdue = false
 
 $limit = null
 
 $offset = 0
 
 $orderColumn = 's.date_submitted'
 
 $orderDirection = 'DESC'
 
 $searchPhrase = null
 
 $stageIds = null
 
 $statuses = null
 

Detailed Description

Definition at line 21 of file PKPSubmissionQueryBuilder.inc.php.

Member Function Documentation

◆ appGet()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::appGet (   $q)
abstract

Execute additional actions for app-specific query objects

Parameters
objectQuery object
Returns
object Query object

Reimplemented in APP\Services\QueryBuilders\SubmissionQueryBuilder.

◆ assignedTo()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::assignedTo (   $assignedTo)

Limit results to a specific user's submissions

Parameters
int | array$assignedToList of assigned user ids or -1 to get submissions with no user assigned.
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 236 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$assignedTo.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\getQuery().

◆ filterByCategories()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByCategories (   $categoryIds)

Set category filter

Parameters
int | array | null$categoryIds
Returns
\OMP\Services\QueryBuilders\SubmissionListQueryBuilder

Definition at line 154 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$categoryIds.

◆ filterByContext()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByContext (   $contextId)

Set context submissions filter

Parameters
int | string$contextId
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 114 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$contextId.

◆ filterByDaysInactive()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByDaysInactive (   $daysInactive)

Set inactive submissions filter

Parameters
int$daysInactive
Returns
\OJS\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 223 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$daysInactive.

◆ filterByIncomplete()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByIncomplete (   $isIncomplete)

Set incomplete submissions filter

Parameters
boolean$isIncomplete
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 199 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$isIncomplete.

◆ filterByOverdue()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByOverdue (   $isOverdue)

Set overdue submissions filter

Parameters
boolean$isOverdue
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 211 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$isOverdue.

◆ filterByStageIds()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByStageIds (   $stageIds)

Set stage filter

Parameters
int | array$stageIds
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 184 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$stageIds.

◆ filterByStatus()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::filterByStatus (   $statuses)

Set statuses filter

Parameters
int | array$statuses
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 169 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$statuses.

◆ getCount()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::getCount ( )

Get a count of the number of rows that match the select conditions configured in this query builder.

Returns
int

Implements PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface.

Definition at line 280 of file PKPSubmissionQueryBuilder.inc.php.

◆ getIds()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::getIds ( )

Get a list of ids that match the select conditions configured in this query builder.

Returns
array

Implements PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface.

Definition at line 291 of file PKPSubmissionQueryBuilder.inc.php.

◆ getQuery()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::getQuery ( )

Get a query builder with the applied select, where and join clauses based on builder's configuration

This returns an instance of Laravel's query builder.

Call the get method on a query builder to return an array of matching rows.

$qb = new \PKP\Services\QueryBuilders\PublicationQueryBuilder();
$result = $qb
->filterByContextIds(1)
->getQuery()
->get();

Or use the query builder to retrieve objects from a DAO. This example retrieves the first 20 matching Publications.

$qo = $qb
->filterByContextIds(1)
->getQuery();
$result = DAORegistry::getDAO('PublicationDAO')->retrieveRange(
$qo->toSql(),
$qo->getBindings(),
new DBResultRange(20, null, 0);
);
$queryResults = new DAOResultFactory($result, $publicationDao, '_fromRow');
$iteratorOfObjects = $queryResults->toIterator();

Laravel's other query builder methods, such as first and pluck, can also be used.

$qb = new \PKP\Services\QueryBuilders\PublicationQueryBuilder();
$result = $qb
->filterByContextIds(1)
->getQuery()
->first();

See: https://laravel.com/docs/5.5/queries

Returns
Illuminate\Database\Query\Builder

Implements PKP\Services\QueryBuilders\Interfaces\EntityQueryBuilderInterface.

Definition at line 302 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$assignedTo, PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\assignedTo(), HookRegistry\call(), Core\getCurrentDate(), AppLocale\getLocale(), and PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\searchPhrase().

◆ limitTo()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::limitTo (   $count)

Set query limit

Parameters
int$count
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 260 of file PKPSubmissionQueryBuilder.inc.php.

◆ offsetBy()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::offsetBy (   $offset)

Set how many results to skip

Parameters
int$offset
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 272 of file PKPSubmissionQueryBuilder.inc.php.

References PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\$offset.

◆ orderBy()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::orderBy (   $column,
  $direction = 'DESC' 
)

Set result order column and direction

Parameters
string$column
string$direction
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Reimplemented in APP\Services\QueryBuilders\SubmissionQueryBuilder.

Definition at line 127 of file PKPSubmissionQueryBuilder.inc.php.

◆ searchPhrase()

PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::searchPhrase (   $phrase)

Set query search phrase

Parameters
string$phrase
Returns
\APP\Services\QueryBuilders\SubmissionQueryBuilder

Definition at line 248 of file PKPSubmissionQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\getQuery().

Field Documentation

◆ $assignedTo

int array PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$assignedTo = []
protected

◆ $categoryIds

int string null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$categoryIds = null
protected

◆ $columns

array PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$columns = array()
protected

list of columns for query

Definition at line 39 of file PKPSubmissionQueryBuilder.inc.php.

◆ $contextId

int null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$contextId = null
protected

◆ $daysInactive

int null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$daysInactive = null
protected

whether to return only submissions that have not been modified for last X days

Definition at line 93 of file PKPSubmissionQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\filterByDaysInactive().

◆ $isIncomplete

bool PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$isIncomplete = false
protected

whether to return only incomplete results

Definition at line 81 of file PKPSubmissionQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\filterByIncomplete().

◆ $isOverdue

bool null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$isOverdue = false
protected

whether to return only submissions with overdue review assignments

Definition at line 87 of file PKPSubmissionQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\filterByOverdue().

◆ $limit

int null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$limit = null
protected

whether to limit the number of results returned

Definition at line 99 of file PKPSubmissionQueryBuilder.inc.php.

◆ $offset

int PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$offset = 0
protected

whether to offset the number of results returned. Use to return a second page of results.

Definition at line 105 of file PKPSubmissionQueryBuilder.inc.php.

Referenced by PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder\offsetBy().

◆ $orderColumn

string PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$orderColumn = 's.date_submitted'
protected

order by column

Definition at line 45 of file PKPSubmissionQueryBuilder.inc.php.

◆ $orderDirection

string PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$orderDirection = 'DESC'
protected

order by direction

Definition at line 51 of file PKPSubmissionQueryBuilder.inc.php.

◆ $searchPhrase

string null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$searchPhrase = null
protected

search phrase

Definition at line 75 of file PKPSubmissionQueryBuilder.inc.php.

◆ $stageIds

array null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$stageIds = null
protected

◆ $statuses

array null PKP\Services\QueryBuilders\PKPSubmissionQueryBuilder::$statuses = null
protected

The documentation for this class was generated from the following file:
DBResultRange
Container class for range information when retrieving a result set.
Definition: DBResultRange.inc.php:17
DAOResultFactory
Wrapper around ADORecordSet providing "factory" features for generating objects from DAOs.
Definition: DAOResultFactory.inc.php:21
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57