From c09b24adbd165360933c1efc0a49215212a983ba Mon Sep 17 00:00:00 2001 From: mayue Date: Tue, 22 Mar 2022 13:50:19 +0800 Subject: [PATCH] * Fix bug #20098. --- module/projectrelease/model.php | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/module/projectrelease/model.php b/module/projectrelease/model.php index 63cc678266..ea37a2d29a 100644 --- a/module/projectrelease/model.php +++ b/module/projectrelease/model.php @@ -211,6 +211,28 @@ class projectreleaseModel extends model $this->file->saveUpload('release', $releaseID); $this->loadModel('score')->create('release', 'create', $releaseID); + /* Reset story stagedBy field for auto compute stage. */ + if($release->stories) + { + $this->loadModel('story'); + $this->loadModel('action'); + + $storyIDList = explode(',', $release->stories); + $product = $this->loadModel('product')->getById($release->product); + foreach($storyIDList as $storyID) + { + if($storyID) + { + $this->dao->update(TABLE_STORY)->set('stagedBy')->eq('')->where('id')->eq($storyID)->exec(); + if($product and $product->type != 'normal') $this->dao->update(TABLE_STORYSTAGE)->set('stagedBy')->eq('')->where('story')->eq($storyID)->andWhere('branch')->eq($release->branch)->exec(); + + $this->story->setStage($storyID); + + $this->action->create('story', $storyID, 'linked2release', '', $releaseID); + } + } + } + return $releaseID; } @@ -333,13 +355,13 @@ class projectreleaseModel extends model } /** - * Judge btn is clickable or not. - * - * @param int $release - * @param string $action + * Judge btn is clickable or not. + * + * @param int $release + * @param string $action * @static * @access public - * @return bool + * @return bool */ public static function isClickable($release, $action) {