* Fix bug #36300.
This commit is contained in:
@@ -1389,7 +1389,35 @@ class programModel extends model
|
||||
->exec();
|
||||
}
|
||||
|
||||
/* 5. Update projectStatsTime in config. */
|
||||
/* 5. Update programStatsTime. */
|
||||
$projectList = $this->dao->select('id,progress,path')->from(TABLE_PROJECT)
|
||||
->where('type')->eq('project')
|
||||
->andWhere('parent')->ne(0)
|
||||
->fetchAll('id');
|
||||
$programProgress = array();
|
||||
foreach($projectList as $projectID => $project)
|
||||
{
|
||||
$path = explode(',', trim($project->path, ','));
|
||||
|
||||
foreach($path as $programID)
|
||||
{
|
||||
if($programID == $projectID) continue;
|
||||
$programProgress[$programID][] = $project->progress;
|
||||
}
|
||||
}
|
||||
|
||||
foreach($programProgress as $programID => $progress)
|
||||
{
|
||||
$count = count($progress);
|
||||
$sum = array_sum($progress);
|
||||
$average = round($sum / $count, 2);
|
||||
$this->dao->update(TABLE_PROJECT)
|
||||
->set('progress')->eq($average)
|
||||
->where('id')->eq($programID)
|
||||
->exec();
|
||||
}
|
||||
|
||||
/* 6. Update projectStatsTime in config. */
|
||||
$this->loadModel('setting')->setItem('system.common.global.projectStatsTime', $now);
|
||||
$this->app->config->global->projectStatsTime = $now;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user