diff options
Diffstat (limited to 'app/Model/ColumnModel.php')
-rw-r--r-- | app/Model/ColumnModel.php | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/app/Model/ColumnModel.php b/app/Model/ColumnModel.php index 5498ef54..535a31e5 100644 --- a/app/Model/ColumnModel.php +++ b/app/Model/ColumnModel.php @@ -121,6 +121,24 @@ class ColumnModel extends Base } /** + * Get all columns with tasks count + * + * @access public + * @param integer $project_id Project id + * @return array + */ + public function getAllWithTasksCount($project_id) + { + return $this->db->table(self::TABLE) + ->columns('id', 'title', 'position', 'task_limit', 'description', 'hide_in_dashboard', 'project_id') + ->subquery('SELECT COUNT(*) FROM '.TaskModel::TABLE.' WHERE column_id='.self::TABLE.'.id AND is_active=1', 'nb_open_tasks') + ->subquery('SELECT COUNT(*) FROM '.TaskModel::TABLE.' WHERE column_id='.self::TABLE.'.id AND is_active=0', 'nb_closed_tasks') + ->eq('project_id', $project_id) + ->asc('position') + ->findAll(); + } + + /** * Get the list of columns sorted by position [ column_id => title ] * * @access public |