diff --git a/module/task/control.php b/module/task/control.php index f1b1b9e646..705975779b 100755 --- a/module/task/control.php +++ b/module/task/control.php @@ -1338,7 +1338,7 @@ class task extends control { $teams = array_keys($task->team); - $task->nextBy = $this->task->getNextUser($teams, $this->app->user->account); + $task->nextBy = $this->task->getAssignedTo4Multi($members, $task); $task->myConsumed = isset($task->team[$this->app->user->account]) ? $task->team[$this->app->user->account]->consumed : 0; $lastAccount = end($teams); diff --git a/module/task/model.php b/module/task/model.php index bd8296a23e..a54041cb48 100755 --- a/module/task/model.php +++ b/module/task/model.php @@ -1647,6 +1647,7 @@ class taskModel extends model $data = new stdclass(); $data->consumed = $this->post->consumed; $data->left = $this->post->left; + $data->status = 'doing'; $this->dao->update(TABLE_TASKTEAM)->data($data) ->where('task')->eq($taskID) @@ -1919,7 +1920,10 @@ class taskModel extends model if(!empty($oldTask->team)) { - $this->dao->update(TABLE_TASKTEAM)->set('left')->eq(0)->set('consumed')->eq($task->consumed) + $this->dao->update(TABLE_TASKTEAM) + ->set('left')->eq(0) + ->set('consumed')->eq($task->consumed) + ->set('status')->eq('done') ->where('task')->eq((int)$taskID) ->andWhere('account')->eq($this->app->user->account)->exec(); diff --git a/module/task/view/view.html.php b/module/task/view/view.html.php index 738022e41e..91ff4ec6b6 100644 --- a/module/task/view/view.html.php +++ b/module/task/view/view.html.php @@ -350,6 +350,7 @@ task->estimate?> task->consumed?> task->left?> + statusAB;?> team as $member):?> @@ -358,6 +359,7 @@ estimate?> consumed?> left?> + task->statusList, $member->status);?> diff --git a/module/tree/model.php b/module/tree/model.php index 72b121fbaf..8c8a2582ec 100644 --- a/module/tree/model.php +++ b/module/tree/model.php @@ -1452,7 +1452,7 @@ class treeModel extends model $module = $this->getById((int)$moduleID); if(empty($module)) return array(); - return $this->dao->select('id')->from(TABLE_MODULE)->where('path')->like($module->path . '%')->andWhere('deleted')->eq(0)->fetchPairs(); + return $this->dao->select('id')->from(TABLE_MODULE)->where("CONCAT(',', path, ',')")->like("%,$module->path,%")->andWhere('deleted')->eq(0)->fetchPairs(); } /**