* Performance for project and execution.

This commit is contained in:
zhujinyong
2023-06-12 09:39:26 +08:00
parent 1a1b3bbb07
commit aeb17903d2
6 changed files with 9 additions and 35 deletions
-11
View File
@@ -1448,21 +1448,11 @@ class programModel extends model
{
if(defined('TUTORIAL')) return $this->loadModel('tutorial')->getProjectStats($browseType);
$this->refreshStats(); // Refresh stats fields of projects.
$projects = $this->getProjectList($programID, $browseType, $queryID, $orderBy, $pager, $programTitle, $involved, $queryAll);
if(empty($projects)) return array();
$leftTasks = ($this->cookie->projectType and $this->cookie->projectType == 'bycard') ? $this->loadModel('project')->getProjectLeftTasks(array_keys($projects)) : array();
/* Get the members of project teams. */
$teamMembers = $this->dao->select('t1.root,t1.account')->from(TABLE_TEAM)->alias('t1')
->leftJoin(TABLE_USER)->alias('t2')->on('t1.account=t2.account')
->where('t1.root')->in(array_keys($projects))
->andWhere('t1.type')->eq('project')
->andWhere('t2.deleted')->eq(0)
->fetchGroup('root', 'account');
/* Process projects. */
foreach($projects as $projectID => $project)
{
@@ -1475,7 +1465,6 @@ class programModel extends model
if($delay > 0) $project->delay = $delay;
}
$project->teamMembers = isset($teamMembers[$projectID]) ? array_keys($teamMembers[$projectID]) : array();
$project->leftTasks = isset($leftTasks[$projectID]) ? $leftTasks[$projectID]->tasks : '—';
/* Convert predefined HTML entities to characters. */