From 61d8ccda45a309bfaf102d1b58949dc043fbad93 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Thu, 16 Jun 2022 15:37:59 +0800 Subject: [PATCH] * Fix bug #23855. --- module/program/model.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/module/program/model.php b/module/program/model.php index 6748fbe90b..79f515a768 100644 --- a/module/program/model.php +++ b/module/program/model.php @@ -1326,7 +1326,7 @@ class programModel extends model { $parent = $this->dao->select('id,parent,path,grade')->from(TABLE_PROGRAM)->where('id')->eq($parentID)->fetch(); - $childNodes = $this->dao->select('id,parent,path,grade')->from(TABLE_PROGRAM) + $childNodes = $this->dao->select('id,parent,path,grade,type')->from(TABLE_PROGRAM) ->where('path')->like("{$oldPath}%") ->andWhere('deleted')->eq(0) ->orderBy('grade') @@ -1342,6 +1342,10 @@ class programModel extends model $path = rtrim($parent->path, ',') . $path; $grade = $parent->grade + $grade; } + + /* Only program sets update grade. */ + if($childNode->type != 'program') $grade = $childNode->grade; + $this->dao->update(TABLE_PROGRAM)->set('path')->eq($path)->set('grade')->eq($grade)->where('id')->eq($childNode->id)->exec(); }