From 29a2c25ef190905f1f7d48855ffc284b54084ac9 Mon Sep 17 00:00:00 2001
From: holan20180123 <56391770@qq.com>
Date: Wed, 12 Aug 2020 08:15:40 +0800
Subject: [PATCH 02/24] * Fix bug #3334.
---
module/task/js/start.js | 10 ++++++++--
module/task/lang/de.php | 1 +
module/task/lang/en.php | 1 +
module/task/lang/fr.php | 1 +
module/task/lang/vi.php | 1 +
module/task/lang/zh-cn.php | 1 +
module/task/lang/zh-tw.php | 1 +
module/task/model.php | 5 +++++
module/task/view/start.html.php | 1 +
9 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/module/task/js/start.js b/module/task/js/start.js
index 42d34541d7..593b56c216 100644
--- a/module/task/js/start.js
+++ b/module/task/js/start.js
@@ -1,9 +1,15 @@
/* If left = 0, warning. */
function checkLeft()
{
- var value = $("#left").val();
- if(isNaN(parseFloat(value)) || value == 0)
+ var left = $("#left").val();
+ var consumed = $("#consumed").val();
+ if(isNaN(parseFloat(left)) || left == 0)
{
+ if(isNaN(parseFloat(consumed)) || consumed == 0)
+ {
+ alert(noticeTaskStart);
+ return false;
+ }
var result = confirm(confirmFinish);
if(!result) setTimeout(function() {$.enableForm()}, 500);
return result;
diff --git a/module/task/lang/de.php b/module/task/lang/de.php
index e1acf374d2..eb2d6feac7 100644
--- a/module/task/lang/de.php
+++ b/module/task/lang/de.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "Wenn Sie {$lang->projectCommon} ändern, d
$lang->task->confirmFinish = '"Reststunden " sind 0. Möchten Sue den Status auf Erledigt setzen?';
$lang->task->confirmRecord = '"Reststunden " sind 0. Möchten Sie den Task auf Erledigt setzen?';
$lang->task->confirmTransfer = '"Reststunden " sind 0. Möchten Sie den Task transferieren?';
+$lang->task->noticeTaskStart = '"Cost Hour" and "Left Hour" cannot be 0 at the same time.';
$lang->task->noticeLinkStory = "Es wurde keine Story verknüpft. Sie können %s für dieses Projekt, anschließend %s.";
$lang->task->noticeSaveRecord = 'Ihre Stunden wurden nicht gespeichrt. Bitte erst speichern.';
$lang->task->commentActions = '%s. %s, kommentiert von %s.';
diff --git a/module/task/lang/en.php b/module/task/lang/en.php
index cf2e440eb3..e05b6ba8c9 100644
--- a/module/task/lang/en.php
+++ b/module/task/lang/en.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "If you change {$lang->projectCommon}, Modu
$lang->task->confirmFinish = '"Left Hour" is 0. Do you want to change the status to "Finished"?';
$lang->task->confirmRecord = '"Left Hour" is 0. Do you want to set the task as "Finished"?';
$lang->task->confirmTransfer = '"Left Hour" is 0,Do you want to transfer task?';
+$lang->task->noticeTaskStart = '"Cost Hour" and "Left Hour" cannot be 0 at the same time.';
$lang->task->noticeLinkStory = "No story has been linked. You can %s for this project, then %s.";
$lang->task->noticeSaveRecord = 'Your Hour is not saved. Please save it first.';
$lang->task->commentActions = '%s. %s, commented by %s.';
diff --git a/module/task/lang/fr.php b/module/task/lang/fr.php
index d0057e06bb..d57e19697b 100644
--- a/module/task/lang/fr.php
+++ b/module/task/lang/fr.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "Si vous changez {$lang->projectCommon}, Mo
$lang->task->confirmFinish = '"Heures Restantes" à 0. Voulez-vous passer le statut à "Terminée" ?';
$lang->task->confirmRecord = '"Heures Restantes" à 0. Voulez-vous passer le statut de la tâche à "Finie" ?';
$lang->task->confirmTransfer = '"Heures Restantes" à 0. Voulez-vous transférer la tâche ?';
+$lang->task->noticeTaskStart = '"Cost Hour" and "Left Hour" cannot be 0 at the same time.';
$lang->task->noticeLinkStory = "Aucune Story n'est associée. Vous pouvez %s pour ce projet, alors %s.";
$lang->task->noticeSaveRecord = "Votre temps n'a pas été sauvé. Enregistrez-le d'abord.";
$lang->task->commentActions = '%s. %s, commenté par %s.';
diff --git a/module/task/lang/vi.php b/module/task/lang/vi.php
index 3ec8195ed0..f1ed21861e 100644
--- a/module/task/lang/vi.php
+++ b/module/task/lang/vi.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "Nếu bạn thay đổi {$lang->projectCom
$lang->task->confirmFinish = '"Còn lại" bằng 0. Bạn có muốn thay đổi tình trạng thành "Kết thúc"?';
$lang->task->confirmRecord = '"Còn lại" bằng 0. Bạn có muốn thiết lập nhiệm vụ thành "Kết thúc"?';
$lang->task->confirmTransfer = '"Còn lại" bằng 0,Bạn có muốn chuyển thành nhiệm vụ?';
+$lang->task->noticeTaskStart = '"Cost Hour" and "Left Hour" cannot be 0 at the same time.';
$lang->task->noticeLinkStory = "Không có câu chuyện liên kết. Bạn có thể %s cho dự án này, sau đó %s.";
$lang->task->noticeSaveRecord = 'Số giờ làm của bạn chưa được lưu. Vui lòng lưu nó trước.';
$lang->task->commentActions = '%s. %s, nhận xét bởi %s.';
diff --git a/module/task/lang/zh-cn.php b/module/task/lang/zh-cn.php
index 6d71b4beaa..e8c8ad037a 100644
--- a/module/task/lang/zh-cn.php
+++ b/module/task/lang/zh-cn.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "修改{$lang->projectCommon}会导致相
$lang->task->confirmFinish = '"预计剩余"为0,确认将任务状态改为"已完成"吗?';
$lang->task->confirmRecord = '"剩余"为0,任务将标记为"已完成",您确定吗?';
$lang->task->confirmTransfer = '"当前剩余"为0,任务将被转交,您确定吗?';
+$lang->task->noticeTaskStart = '"总计消耗"和"预计剩余"不能同时为0';
$lang->task->noticeLinkStory = "没有可关联的相关{$lang->storyCommon},您可以为当前项目%s,然后%s";
$lang->task->noticeSaveRecord = '您有尚未保存的工时记录,请先将其保存。';
$lang->task->commentActions = '%s. %s, 由 %s 添加备注。';
diff --git a/module/task/lang/zh-tw.php b/module/task/lang/zh-tw.php
index b5495015a7..fe9e48300a 100644
--- a/module/task/lang/zh-tw.php
+++ b/module/task/lang/zh-tw.php
@@ -189,6 +189,7 @@ $lang->task->confirmChangeProject = "修改{$lang->projectCommon}會導致相
$lang->task->confirmFinish = '"預計剩餘"為0,確認將任務狀態改為"已完成"嗎?';
$lang->task->confirmRecord = '"剩餘"為0,任務將標記為"已完成",您確定嗎?';
$lang->task->confirmTransfer = '"當前剩餘"為0,任務將被轉交,您確定嗎?';
+$lang->task->noticeTaskStart = '"總計消耗"和"預計剩餘"不能同時為0';
$lang->task->noticeLinkStory = "沒有可關聯的相關{$lang->storyCommon},您可以為當前項目%s,然後%s";
$lang->task->noticeSaveRecord = '您有尚未保存的工時記錄,請先將其保存。';
$lang->task->commentActions = '%s. %s, 由 %s 添加備註。';
diff --git a/module/task/model.php b/module/task/model.php
index ada7448de2..2d061549de 100644
--- a/module/task/model.php
+++ b/module/task/model.php
@@ -1232,6 +1232,11 @@ class taskModel extends model
if($this->post->left == 0)
{
+ if($task->consumed == 0)
+ {
+ dao::$errors[] = sprintf($this->lang->error->notempty, $this->lang->task->consumed);
+ return false;
+ }
$task->status = 'done';
$task->finishedBy = $this->app->user->account;
$task->finishedDate = helper::now();
diff --git a/module/task/view/start.html.php b/module/task/view/start.html.php
index 78ed65c9ec..e5113e1237 100644
--- a/module/task/view/start.html.php
+++ b/module/task/view/start.html.php
@@ -14,6 +14,7 @@
task->confirmFinish);?>
+task->noticeTaskStart);?>