diff --git a/module/task/lang/en.php b/module/task/lang/en.php index eb9230cbee..3257a52f01 100644 --- a/module/task/lang/en.php +++ b/module/task/lang/en.php @@ -90,6 +90,8 @@ $lang->task->editEstimate = 'Edit Man-Hour'; $lang->task->deleteEstimate = 'Delete Man-Hour'; $lang->task->colorTag = 'Color Tag'; $lang->task->files = 'Files'; +$lang->task->hasConsumed = 'Has Consumed'; +$lang->task->thisConsume = 'This Consumption'; $lang->task->ditto = 'Ditto'; $lang->task->dittoNotice = "This Task does not belong to the Project as the previous one does!"; diff --git a/module/task/lang/zh-cn.php b/module/task/lang/zh-cn.php index 81b051ca07..95d5440548 100644 --- a/module/task/lang/zh-cn.php +++ b/module/task/lang/zh-cn.php @@ -90,6 +90,8 @@ $lang->task->editEstimate = '编辑工时'; $lang->task->deleteEstimate = '删除工时'; $lang->task->colorTag = '颜色标签'; $lang->task->files = '附件'; +$lang->task->hasConsumed = '已消耗'; +$lang->task->thisConsume = '本次消耗'; $lang->task->ditto = '同上'; $lang->task->dittoNotice = "该任务与上一任务不属于同一项目!"; diff --git a/module/task/model.php b/module/task/model.php index 22f646195a..f4e0947437 100644 --- a/module/task/model.php +++ b/module/task/model.php @@ -645,7 +645,6 @@ class taskModel extends model public function finish($taskID) { $oldTask = $this->getById($taskID); - if($this->post->consumed < $oldTask->consumed) die(js::error($this->lang->task->error->consumedSmall)); $now = helper::now(); $task = fixer::input('post') ->setDefault('left', 0) @@ -654,22 +653,24 @@ class taskModel extends model ->setDefault('status', 'done') ->setDefault('finishedBy, lastEditedBy', $this->app->user->account) ->setDefault('finishedDate, lastEditedDate', $now) - ->remove('comment,files,labels') + ->remove('comment,files,labels,thisConsume') ->get(); if($task->finishedDate == substr($now, 0, 10)) $task->finishedDate = $now; + if(!isset($task->consumed)) $task->consumed = $oldTask->consumed + $this->post->thisConsume; if(!is_numeric($task->consumed)) die(js::error($this->lang->task->error->consumedNumber)); /* Record consumed and left. */ - $consumed = $task->consumed - $oldTask->consumed; + $consumed = $task->consumed - $oldTask->consumed; + if($consumed < 0) die(js::error($this->lang->task->error->consumedSmall)); $estimate = fixer::input('post') ->setDefault('account', $this->app->user->account) ->setDefault('task', $taskID) ->setDefault('date', date(DT_DATE1)) ->setDefault('left', 0) - ->remove('finishedDate,comment,assignedTo,files,labels') + ->remove('finishedDate,comment,assignedTo,files,labels,consumed,thisConsume') ->get(); - $estimate->consumed = $estimate->consumed - $oldTask->consumed; + $estimate->consumed = $consumed; if($estimate->consumed) $this->addTaskEstimate($estimate); $this->dao->update(TABLE_TASK)->data($task) diff --git a/module/task/view/finish.html.php b/module/task/view/finish.html.php index cddf290fe0..6619c909ff 100644 --- a/module/task/view/finish.html.php +++ b/module/task/view/finish.html.php @@ -23,8 +23,12 @@
- - + + + + + + diff --git a/module/task/view/start.html.php b/module/task/view/start.html.php index 8476a149ee..8fa6efaf77 100644 --- a/module/task/view/start.html.php +++ b/module/task/view/start.html.php @@ -28,7 +28,7 @@ - +
task->consumed;?>
consumed, "class='form-control'");?> task->hour;?>
task->hasConsumed;?> consumed;?> workingHour;?>
task->thisConsume;?>
task->hour;?>
task->assignedTo;?>
realStarted == '0000-00-00' ? helper::today() : $task->realStarted, "class='form-control form-date'");?>
task->consumed;?>task->thisConsume;?>
consumed, "class='form-control'");?> task->hour;?>