* Optimize project drop-down speed.

This commit is contained in:
liumengyi
2023-08-11 16:48:26 +08:00
parent 2e51aef038
commit e341e42e00
+4 -1
View File
@@ -137,11 +137,14 @@ class project extends control
->orderBy('order_asc,id_desc')
->fetchAll('id');
$parents = array_column($projects, 'parent');
$parents = $this->dao->select('id,path')->from(TABLE_PROJECT)->where('id')->in($parents)->fetchAll('id');
$programs = $this->program->getPairs(true);
foreach($projects as $project)
{
$project->parent = $this->program->getTopByID($project->parent);
$project->parent = isset($parents[$project->id]) ? $this->program->getTopByPath($parents[$project->id]) : 0;
$project->parent = isset($programs[$project->parent]) ? $project->parent : $project->id;
$orderedProjects[$project->parent][] = $project;
unset($projects[$project->id]);