Add project users overview

This commit is contained in:
Frederic Guillot
2015-08-16 22:17:45 -04:00
parent 06638ff5e9
commit 2fd177363b
21 changed files with 468 additions and 55 deletions

View File

@@ -12,6 +12,43 @@ use PDO;
*/
class TaskFinder extends Base
{
/**
* Get query for project user overview
*
* @access public
* @param array $project_ids
* @param integer $is_active
* @return \PicoDb\Table
*/
public function getProjectUserOverviewQuery(array $project_ids, $is_active)
{
if (empty($project_ids)) {
$project_ids = array(-1);
}
return $this->db
->table(Task::TABLE)
->columns(
Task::TABLE.'.id',
Task::TABLE.'.title',
Task::TABLE.'.date_due',
Task::TABLE.'.date_started',
Task::TABLE.'.project_id',
Task::TABLE.'.color_id',
Task::TABLE.'.time_spent',
Task::TABLE.'.time_estimated',
Project::TABLE.'.name AS project_name',
Board::TABLE.'.title AS column_name',
User::TABLE.'.username AS assignee_username',
User::TABLE.'.name AS assignee_name'
)
->eq(Task::TABLE.'.is_active', $is_active)
->in(Project::TABLE.'.id', $project_ids)
->join(Project::TABLE, 'id', 'project_id')
->join(Board::TABLE, 'id', 'column_id', Task::TABLE)
->join(User::TABLE, 'id', 'owner_id', Task::TABLE);
}
/**
* Get query for assigned user tasks
*