友情提示:為了您及時獲得禪道的最新動態,請在禪道社區(www.zentao.net)進行登記。
EOT;
$lang->install->product = array('chanzhi', 'zdoo', 'xuanxuan', 'ydisk', 'meshiot');
diff --git a/module/install/view/step6.html.php b/module/install/view/step6.html.php
index 150486533f..e2ac520d4b 100644
--- a/module/install/view/step6.html.php
+++ b/module/install/view/step6.html.php
@@ -18,7 +18,10 @@
-
install->joinZentao, $config->version, $this->createLink('admin', 'register'), $this->createLink('admin', 'bind'), inlink('step6')));?>
+
+ install->successLabel : $lang->install->successNoticeLabel) . $lang->install->joinZentao;?>
+ version, $this->createLink('admin', 'register'), $this->createLink('admin', 'bind'), inlink('step6')));?>
+
-
執行
+
執行
執行用來做任務的分解、指派和跟蹤,保證項目目標可以落實到人來執行。
diff --git a/module/job/lang/zh-tw.php b/module/job/lang/zh-tw.php
index 511f29f58a..37bbc7aee2 100644
--- a/module/job/lang/zh-tw.php
+++ b/module/job/lang/zh-tw.php
@@ -38,6 +38,12 @@ $lang->job->customParam = '自定義構建參數';
$lang->job->paramName = '名稱';
$lang->job->paramValue = '值';
$lang->job->custom = '自定義';
+$lang->job->createdBy = '由誰創建';
+$lang->job->createdDate = '創建日期';
+$lang->job->editedBy = '由誰編輯';
+$lang->job->editedDate = '編輯日期';
+$lang->job->lastTag = '最後標籤';
+$lang->job->deleted = '已刪除';
$lang->job->lblBasic = '基本信息';
diff --git a/module/misc/lang/en.php b/module/misc/lang/en.php
index 3052954edb..1e55e0183b 100644
--- a/module/misc/lang/en.php
+++ b/module/misc/lang/en.php
@@ -92,6 +92,7 @@ $lang->misc->feature->downloadFile = 'Download introduction';
$lang->misc->feature->tutorialDesc = 'ZenTao 15.0 has new functions, and you know how to use it through the "Tutorial".
Click your [Avatar-Theme-Young Blue] to set it.
';
$lang->misc->feature->themeDesc = 'ZenTao 15.0+ a new "Youth Blue" theme, the pages are more beautiful and the experience is more friendly.
Click your [Avatar-Theme-Young Blue] to set it.
';
+$lang->misc->releaseDate['15.6'] = '2021-10-12';
$lang->misc->releaseDate['15.5'] = '2021-09-14';
$lang->misc->releaseDate['15.4'] = '2021-08-23';
$lang->misc->releaseDate['15.3'] = '2021-08-04';
@@ -157,6 +158,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
+$lang->misc->feature->all['15.6'][] = array('title' => 'Fix bug.', 'desc' => '');
$lang->misc->feature->all['15.5'][] = array('title' => 'Add Program / Product / Project Kanban, global addition function and novice guidance. Fix bug.', 'desc' => '');
$lang->misc->feature->all['15.4'][] = array('title' => 'Fix bug', 'desc' => '');
$lang->misc->feature->all['15.3'][] = array('title' => 'Adjust interface style and document, fix bug', 'desc' => '');
diff --git a/module/misc/lang/zh-cn.php b/module/misc/lang/zh-cn.php
index 6dbd7b4d96..872c8ce62d 100644
--- a/module/misc/lang/zh-cn.php
+++ b/module/misc/lang/zh-cn.php
@@ -92,6 +92,7 @@ $lang->misc->feature->downloadFile = '下载新版本功能介绍文档';
$lang->misc->feature->tutorialDesc = "禅道15系列新增了多项功能,您可以通过“新手引导教程”快速了解禅道的基本使用方法。
通过鼠标经过 [头像-新手引导],点击新手引导,即可进入新手引导教程。
";
$lang->misc->feature->themeDesc = "禅道15系列上线了全新的“青春蓝”主题,页面呈现更加美观,体验更加友好。
通过鼠标经过 [头像-主题-青春蓝],点击青春蓝,即可设置成功。
";
+$lang->misc->releaseDate['15.6'] = '2021-10-12';
$lang->misc->releaseDate['15.5'] = '2021-09-14';
$lang->misc->releaseDate['15.4'] = '2021-08-23';
$lang->misc->releaseDate['15.3'] = '2021-08-04';
@@ -157,6 +158,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
+$lang->misc->feature->all['15.6'][] = array('title' => '修复Bug。', 'desc' => '');
$lang->misc->feature->all['15.5'][] = array('title' => '增加项目集/产品/项目看板视图、全局添加功能、新手引导。 修复Bug。', 'desc' => '');
$lang->misc->feature->all['15.4'][] = array('title' => '修复Bug', 'desc' => '');
$lang->misc->feature->all['15.3'][] = array('title' => '实现界面风格改动和文档优化,修复Bug', 'desc' => '');
diff --git a/module/misc/lang/zh-tw.php b/module/misc/lang/zh-tw.php
index 773192f3fb..ff67cdf2c4 100644
--- a/module/misc/lang/zh-tw.php
+++ b/module/misc/lang/zh-tw.php
@@ -92,6 +92,7 @@ $lang->misc->feature->downloadFile = '下載新版本功能介紹文檔';
$lang->misc->feature->tutorialDesc = "禪道15系列新增了多項功能,您可以通過“新手引導教程”快速瞭解禪道的基本使用方法。
通過滑鼠經過 [頭像-新手引導],點擊新手引導,即可進入新手引導教程。
";
$lang->misc->feature->themeDesc = "禪道15系列上線了全新的“青春藍”主題,頁面呈現更加美觀,體驗更加友好。
通過滑鼠經過 [頭像-主題-青春藍],點擊青春藍,即可設置成功。
";
+$lang->misc->releaseDate['15.6'] = '2021-10-12';
$lang->misc->releaseDate['15.5'] = '2021-09-14';
$lang->misc->releaseDate['15.4'] = '2021-08-23';
$lang->misc->releaseDate['15.3'] = '2021-08-04';
@@ -157,6 +158,7 @@ $lang->misc->releaseDate['7.2.stable'] = '2015-05-22';
$lang->misc->releaseDate['7.1.stable'] = '2015-03-07';
$lang->misc->releaseDate['6.3.stable'] = '2014-11-07';
+$lang->misc->feature->all['15.6'][] = array('title' => '修復Bug。', 'desc' => '');
$lang->misc->feature->all['15.5'][] = array('title' => '增加項目集/產品/項目看板視圖、全局添加功能、新手引導。 修復Bug。', 'desc' => '');
$lang->misc->feature->all['15.4'][] = array('title' => '修復Bug', 'desc' => '');
$lang->misc->feature->all['15.3'][] = array('title' => '實現界面風格改動和文檔優化,修復Bug', 'desc' => '');
diff --git a/module/product/lang/zh-tw.php b/module/product/lang/zh-tw.php
index a4e9b92f9a..d38278c7d2 100644
--- a/module/product/lang/zh-tw.php
+++ b/module/product/lang/zh-tw.php
@@ -93,6 +93,7 @@ $lang->product->code = "{$lang->productCommon}代號";
$lang->product->line = "{$lang->productCommon}綫";
$lang->product->lineName = "{$lang->productCommon}綫名稱";
$lang->product->order = '排序';
+$lang->product->bind = '是否獨立產品';
$lang->product->type = "{$lang->productCommon}類型";
$lang->product->typeAB = "類型";
$lang->product->status = '狀態';
@@ -102,6 +103,7 @@ $lang->product->manager = '負責人';
$lang->product->PO = "{$lang->productCommon}負責人";
$lang->product->QD = '測試負責人';
$lang->product->RD = '發佈負責人';
+$lang->product->feedback = '反饋負責人';
$lang->product->acl = '訪問控制';
$lang->product->whitelist = '白名單';
$lang->product->branch = '所屬%s';
@@ -116,6 +118,8 @@ $lang->product->iterationInfo = '迭代 %s 次';
$lang->product->iterationView = '查看詳情';
$lang->product->createdBy = '由誰創建';
$lang->product->createdDate = '創建日期';
+$lang->product->createdVersion = '創建版本';
+$lang->product->mailto = '抄送給';
$lang->product->searchStory = '搜索';
$lang->product->assignedToMe = '指給我';
diff --git a/module/productplan/lang/zh-tw.php b/module/productplan/lang/zh-tw.php
index 6f0c41c414..e42e7db0af 100644
--- a/module/productplan/lang/zh-tw.php
+++ b/module/productplan/lang/zh-tw.php
@@ -67,6 +67,7 @@ $lang->productplan->children = "子計劃";
$lang->productplan->childrenAB = "子";
$lang->productplan->order = "排序";
$lang->productplan->deleted = "已刪除";
+$lang->productplan->mailto = "抄送給";
$lang->productplan->endList[7] = '一星期';
$lang->productplan->endList[14] = '兩星期';
diff --git a/module/program/lang/zh-tw.php b/module/program/lang/zh-tw.php
index e88ce0670d..98e15aaaa2 100644
--- a/module/program/lang/zh-tw.php
+++ b/module/program/lang/zh-tw.php
@@ -85,7 +85,7 @@ $lang->program->beginGreateChild = "子項目集的最小開始日期:%s,
$lang->program->endLetterChild = "子項目的最大完成日期:%s,父項目的完成日期不能小於子項目的最大完成日期";
$lang->program->closeErrorMessage = '存在子項目集或項目為未關閉狀態';
$lang->program->hasChildren = '該項目集有子項目集或項目存在,不能刪除。';
-$lang->program->hasChildren = '該項目集有產品存在,不能刪除。';
+$lang->program->hasProduct = '該項目集有產品存在,不能刪除。';
$lang->program->confirmDelete = "您確定要刪除嗎?";
$lang->program->readjustTime = '重新調整項目集起止時間';
$lang->program->accessDenied = '你無權訪問該項目集';
diff --git a/module/project/lang/en.php b/module/project/lang/en.php
index 2f9bb44c73..dc574d6ebf 100644
--- a/module/project/lang/en.php
+++ b/module/project/lang/en.php
@@ -82,7 +82,6 @@ $lang->project->milestone = 'Milestone';
$lang->project->output = 'Output';
$lang->project->path = 'Path';
$lang->project->grade = 'Grade';
-$lang->project->statge = '';
$lang->project->version = 'Version';
$lang->project->parentVersion = 'Parent Version';
$lang->project->planDuration = 'Plan Duration';
@@ -90,9 +89,9 @@ $lang->project->realDuration = 'Real Duration';
$lang->project->openedVersion = 'Opened Version';
$lang->project->pri = 'Priority';
$lang->project->openedBy = 'OpenedBy';
+$lang->project->openedDate = 'OpenedDate';
$lang->project->lastEditedBy = 'Last EditedBy';
$lang->project->lastEditedDate = 'Last EditedDate';
-$lang->project->openedDate = 'OpenedDate';
$lang->project->closedBy = 'ClosedBy';
$lang->project->closedDate = 'ClosedDate';
$lang->project->canceledBy = 'CanceledBy';
diff --git a/module/project/lang/zh-tw.php b/module/project/lang/zh-tw.php
index 7277906acf..818e72330f 100644
--- a/module/project/lang/zh-tw.php
+++ b/module/project/lang/zh-tw.php
@@ -58,6 +58,7 @@ $lang->project->copyTeamTitle = '選擇一個項目團隊來複制';
/* Fields. */
$lang->project->common = '項目';
$lang->project->id = '項目編號';
+$lang->project->project = '所屬項目';
$lang->project->stage = '階段';
$lang->project->model = '項目管理方式';
$lang->project->PM = '負責人';
@@ -74,9 +75,23 @@ $lang->project->end = '計劃完成';
$lang->project->status = '狀態';
$lang->project->subStatus = '子狀態';
$lang->project->type = '項目類型';
+$lang->project->lifetime = '項目周期';
+$lang->project->attribute = '階段類型';
+$lang->project->percent = '工作量占比';
+$lang->project->milestone = '里程碑';
+$lang->project->output = '輸出';
+$lang->project->path = '路徑';
+$lang->project->grade = '層級';
+$lang->project->version = '版本';
+$lang->project->parentVersion = '父版本';
+$lang->project->planDuration = '計劃周期天數';
+$lang->project->realDuration = '實際周期天數';
+$lang->project->openedVersion = '創建版本';
$lang->project->pri = '優先順序';
$lang->project->openedBy = '由誰創建';
$lang->project->openedDate = '創建日期';
+$lang->project->lastEditedBy = '最後編輯人';
+$lang->project->lastEditedDate = '最後編輯日期';
$lang->project->closedBy = '由誰關閉';
$lang->project->closedDate = '關閉日期';
$lang->project->canceledBy = '由誰取消';
@@ -132,7 +147,11 @@ $lang->project->longTime = '長期';
$lang->project->future = '待定';
$lang->project->moreProject = '更多項目';
$lang->project->days = '可用工作日';
+$lang->project->mailto = '抄送給';
$lang->project->etc = "等";
+$lang->project->product = '所屬產品';
+$lang->project->branch = '所屬分支';
+$lang->project->plan = '所屬計劃';
/* Project Kanban. */
$lang->project->typeList = array();
diff --git a/module/projectstory/lang/zh-tw.php b/module/projectstory/lang/zh-tw.php
index 658e7d20a9..7f678d39cd 100644
--- a/module/projectstory/lang/zh-tw.php
+++ b/module/projectstory/lang/zh-tw.php
@@ -1,5 +1,11 @@
projectstory->project = "項目ID";
+$lang->projectstory->product = "產品ID";
+$lang->projectstory->story = "需求ID";
+$lang->projectstory->version = "版本";
+$lang->projectstory->order = "排序";
+
$lang->projectstory->common = "項目{$lang->SRCommon}";
$lang->projectstory->index = "{$lang->SRCommon}主頁";
$lang->projectstory->view = "{$lang->SRCommon}詳情";
diff --git a/module/repo/lang/zh-tw.php b/module/repo/lang/zh-tw.php
index 36698a32df..acb01d2133 100644
--- a/module/repo/lang/zh-tw.php
+++ b/module/repo/lang/zh-tw.php
@@ -19,6 +19,10 @@ $lang->repo->deleteBug = '刪除評審';
$lang->repo->addComment = '添加備註';
$lang->repo->editComment = '編輯備註';
$lang->repo->deleteComment = '刪除備註';
+$lang->repo->encrypt = '加密方式';
+$lang->repo->repo = '代碼庫';
+$lang->repo->parent = '父檔案夾';
+$lang->repo->branch = '分支';
$lang->repo->browseAction = '瀏覽版本庫';
$lang->repo->createAction = '創建版本庫';
diff --git a/module/search/lang/zh-tw.php b/module/search/lang/zh-tw.php
index 443bb0a3e0..9e7280d345 100644
--- a/module/search/lang/zh-tw.php
+++ b/module/search/lang/zh-tw.php
@@ -10,6 +10,10 @@
* @link http://www.zentao.net
*/
$lang->search->common = '搜索';
+$lang->search->id = '編號';
+$lang->search->editedDate = '編輯時間';
+$lang->search->key = '鍵';
+$lang->search->value = '值';
$lang->search->reset = '重置';
$lang->search->saveQuery = '保存查詢';
$lang->search->myQuery = '我的查詢';
diff --git a/module/story/lang/zh-tw.php b/module/story/lang/zh-tw.php
index 320f50741e..a71dd8030a 100644
--- a/module/story/lang/zh-tw.php
+++ b/module/story/lang/zh-tw.php
@@ -98,6 +98,7 @@ $lang->story->source = "來源";
$lang->story->sourceNote = '來源備註';
$lang->story->fromBug = '來源Bug';
$lang->story->title = "{$lang->SRCommon}名稱";
+$lang->story->type = "需求類型";
$lang->story->category = "類型";
$lang->story->color = '標題顏色';
$lang->story->toBug = '轉Bug';
diff --git a/module/task/lang/en.php b/module/task/lang/en.php
index 31435a1189..7a952a19a9 100644
--- a/module/task/lang/en.php
+++ b/module/task/lang/en.php
@@ -58,8 +58,8 @@ $lang->task->id = 'ID';
$lang->task->project = 'Project';
$lang->task->execution = $lang->executionCommon;
$lang->task->module = 'Module';
-$lang->task->design = 'Design';
$lang->task->moduleAB = 'Module';
+$lang->task->design = 'Design';
$lang->task->story = 'Story';
$lang->task->storyAB = 'Story';
$lang->task->storySpec = 'Story Description';
@@ -98,6 +98,7 @@ $lang->task->estimateStartDate = 'Estimate Start Date';
$lang->task->actualStartDate = 'Actual Start Date';
$lang->task->planDuration = 'Plan Duration';
$lang->task->realDuration = 'Real Duration';
+$lang->task->version = 'Version';
$lang->task->assign = 'Assign';
$lang->task->assignAction = 'Assign Task';
$lang->task->assignTo = $lang->task->assign;
@@ -105,10 +106,10 @@ $lang->task->batchAssignTo = 'Batch Assign';
$lang->task->assignedTo = 'AssignTo';
$lang->task->assignedToAB = 'AssignedTo';
$lang->task->assignedDate = 'AssignedDate';
-$lang->task->activatedDate = 'Activated Date';
$lang->task->openedBy = 'CreatedBy';
$lang->task->openedDate = 'CreatedDate';
$lang->task->openedDateAB = 'CreatedOn';
+$lang->task->activatedDate = 'Activated Date';
$lang->task->finishedBy = 'FinishedBy';
$lang->task->finishedByAB = 'FinishedBy';
$lang->task->finishedDate = 'ActualFinished';
diff --git a/module/task/lang/zh-tw.php b/module/task/lang/zh-tw.php
index 31e83968d9..7abb28a0cb 100644
--- a/module/task/lang/zh-tw.php
+++ b/module/task/lang/zh-tw.php
@@ -53,85 +53,99 @@ $lang->task->copy = '複製任務';
$lang->task->waitTask = '未開始的任務';
$lang->task->allModule = '所有模組';
-$lang->task->common = '任務';
-$lang->task->id = '編號';
-$lang->task->project = '所屬項目';
-$lang->task->execution = '所屬' . $lang->execution->common;
-$lang->task->module = '所屬模組';
-$lang->task->moduleAB = '模組';
-$lang->task->story = "相關{$lang->SRCommon}";
-$lang->task->storyAB = $lang->SRCommon;
-$lang->task->storySpec = "{$lang->SRCommon}描述";
-$lang->task->storyVerify = '驗收標準';
-$lang->task->storyVersion = "{$lang->SRCommon}版本";
-$lang->task->color = '標題顏色';
-$lang->task->name = '任務名稱';
-$lang->task->type = '任務類型';
-$lang->task->typeAB = '類型';
-$lang->task->sync2Gitlab = '同步到Gitlab';
-$lang->task->pri = '優先順序';
-$lang->task->mailto = '抄送給';
-$lang->task->estimate = '最初預計';
-$lang->task->estimateAB = '預計';
-$lang->task->left = '預計剩餘';
-$lang->task->leftAB = '剩餘';
-$lang->task->consumed = '總計消耗';
-$lang->task->currentConsumed = '本次消耗';
-$lang->task->myConsumed = '我的總消耗';
-$lang->task->consumedAB = '消耗';
-$lang->task->hour = '小時';
-$lang->task->consumedThisTime = '工時';
-$lang->task->leftThisTime = '剩餘';
-$lang->task->datePlan = '日程規劃';
-$lang->task->estStarted = '預計開始';
-$lang->task->realStarted = '實際開始';
-$lang->task->date = '日期';
-$lang->task->deadline = '截止日期';
-$lang->task->deadlineAB = '截止';
-$lang->task->status = '任務狀態';
-$lang->task->subStatus = '子狀態';
-$lang->task->desc = '任務描述';
-$lang->task->assign = '指派';
-$lang->task->assignAction = '指派任務';
-$lang->task->assignTo = $lang->task->assign;
-$lang->task->batchAssignTo = '批量指派';
-$lang->task->assignedTo = '指派給';
-$lang->task->assignedToAB = '指派給';
-$lang->task->assignedDate = '指派日期';
-$lang->task->openedBy = '由誰創建';
-$lang->task->openedDate = '創建日期';
-$lang->task->openedDateAB = '創建';
-$lang->task->finishedBy = '由誰完成';
-$lang->task->finishedByAB = '完成者';
-$lang->task->finishedDate = '實際完成';
-$lang->task->finishedDateAB = '實際完成';
-$lang->task->finishedList = '完成者列表';
-$lang->task->canceledBy = '由誰取消';
-$lang->task->canceledDate = '取消時間';
-$lang->task->closedBy = '由誰關閉';
-$lang->task->closedDate = '關閉時間';
-$lang->task->closedReason = '關閉原因';
-$lang->task->lastEditedBy = '最後修改';
-$lang->task->lastEditedDate = '最後修改日期';
-$lang->task->lastEdited = '最後編輯';
-$lang->task->recordEstimate = '工時';
-$lang->task->editEstimate = '編輯工時';
-$lang->task->deleteEstimate = '刪除工時';
-$lang->task->colorTag = '顏色標籤';
-$lang->task->files = '附件';
-$lang->task->hasConsumed = '之前消耗';
-$lang->task->multiple = '多人任務';
-$lang->task->multipleAB = '多人';
-$lang->task->team = '團隊';
-$lang->task->transfer = '轉交';
-$lang->task->transferTo = '轉交給';
-$lang->task->children = '子任務';
-$lang->task->childrenAB = '子';
-$lang->task->parent = '父任務';
-$lang->task->parentAB = '父';
-$lang->task->lblPri = 'P';
-$lang->task->lblHour = '(h)';
-$lang->task->lblTestStory = "測試{$lang->SRCommon}";
+$lang->task->common = '任務';
+$lang->task->id = '編號';
+$lang->task->project = '所屬項目';
+$lang->task->execution = '所屬' . $lang->execution->common;
+$lang->task->module = '所屬模組';
+$lang->task->moduleAB = '模組';
+$lang->task->design = '相關設計';
+$lang->task->story = "相關{$lang->SRCommon}";
+$lang->task->storyAB = $lang->SRCommon;
+$lang->task->storySpec = "{$lang->SRCommon}描述";
+$lang->task->storyVerify = '驗收標準';
+$lang->task->storyVersion = "{$lang->SRCommon}版本";
+$lang->task->designVersion = "設計版本";
+$lang->task->color = '標題顏色';
+$lang->task->name = '任務名稱';
+$lang->task->type = '任務類型';
+$lang->task->typeAB = '類型';
+$lang->task->sync2Gitlab = '同步到Gitlab';
+$lang->task->pri = '優先順序';
+$lang->task->mailto = '抄送給';
+$lang->task->estimate = '最初預計';
+$lang->task->estimateAB = '預計';
+$lang->task->left = '預計剩餘';
+$lang->task->leftAB = '剩餘';
+$lang->task->consumed = '總計消耗';
+$lang->task->currentConsumed = '本次消耗';
+$lang->task->myConsumed = '我的總消耗';
+$lang->task->consumedAB = '消耗';
+$lang->task->hour = '小時';
+$lang->task->consumedThisTime = '工時';
+$lang->task->leftThisTime = '剩餘';
+$lang->task->datePlan = '日程規劃';
+$lang->task->estStarted = '預計開始';
+$lang->task->realStarted = '實際開始';
+$lang->task->date = '日期';
+$lang->task->deadline = '截止日期';
+$lang->task->deadlineAB = '截止';
+$lang->task->status = '任務狀態';
+$lang->task->subStatus = '子狀態';
+$lang->task->desc = '任務描述';
+$lang->task->version = '版本';
+$lang->task->estimateStartDate = '預計開始日期';
+$lang->task->actualStartDate = '實際開始日期';
+$lang->task->planDuration = '計劃持續天數';
+$lang->task->realDuration = '實際持續天數';
+$lang->task->version = '版本';
+$lang->task->assign = '指派';
+$lang->task->assignAction = '指派任務';
+$lang->task->assignTo = $lang->task->assign;
+$lang->task->batchAssignTo = '批量指派';
+$lang->task->assignedTo = '指派給';
+$lang->task->assignedToAB = '指派給';
+$lang->task->assignedDate = '指派日期';
+$lang->task->openedBy = '由誰創建';
+$lang->task->openedDate = '創建日期';
+$lang->task->openedDateAB = '創建';
+$lang->task->activatedDate = '激活日期';
+$lang->task->finishedBy = '由誰完成';
+$lang->task->finishedByAB = '完成者';
+$lang->task->finishedDate = '實際完成';
+$lang->task->finishedDateAB = '實際完成';
+$lang->task->finishedList = '完成者列表';
+$lang->task->canceledBy = '由誰取消';
+$lang->task->canceledDate = '取消時間';
+$lang->task->closedBy = '由誰關閉';
+$lang->task->closedDate = '關閉時間';
+$lang->task->closedReason = '關閉原因';
+$lang->task->lastEditedBy = '最後修改';
+$lang->task->lastEditedDate = '最後修改日期';
+$lang->task->lastEdited = '最後編輯';
+$lang->task->recordEstimate = '工時';
+$lang->task->editEstimate = '編輯工時';
+$lang->task->deleteEstimate = '刪除工時';
+$lang->task->colorTag = '顏色標籤';
+$lang->task->files = '附件';
+$lang->task->hasConsumed = '之前消耗';
+$lang->task->multiple = '多人任務';
+$lang->task->multipleAB = '多人';
+$lang->task->team = '團隊';
+$lang->task->transfer = '轉交';
+$lang->task->transferTo = '轉交給';
+$lang->task->children = '子任務';
+$lang->task->childrenAB = '子';
+$lang->task->parent = '父任務';
+$lang->task->parentAB = '父';
+$lang->task->lblPri = 'P';
+$lang->task->lblHour = '(h)';
+$lang->task->lblTestStory = "測試{$lang->SRCommon}";
+
+/* Fields of zt_taskestimate. */
+$lang->task->task = '任務';
+$lang->task->account = '用戶名';
+$lang->task->work = '工作內容';
$lang->task->recordEstimateAction = '添加工時';
diff --git a/module/testcase/lang/zh-tw.php b/module/testcase/lang/zh-tw.php
index f37e3e7e91..789d7f5cb9 100644
--- a/module/testcase/lang/zh-tw.php
+++ b/module/testcase/lang/zh-tw.php
@@ -11,7 +11,14 @@
*/
$lang->testcase->id = '用例編號';
$lang->testcase->product = "所屬{$lang->productCommon}";
+$lang->testcase->project = '所屬項目';
+$lang->testcase->execution = '所屬執行';
$lang->testcase->module = '所屬模組';
+$lang->testcase->auto = '自動化測試用例';
+$lang->testcase->frame = '自動化測試框架';
+$lang->testcase->howRun = '測試方式';
+$lang->testcase->frequency = '使用頻率';
+$lang->testcase->path = '路徑';
$lang->testcase->lib = "所屬庫";
$lang->testcase->branch = "分支/平台";
$lang->testcase->moduleAB = '模組';
@@ -37,6 +44,10 @@ $lang->testcase->linkCase = '相關用例';
$lang->testcase->linkCases = '關聯相關用例';
$lang->testcase->unlinkCase = '移除相關用例';
$lang->testcase->stage = '適用階段';
+$lang->testcase->scriptedBy = '腳本由誰創建';
+$lang->testcase->scriptedDate = '腳本創建日期';
+$lang->testcase->scriptStatus = '腳本狀態';
+$lang->testcase->scriptLocation = '腳本地址';
$lang->testcase->reviewedBy = '由誰評審';
$lang->testcase->reviewedDate = '評審時間';
$lang->testcase->reviewResult = '評審結果';
@@ -54,6 +65,7 @@ $lang->testcase->assignedTo = '指派給';
$lang->testcase->colorTag = '顏色標籤';
$lang->testcase->lastRunResult = '結果';
$lang->testcase->desc = '步驟';
+$lang->testcase->parent = '上級步驟';
$lang->testcase->xml = 'XML';
$lang->testcase->expect = '預期';
$lang->testcase->allProduct = "所有{$lang->productCommon}";
@@ -73,8 +85,12 @@ $lang->testcase->sync = '同步';
$lang->testcase->ignore = '忽略';
$lang->testcase->fromTesttask = '來自測試單用例';
$lang->testcase->fromCaselib = '來自用例庫用例';
+$lang->testcase->fromCaseID = '用例來源ID';
+$lang->testcase->fromCaseVersion = '用例來源版本';
+$lang->testcase->mailto = '抄送給';
$lang->testcase->deleted = '是否刪除';
$lang->testcase->browseUnits = '單元測試';
+$lang->testcase->suite = '套件';
$lang->case = $lang->testcase; // 用於DAO檢查時使用。因為case是系統關鍵字,所以無法定義該模組為case,只能使用testcase,但表還是使用的case。
diff --git a/module/testreport/lang/zh-tw.php b/module/testreport/lang/zh-tw.php
index 28755b6f35..1a2fc60d67 100644
--- a/module/testreport/lang/zh-tw.php
+++ b/module/testreport/lang/zh-tw.php
@@ -1,5 +1,6 @@
testreport->common = '測試報告';
+$lang->testreport->id = '編號';
$lang->testreport->browse = '報告列表';
$lang->testreport->create = '創建報告';
$lang->testreport->edit = '編輯報告';
diff --git a/module/testsuite/lang/en.php b/module/testsuite/lang/en.php
index 3ce7e271e6..0b64a3e23d 100644
--- a/module/testsuite/lang/en.php
+++ b/module/testsuite/lang/en.php
@@ -26,7 +26,6 @@ $lang->testsuite->successSaved = 'Saved';
$lang->testsuite->id = 'ID';
$lang->testsuite->common = 'Test Suite';
$lang->testsuite->project = 'Project';
-$lang->testsuite->suite = 'Test Suite';
$lang->testsuite->product = $lang->productCommon;
$lang->testsuite->name = 'Name';
$lang->testsuite->type = 'Type';
diff --git a/module/testsuite/lang/zh-tw.php b/module/testsuite/lang/zh-tw.php
index 44e345f2f2..2ce0b38183 100644
--- a/module/testsuite/lang/zh-tw.php
+++ b/module/testsuite/lang/zh-tw.php
@@ -25,10 +25,12 @@ $lang->testsuite->successSaved = '保存成功';
$lang->testsuite->id = '編號';
$lang->testsuite->common = '套件';
+$lang->testsuite->project = '所屬項目';
$lang->testsuite->product = '所屬' . $lang->productCommon;
$lang->testsuite->name = '名稱';
$lang->testsuite->type = '類型';
$lang->testsuite->desc = '描述';
+$lang->testsuite->mailto = '抄送給';
$lang->testsuite->author = '訪問權限';
$lang->testsuite->addedBy = '由誰創建';
$lang->testsuite->addedDate = '創建時間';
diff --git a/module/testtask/lang/zh-tw.php b/module/testtask/lang/zh-tw.php
index 38fb65d520..379b8a88c8 100644
--- a/module/testtask/lang/zh-tw.php
+++ b/module/testtask/lang/zh-tw.php
@@ -47,6 +47,12 @@ $lang->testtask->all = "全部" . $lang->productCommon;
$lang->testtask->allTasks = '所有測試';
$lang->testtask->collapseAll = '全部摺疊';
$lang->testtask->expandAll = '全部展開';
+$lang->testtask->auto = '自動化';
+$lang->testtask->task = '測試單';
+$lang->testtask->run = '執行編號';
+$lang->testtask->job = '構建任務';
+$lang->testtask->compile = '構建';
+$lang->testtask->duration = '持續時間';
$lang->testtask->viewAction = "測試單概況";
$lang->testtask->casesAction = '查看用例';
diff --git a/module/todo/lang/zh-tw.php b/module/todo/lang/zh-tw.php
index 3a354cf692..ae09ab15b9 100644
--- a/module/todo/lang/zh-tw.php
+++ b/module/todo/lang/zh-tw.php
@@ -56,6 +56,7 @@ $lang->todo->pri = '優先順序';
$lang->todo->name = '待辦名稱';
$lang->todo->status = '狀態';
$lang->todo->desc = '描述';
+$lang->todo->config = '配置';
$lang->todo->private = '私人事務';
$lang->todo->cycleDay = '天';
$lang->todo->cycleWeek = '周';
diff --git a/module/tutorial/lang/zh-tw.php b/module/tutorial/lang/zh-tw.php
index e11059ab03..e926425113 100644
--- a/module/tutorial/lang/zh-tw.php
+++ b/module/tutorial/lang/zh-tw.php
@@ -52,25 +52,25 @@ $lang->tutorial->tasks['createStory'] = array('title' => "創建{$lang->
$lang->tutorial->tasks['createStory']['nav'] = array('app' => 'product', 'module' => 'story', 'method' => 'create', 'menuModule' => 'story', 'menu' => '#productTableList>tr:not(.has-nest-child):first>.c-name>a,#heading>.header-btn:first,#navbar>.nav>li[data-id="all"],.create-story-btn', 'target' => '.create-story-btn', 'form' => '#dataform', 'submit' => '#submit', 'targetPageName' => "提{$lang->SRCommon}");
$lang->tutorial->tasks['createStory']['desc'] = "在系統創建一個新的{$lang->SRCommon}:
- 打開 {$lang->productCommon} {$lang->SRCommon} 提{$lang->SRCommon} 頁面;
- 在{$lang->productCommon}表單中填寫要創建的{$lang->SRCommon}信息;
- 保存{$lang->SRCommon}信息。
";
-$lang->tutorial->tasks['createProject'] = array('title' => '創建' . $lang->projectCommon);
+$lang->tutorial->tasks['createProject'] = array('title' => '創建項目');
$lang->tutorial->tasks['createProject']['mode'] = 'new';
-$lang->tutorial->tasks['createProject']['nav'] = array('app' => 'project', 'module' => 'project', 'method' => 'create', 'menuModule' => 'browse', 'menu' => '', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加' . $lang->projectCommon);
-$lang->tutorial->tasks['createProject']['desc'] = "在系統創建一個新的{$lang->projectCommon}:
- 打開 {$lang->projectCommon} {$lang->projectCommon}列表 創建{$lang->projectCommon} 頁面;
- 在{$lang->projectCommon}表單中填寫要創建的{$lang->projectCommon}信息;
- 保存{$lang->projectCommon}信息。
";
+$lang->tutorial->tasks['createProject']['nav'] = array('app' => 'project', 'module' => 'project', 'method' => 'create', 'menuModule' => 'browse', 'menu' => '', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-project-btn', 'targetPageName' => '添加項目');
+$lang->tutorial->tasks['createProject']['desc'] = "在系統創建一個新的項目:
- 打開 項目 項目列表 創建項目 頁面;
- 在項目表單中填寫要創建的項目信息;
- 保存項目信息。
";
-$lang->tutorial->tasks['manageTeam'] = array('title' => "管理{$lang->projectCommon}團隊");
+$lang->tutorial->tasks['manageTeam'] = array('title' => "管理項目團隊");
$lang->tutorial->tasks['manageTeam']['mode'] = 'new';
$lang->tutorial->tasks['manageTeam']['nav'] = array('app' => 'project', 'module' => 'project', 'method' => 'managemembers', 'menuModule' => '', 'menu' => '#navbar>.nav>li[data-id="browse"],#cards>.col>.panel:first .project-name,#projectTableList>tr:first>.c-name a,#navbar>.nav>li[data-id="settings"],#subNavbar>.nav>li[data-id="members"],.manage-team-btn', 'target' => '.manage-team-btn', 'vars' => 'projectID=0', 'form' => '#teamForm', 'requiredFields' => 'accounts1', 'submit' => '#submit', 'targetPageName' => '團隊管理');
-$lang->tutorial->tasks['manageTeam']['desc'] = "管理{$lang->projectCommon}團隊成員:
- 打開 {$lang->projectCommon} 設置 團隊 團隊管理 頁面;
- 選擇要加入{$lang->projectCommon}團隊的成員;
- 保存團隊成員信息。
";
+$lang->tutorial->tasks['manageTeam']['desc'] = "管理項目團隊成員:
- 打開 項目 設置 團隊 團隊管理 頁面;
- 選擇要加入項目團隊的成員;
- 保存團隊成員信息。
";
$lang->tutorial->tasks['createProjectExecution'] = array('title' => '添加' . $lang->executionCommon);
$lang->tutorial->tasks['createProjectExecution']['mode'] = 'new';
$lang->tutorial->tasks['createProjectExecution']['nav'] = array('app' => 'project', 'module' => 'execution', 'method' => 'create', 'menuModule' => 'browse', 'menu' => '#navbar>.nav>li[data-id="browse"],#cards>.col>.panel:first .project-name,#projectTableList>tr:first>.c-name a,#navbar>.nav>li[data-id="execution"],.create-execution-btn', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-execution-btn', 'targetPageName' => '添加' . $lang->executionCommon);
-$lang->tutorial->tasks['createProjectExecution']['desc'] = "在系統創建一個新的{$lang->executionCommon}:
- 打開 {$lang->projectCommon} {$lang->executionCommon} 添加{$lang->executionCommon} 頁面;
- 在{$lang->executionCommon}表單中填寫要創建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
+$lang->tutorial->tasks['createProjectExecution']['desc'] = "在系統創建一個新的{$lang->executionCommon}:
- 打開 項目 {$lang->executionCommon} 添加{$lang->executionCommon} 頁面;
- 在{$lang->executionCommon}表單中填寫要創建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
$lang->tutorial->tasks['createExecution'] = array('title' => '創建' . $lang->executionCommon);
$lang->tutorial->tasks['createExecution']['mode'] = 'classic';
$lang->tutorial->tasks['createExecution']['nav'] = array('app' => 'execution', 'module' => 'execution', 'method' => 'create', 'menuModule' => 'browse', 'menu' => '#heading>.header-btn:first,#navbar>.nav>li[data-id="all"],.create-execution-btn', 'form' => '#dataform', 'submit' => '#submit', 'target' => '.create-execution-btn', 'targetPageName' => '添加' . $lang->executionCommon);
-$lang->tutorial->tasks['createExecution']['desc'] = "在系統創建一個新的{$lang->executionCommon}:
- 打開 {$lang->projectCommon} {$lang->executionCommon}列表 添加{$lang->executionCommon} 頁面;
- 在表單中填寫要創建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
+$lang->tutorial->tasks['createExecution']['desc'] = "在系統創建一個新的{$lang->executionCommon}:
- 打開 項目 {$lang->executionCommon}列表 添加{$lang->executionCommon} 頁面;
- 在表單中填寫要創建的{$lang->executionCommon}信息;
- 保存{$lang->executionCommon}信息。
";
$lang->tutorial->tasks['manageExecutionTeam'] = array('title' => "管理團隊");
$lang->tutorial->tasks['manageExecutionTeam']['mode'] = 'classic';
diff --git a/module/upgrade/lang/version.php b/module/upgrade/lang/version.php
index 1e343452b6..1f29435766 100644
--- a/module/upgrade/lang/version.php
+++ b/module/upgrade/lang/version.php
@@ -143,3 +143,4 @@ $lang->upgrade->fromVersions['15_0_3'] = '15.0.3';
$lang->upgrade->fromVersions['15_2'] = '15.2';
$lang->upgrade->fromVersions['15_3'] = '15.3';
$lang->upgrade->fromVersions['15_4'] = '15.4';
+$lang->upgrade->fromVersions['15_5'] = '15.5';
diff --git a/module/upgrade/model.php b/module/upgrade/model.php
index 0e46dee10e..3548c10896 100644
--- a/module/upgrade/model.php
+++ b/module/upgrade/model.php
@@ -923,6 +923,7 @@ class upgradeModel extends model
$xuanxuanSql = $this->app->getAppRoot() . 'db' . DS . 'upgradexuanxuan4.4.sql';
$confirmContent .= file_get_contents($xuanxuanSql);
}
+ case '15_5': $confirmContent .= file_get_contents($this->getUpgradeFile('15.5'));
}
return str_replace('zt_', $this->config->db->prefix, $confirmContent);
}
diff --git a/module/user/lang/zh-tw.php b/module/user/lang/zh-tw.php
index 192eb115f2..2172e95219 100644
--- a/module/user/lang/zh-tw.php
+++ b/module/user/lang/zh-tw.php
@@ -57,6 +57,21 @@ $lang->user->cropAvatar = '剪切頭像';
$lang->user->cropAvatarTip = '拖拽選框來選擇頭像剪切範圍';
$lang->user->cropImageTip = '所使用的頭像圖片過小,建議圖片大小至少為 48x48,當前圖片大小為 %s';
$lang->user->captcha = '驗證碼';
+$lang->user->avatar = '用戶頭像';
+$lang->user->birthday = '生日';
+$lang->user->nature = '性格特徵';
+$lang->user->analysis = '影響分析';
+$lang->user->strategy = '應對策略';
+$lang->user->fails = '失敗次數';
+$lang->user->locked = '鎖住日期';
+$lang->user->scoreLevel = '積分等級';
+$lang->user->clientStatus = '登錄狀態';
+$lang->user->clientLang = '客戶端語言';
+$lang->user->programs = '項目集';
+$lang->user->products = $lang->productCommon;
+$lang->user->projects = '項目';
+$lang->user->sprints = $lang->execution->common;
+$lang->user->identity = '身份';
$lang->user->legendBasic = '基本資料';
$lang->user->legendContribution = '個人貢獻';
diff --git a/module/webhook/lang/zh-tw.php b/module/webhook/lang/zh-tw.php
index 739603b945..0bc8745994 100644
--- a/module/webhook/lang/zh-tw.php
+++ b/module/webhook/lang/zh-tw.php
@@ -36,6 +36,11 @@ $lang->webhook->editedDate = '編輯時間';
$lang->webhook->date = '發送時間';
$lang->webhook->data = '數據';
$lang->webhook->result = '結果';
+$lang->webhook->products = $lang->productCommon;
+$lang->webhook->executions = $lang->execution->common;
+$lang->webhook->actions = '系統日誌';
+$lang->webhook->editedBy = '由誰編輯';
+$lang->webhook->deleted = '已刪除';
$lang->webhook->typeList[''] = '';
$lang->webhook->typeList['dinggroup'] = '釘釘群通知機器人';
From d6cea498cd6567484017e40539486fe256d9aea5 Mon Sep 17 00:00:00 2001
From: tianshujie
Date: Tue, 12 Oct 2021 10:33:07 +0800
Subject: [PATCH 05/44] * Finish task #43206.
---
module/productplan/model.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/module/productplan/model.php b/module/productplan/model.php
index 730b949045..7a026dcc0a 100644
--- a/module/productplan/model.php
+++ b/module/productplan/model.php
@@ -347,7 +347,7 @@ class productplanModel extends model
->data($plan)
->autoCheck()
->batchCheck($this->config->productplan->create->requiredFields, 'notempty')
- ->checkIF(!$this->post->future && !empty($_POST['begin']) && !empty($_POST['end']), 'end', 'gt', $plan->begin)
+ ->checkIF(!$this->post->future && !empty($_POST['begin']) && !empty($_POST['end']), 'end', 'ge', $plan->begin)
->exec();
if(!dao::isError())
{
@@ -389,7 +389,7 @@ class productplanModel extends model
->data($plan)
->autoCheck()
->batchCheck($this->config->productplan->edit->requiredFields, 'notempty')
- ->checkIF(!$this->post->future && !empty($_POST['begin']) && !empty($_POST['end']), 'end', 'gt', $plan->begin)
+ ->checkIF(!$this->post->future && !empty($_POST['begin']) && !empty($_POST['end']), 'end', 'ge', $plan->begin)
->where('id')->eq((int)$planID)
->exec();
if(!dao::isError())
From 8ff95d2d44f40213ee426cc19b4c6502db035434 Mon Sep 17 00:00:00 2001
From: hufangzhou
Date: Tue, 12 Oct 2021 10:57:38 +0800
Subject: [PATCH 06/44] * Modify the demo data, delete the unused fields.
---
db/demo.sql | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/db/demo.sql b/db/demo.sql
index 08ba533c4a..db49f080f0 100644
--- a/db/demo.sql
+++ b/db/demo.sql
@@ -377,16 +377,16 @@ INSERT INTO `zt_module` (`id`, `root`, `branch`, `name`, `parent`, `path`, `grad
(13, 1, 0, '合作洽谈', 0, ',13,', 1, 60, 'bug', '', '', '', '0'),
(14, 1, 0, '关于我们', 0, ',14,', 1, 70, 'bug', '', '', '', '0'),
(15, 6, 0, '企业管理', 0, ',15,', 1, 0, 'line', '', '', '', '0');
-INSERT INTO `zt_product` (`id`, `program`, `name`, `code`, `bind`, `line`, `type`, `status`, `subStatus`, `desc`, `PO`, `QD`, `RD`, `acl`, `whitelist`, `createdBy`, `createdDate`, `createdVersion`, `order`, `deleted`, `storyConcept`) VALUES
-(1, 6, '公司企业网站建设', 'companyWebsite', '0', 0, 'normal', 'normal', '', '建立公司企业网站,可以更好对外展示。
', 'productManager', 'testManager', 'productManager', 'open', '', 'productManager', '2012-06-05 09:57:07', '', 5, '0', 0),
-(2, 6, '企业内部工时管理系统', 'workhourManage', '0', 0, 'normal', 'normal', '', '', 'productManager', 'testManager', 'productManager', 'open', '', 'productManager', '2012-06-05 11:15:20', '5.2.1', 10, '0', 0);
+INSERT INTO `zt_product` (`id`, `program`, `name`, `code`, `bind`, `line`, `type`, `status`, `subStatus`, `desc`, `PO`, `QD`, `RD`, `acl`, `whitelist`, `createdBy`, `createdDate`, `createdVersion`, `order`, `deleted`) VALUES
+(1, 6, '公司企业网站建设', 'companyWebsite', '0', 0, 'normal', 'normal', '', '建立公司企业网站,可以更好对外展示。
', 'productManager', 'testManager', 'productManager', 'open', '', 'productManager', '2012-06-05 09:57:07', '', 5, '0'),
+(2, 6, '企业内部工时管理系统', 'workhourManage', '0', 0, 'normal', 'normal', '', '', 'productManager', 'testManager', 'productManager', 'open', '', 'productManager', '2012-06-05 11:15:20', '5.2.1', 10, '0');
INSERT INTO `zt_productplan` (`id`, `product`, `branch`, `parent`, `title`, `desc`, `begin`, `end`, `order`, `deleted`) VALUES
(1, 1, 0, 0, '1.0版本', '开发出企业网站1.0版本。
', '2020-06-05', '2021-06-04', '', '0');
-INSERT INTO `zt_project` (`id`, `project`, `model`, `type`, `product`, `lifetime`, `budget`, `budgetUnit`, `attribute`, `percent`, `milestone`, `output`, `auth`, `parent`, `path`, `grade`, `name`, `code`, `begin`, `end`, `realBegan`, `realEnd`, `days`, `status`, `subStatus`, `statge`, `pri`, `desc`, `version`, `parentVersion`, `planDuration`, `realDuration`, `openedBy`, `openedDate`, `openedVersion`, `lastEditedBy`, `lastEditedDate`, `closedBy`, `closedDate`, `canceledBy`, `canceledDate`, `PO`, `PM`, `QD`, `RD`, `team`, `acl`, `whitelist`, `order`, `deleted`, `storyConcept`) VALUES
-(1, 7, '', 'sprint', 'single', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,1,', 1, '企业网站第一期', 'coWeb1', '2020-06-05', '2021-12-04', '0000-00-00', '0000-00-00', 391, 'doing', '', '1', '1', '开发企业网站的基本雏形。
', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 5, '0', 0),
-(2, 7, '', 'sprint', 'single', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,2,', 1, '企业网站第二期', 'coWebsite2', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 260, 'wait', '', '1', '1', '', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 10, '0', 0),
-(7, 0, 'scrum', 'project', 'single', 'sprint', '0', 'CNY', '', 0, '0', '', 'extend', 6, ',6,7,', 2, '企业管理系统', '', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 0, 'doing', '', '1', '1', '', 0, 0, 0, 0, 'admin', '2021-04-28 11:22:04', '15.0.rc3', 'admin', '2021-04-28 11:22:04', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 'projectManager', '', '', '', 'open', ',tester3,admin', 35, '0', 0),
-(6, 0, '', 'program', 'single', 'sprint', '0', 'CNY', '', 0, '0', '', '', 0, ',6,', 1, '企业管理', '', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 0, 'doing', '', '1', '1', '', 0, 0, 0, 0, 'admin', '2021-04-28 11:22:04', '15.0.rc3', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '', '', '', '', 'open', '', 30, '0', 0);
+INSERT INTO `zt_project` (`id`, `project`, `model`, `type`, `lifetime`, `budget`, `budgetUnit`, `attribute`, `percent`, `milestone`, `output`, `auth`, `parent`, `path`, `grade`, `name`, `code`, `begin`, `end`, `realBegan`, `realEnd`, `days`, `status`, `subStatus`, `statge`, `pri`, `desc`, `version`, `parentVersion`, `planDuration`, `realDuration`, `openedBy`, `openedDate`, `openedVersion`, `lastEditedBy`, `lastEditedDate`, `closedBy`, `closedDate`, `canceledBy`, `canceledDate`, `PO`, `PM`, `QD`, `RD`, `team`, `acl`, `whitelist`, `order`, `deleted`) VALUES
+(1, 7, '', 'sprint', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,1,', 1, '企业网站第一期', 'coWeb1', '2020-06-05', '2021-12-04', '0000-00-00', '0000-00-00', 391, 'doing', '', '1', '开发企业网站的基本雏形。
', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 5, '0'),
+(2, 7, '', 'sprint', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,2,', 1, '企业网站第二期', 'coWebsite2', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 260, 'wait', '', '1', '', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 10, '0'),
+(7, 0, 'scrum', 'project', 'sprint', '0', 'CNY', '', 0, '0', '', 'extend', 6, ',6,7,', 2, '企业管理系统', '', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 0, 'doing', '', '1', '', 0, 0, 0, 0, 'admin', '2021-04-28 11:22:04', '15.0.rc3', 'admin', '2021-04-28 11:22:04', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 'projectManager', '', '', '', 'open', ',tester3,admin', 35, '0'),
+(6, 0, '', 'program', 'sprint', '0', 'CNY', '', 0, '0', '', '', 0, ',6,', 1, '企业管理', '', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 0, 'doing', '', '1', '', 0, 0, 0, 0, 'admin', '2021-04-28 11:22:04', '15.0.rc3', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '', '', '', '', 'open', '', 30, '0');
INSERT INTO `zt_projectcase` (`project`, `product`, `case`, `count`, `version`, `order`) VALUES
(1, 1, 2, 1, 1, 4),
(7, 1, 1, 1, 1, 5),
From f89abbe31c159aadceacf4678309bc8224ab508d Mon Sep 17 00:00:00 2001
From: hufangzhou
Date: Tue, 12 Oct 2021 11:22:59 +0800
Subject: [PATCH 07/44] * Fix an error of demo data.
---
db/demo.sql | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/db/demo.sql b/db/demo.sql
index db49f080f0..ac6ed6d84c 100644
--- a/db/demo.sql
+++ b/db/demo.sql
@@ -382,7 +382,7 @@ INSERT INTO `zt_product` (`id`, `program`, `name`, `code`, `bind`, `line`, `type
(2, 6, '企业内部工时管理系统', 'workhourManage', '0', 0, 'normal', 'normal', '', '', 'productManager', 'testManager', 'productManager', 'open', '', 'productManager', '2012-06-05 11:15:20', '5.2.1', 10, '0');
INSERT INTO `zt_productplan` (`id`, `product`, `branch`, `parent`, `title`, `desc`, `begin`, `end`, `order`, `deleted`) VALUES
(1, 1, 0, 0, '1.0版本', '开发出企业网站1.0版本。
', '2020-06-05', '2021-06-04', '', '0');
-INSERT INTO `zt_project` (`id`, `project`, `model`, `type`, `lifetime`, `budget`, `budgetUnit`, `attribute`, `percent`, `milestone`, `output`, `auth`, `parent`, `path`, `grade`, `name`, `code`, `begin`, `end`, `realBegan`, `realEnd`, `days`, `status`, `subStatus`, `statge`, `pri`, `desc`, `version`, `parentVersion`, `planDuration`, `realDuration`, `openedBy`, `openedDate`, `openedVersion`, `lastEditedBy`, `lastEditedDate`, `closedBy`, `closedDate`, `canceledBy`, `canceledDate`, `PO`, `PM`, `QD`, `RD`, `team`, `acl`, `whitelist`, `order`, `deleted`) VALUES
+INSERT INTO `zt_project` (`id`, `project`, `model`, `type`, `lifetime`, `budget`, `budgetUnit`, `attribute`, `percent`, `milestone`, `output`, `auth`, `parent`, `path`, `grade`, `name`, `code`, `begin`, `end`, `realBegan`, `realEnd`, `days`, `status`, `subStatus`, `pri`, `desc`, `version`, `parentVersion`, `planDuration`, `realDuration`, `openedBy`, `openedDate`, `openedVersion`, `lastEditedBy`, `lastEditedDate`, `closedBy`, `closedDate`, `canceledBy`, `canceledDate`, `PO`, `PM`, `QD`, `RD`, `team`, `acl`, `whitelist`, `order`, `deleted`) VALUES
(1, 7, '', 'sprint', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,1,', 1, '企业网站第一期', 'coWeb1', '2020-06-05', '2021-12-04', '0000-00-00', '0000-00-00', 391, 'doing', '', '1', '开发企业网站的基本雏形。
', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 5, '0'),
(2, 7, '', 'sprint', 'sprint', '0', 'CNY', '', 0, '0', '', '', 7, ',7,2,', 1, '企业网站第二期', 'coWebsite2', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 260, 'wait', '', '1', '', 0, 0, 0, 0, '', '0000-00-00 00:00:00', '', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', 'productManager', 'projectManager', 'testManager', 'productManager', '公司开发团队', 'open', '', 10, '0'),
(7, 0, 'scrum', 'project', 'sprint', '0', 'CNY', '', 0, '0', '', 'extend', 6, ',6,7,', 2, '企业管理系统', '', '2021-06-05', '2022-06-04', '0000-00-00', '0000-00-00', 0, 'doing', '', '1', '', 0, 0, 0, 0, 'admin', '2021-04-28 11:22:04', '15.0.rc3', 'admin', '2021-04-28 11:22:04', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 'projectManager', '', '', '', 'open', ',tester3,admin', 35, '0'),
From ee892ef350ae3e7267409b1b72d7898344ee823e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=80=A1=E6=A0=8B?=
Date: Tue, 12 Oct 2021 13:02:39 +0800
Subject: [PATCH 08/44] * fix for api.
---
framework/api/router.class.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/framework/api/router.class.php b/framework/api/router.class.php
index 3b18de79fd..1df2e0b4e0 100644
--- a/framework/api/router.class.php
+++ b/framework/api/router.class.php
@@ -88,11 +88,11 @@ class api extends router
}
else
{
- $this->path = trim((strpos($_SERVER['REQUEST_URI'], '?') > 0 ? strstr($_SERVER['REQUEST_URI'], '?', true) : $_SERVER['REQUEST_URI']), '/');
+ $this->path = rtrim((strpos($_SERVER['REQUEST_URI'], '?') > 0 ? strstr($_SERVER['REQUEST_URI'], '?', true) : $_SERVER['REQUEST_URI']), '/');
}
$dir = rtrim(dirname($_SERVER['SCRIPT_NAME']), '/');
- if($dir != '') $this->path = substr($this->path, strlen($dir));
+ if($dir != '' and strpos($this->path, $dir) === 0) $this->path = substr($this->path, strlen($dir));
$subPos = strpos($this->path, '/', 1);
From edc45687fd59333d61f7e0abc28fdd6fea18f642 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=80=A1=E6=A0=8B?=
Date: Tue, 12 Oct 2021 14:54:35 +0800
Subject: [PATCH 09/44] * fix error.
---
module/file/control.php | 1 +
1 file changed, 1 insertion(+)
diff --git a/module/file/control.php b/module/file/control.php
index e3fe26b575..ba4318d1d4 100644
--- a/module/file/control.php
+++ b/module/file/control.php
@@ -114,6 +114,7 @@ class file extends control
{
if(session_id() != $this->app->sessionID) helper::restartSession($this->app->sessionID);
$file = $this->file->getById($fileID);
+ if(empty($file)) die("{$this->lang->file->fileNotFound}");
/* Judge the mode, down or open. */
$mode = 'down';
From a80eca0ab53d9e71fcce7bd3fbe71a2d6230e2ef Mon Sep 17 00:00:00 2001
From: hufangzhou
Date: Tue, 12 Oct 2021 15:42:58 +0800
Subject: [PATCH 10/44] * Fix bug #15477.
---
module/execution/model.php | 2 ++
1 file changed, 2 insertions(+)
diff --git a/module/execution/model.php b/module/execution/model.php
index 22c7a0298d..14e873a5fe 100644
--- a/module/execution/model.php
+++ b/module/execution/model.php
@@ -1180,6 +1180,8 @@ class executionModel extends model
*/
public function getByProject($projectID, $status = 'all', $limit = 0, $pairs = false)
{
+ if(defined('TUTORIAL')) return $this->loadModel('tutorial')->getExecutionPairs();
+
$project = $this->loadModel('project')->getByID($projectID);
$orderBy = (isset($project->model) and $project->model == 'waterfall') ? 'begin_asc,id_asc' : 'begin_desc,id_desc';
From 013b6a37cdc5c59438a4caf81cccb96fcae8e4ad Mon Sep 17 00:00:00 2001
From: hufangzhou
Date: Tue, 12 Oct 2021 17:36:18 +0800
Subject: [PATCH 11/44] * Fix bug #15476.
---
module/project/model.php | 1 +
module/tutorial/model.php | 11 +++++++++++
2 files changed, 12 insertions(+)
diff --git a/module/project/model.php b/module/project/model.php
index 185d5d3169..c69af336c6 100644
--- a/module/project/model.php
+++ b/module/project/model.php
@@ -476,6 +476,7 @@ class projectModel extends model
*/
public function getPairsByProgram($programID = 0, $status = 'all')
{
+ if(defined('TUTORIAL')) return $this->loadModel('tutorial')->getProjectPairs();
return $this->dao->select('id, name')->from(TABLE_PROJECT)
->where('type')->eq('project')
->andWhere('deleted')->eq(0)
diff --git a/module/tutorial/model.php b/module/tutorial/model.php
index 992b3ba95c..558dec1ba1 100644
--- a/module/tutorial/model.php
+++ b/module/tutorial/model.php
@@ -155,6 +155,17 @@ class tutorialModel extends model
return $project;
}
+ /**
+ * Get tutorial project pairs.
+ *
+ * @access public
+ * @return array
+ */
+ public function getProjectPairs()
+ {
+ return array(2 => 'Test Project');
+ }
+
/**
* Get project stats for tutorial
*
From 3ddba6aeeb9c9d6846c98fdcf14d6c85ddeee483 Mon Sep 17 00:00:00 2001
From: liyuchun
Date: Wed, 13 Oct 2021 10:17:53 +0800
Subject: [PATCH 12/44] * Fix bug #15479.
---
module/common/model.php | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/module/common/model.php b/module/common/model.php
index 77fe324f46..75545c6516 100644
--- a/module/common/model.php
+++ b/module/common/model.php
@@ -361,9 +361,21 @@ class commonModel extends model
$html .= "";
$html .= "