diff --git a/module/task/control.php b/module/task/control.php index 25e0cfbd5e..2e68b05212 100755 --- a/module/task/control.php +++ b/module/task/control.php @@ -418,10 +418,7 @@ class task extends control */ public function confirmStoryChange(int $taskID) { - $task = $this->task->getByID($taskID); - $this->dao->update(TABLE_TASK)->set('storyVersion')->eq($task->latestStoryVersion)->where('id')->eq($taskID)->exec(); - $this->loadModel('action')->create('task', $taskID, 'confirmed', '', $task->latestStoryVersion); - + $this->task->confirmStoryChange($taskID); $this->executeHooks($taskID); return $this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'load' => true)); diff --git a/module/task/model.php b/module/task/model.php index bc7fa248e5..3b3b7a6e09 100755 --- a/module/task/model.php +++ b/module/task/model.php @@ -3622,6 +3622,25 @@ class taskModel extends model return array($childTasks, $nonStoryChildTasks); } + /** + * 确认需求变更。 + * Confirm story change. + * + * @param int $taskID + * @access public + * @return bool + */ + public function confirmStoryChange(int $taskID): bool + { + $task = $this->getByID($taskID); + $this->dao->update(TABLE_TASK)->set('storyVersion')->eq($task->latestStoryVersion)->where('id')->eq($taskID)->exec(); + $this->dao->update(TABLE_TASKTEAM)->set('storyVersion')->eq($task->latestStoryVersion)->where('task')->eq($taskID)->andWhere('account')->eq($this->app->user->account)->exec(); + if(dao::isError()) return false; + + $this->loadModel('action')->create('task', $taskID, 'confirmed', '', $task->latestStoryVersion); + return !dao::isError(); + } + /** * 获取多人任务当前登录用户的需求版本。 * Get team story version by current login user.