* Finish task #5170.

This commit is contained in:
Yagami
2018-12-26 10:30:34 +08:00
parent e724e43770
commit da57fc447d
+16
View File
@@ -29,12 +29,16 @@ class taskModel extends model
->setDefault('project', (int)$projectID)
->setDefault('estimate, left, story', 0)
->setDefault('status', 'wait')
->setDefault('estimate',(int)$this->post->estimate)
->setIF($this->post->estimate != false, 'left', $this->post->estimate)
->setIF($this->post->story != false, 'storyVersion', $this->loadModel('story')->getVersion($this->post->story))
->setDefault('estStarted', '0000-00-00')
->setDefault('deadline', '0000-00-00')
->setIF(strpos($this->config->task->create->requiredFields, 'estStarted') !== false, 'estStarted', $this->post->estStarted)
->setIF(strpos($this->config->task->create->requiredFields, 'deadline') !== false, 'deadline', $this->post->deadline)
->setIF($this->post->estimate !== 0, 'estimate', (int)$this->post->estimate)
->setIF($this->post->consumed !== 0, 'consumed', (int)$this->post->consumed)
->setIF($this->post->left !== 0, 'left', (int)$this->post->left)
->setDefault('openedBy', $this->app->user->account)
->setDefault('openedDate', helper::now())
->stripTags($this->config->task->editor->create['id'], $this->config->allowedTags)
@@ -578,6 +582,9 @@ class taskModel extends model
->setDefault('story, estimate, left, consumed', 0)
->setDefault('estStarted', '0000-00-00')
->setDefault('deadline', '0000-00-00')
->setIF($this->post->estimate !== 0, 'estimate', (int)$this->post->estimate)
->setIF($this->post->consumed !== 0, 'consumed', (int)$this->post->consumed)
->setIF($this->post->left !== 0, 'left', (int)$this->post->left)
->setIF($oldTask->parent == 0 && $this->post->parent == '', 'parent', 0)
->setIF(strpos($this->config->task->edit->requiredFields, 'estStarted') !== false, 'estStarted', $this->post->estStarted)
->setIF(strpos($this->config->task->edit->requiredFields, 'deadline') !== false, 'deadline', $this->post->deadline)
@@ -1170,6 +1177,7 @@ class taskModel extends model
}
$task = fixer::input('post')
->setIF($this->post->consumed !== 0, 'consumed', (int)$this->post->consumed)
->setDefault('left', 0)
->setDefault('assignedTo', $oldTask->openedBy)
->setDefault('assignedDate', $now)
@@ -1229,6 +1237,7 @@ class taskModel extends model
}
if($task->finishedDate == substr($now, 0, 10)) $task->finishedDate = $now;
$task->consumed = (int)$task->consumed;
$this->dao->update(TABLE_TASK)->data($task)
->autoCheck()
@@ -1349,6 +1358,7 @@ class taskModel extends model
$oldTask = $this->getById($taskID);
$task = fixer::input('post')
->setIF($this->post->left !== 0, 'left', (int)$this->post->left)
->setDefault('left', 0)
->setDefault('status', 'doing')
->setDefault('finishedBy, canceledBy, closedBy, closedReason', '')
@@ -1359,6 +1369,12 @@ class taskModel extends model
->remove('comment')
->get();
if(!is_numeric($task->left))
{
dao::$errors[] = $this->lang->task->error->estimateNumber;
return false;
}
if(!empty($oldTask->team))
{
$this->dao->update(TABLE_TEAM)->set('left')->eq($this->post->left)