From 898697d913eea17c6d62f66e5d2c4fd05542b89e Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 7 Nov 2025 10:22:50 +0800 Subject: [PATCH 1/5] * [task#152172,doing,0.5h] modify zt_table module field type and add reportModule field. --- db/update21.7.6.sql | 7 ++++++- db/zentao.sql | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/db/update21.7.6.sql b/db/update21.7.6.sql index 7cc39c4e1d..a7c2793798 100644 --- a/db/update21.7.6.sql +++ b/db/update21.7.6.sql @@ -4,4 +4,9 @@ ALTER TABLE `zt_issue` CHANGE `pri` `pri` tinyint unsigned NOT NULL DEFAULT 3; ALTER TABLE `zt_risk` CHANGE `pri` `pri` tinyint unsigned NOT NULL DEFAULT 3; ALTER TABLE `zt_opportunity` CHANGE `pri` `pri` tinyint unsigned NOT NULL DEFAULT 3; ALTER TABLE `zt_design` CHANGE `project` `project` int unsigned NOT NULL DEFAULT 0; -ALTER TABLE `zt_design` CHANGE `product` `product` int unsigned NOT NULL DEFAULT 0; \ No newline at end of file +ALTER TABLE `zt_design` CHANGE `product` `product` int unsigned NOT NULL DEFAULT 0; + +ALTER TABLE `zt_doc` ADD `reportModule` varchar(20) NOT NULL DEFAULT '0' AFTER `module`; +UPDATE `zt_doc` SET `reportModule` = `module` WHERE `templateType` = 'projectReport'; +UPDATE `zt_doc` SET `module` = 0 WHERE `templateType` = 'projectReport' OR `module` = ''; +ALTER TABLE `zt_doc` MODIFY `module` int unsigned NOT NULL DEFAULT 0; diff --git a/db/zentao.sql b/db/zentao.sql index afb383487c..3316f07617 100755 --- a/db/zentao.sql +++ b/db/zentao.sql @@ -814,7 +814,8 @@ CREATE TABLE IF NOT EXISTS `zt_doc` ( `chapterType` varchar(30) NOT NULL DEFAULT '', `cycle` char(10) NOT NULL DEFAULT '', `cycleConfig` text NULL, - `module` varchar(30) NOT NULL DEFAULT '', + `module` int unsigned NOT NULL DEFAULT 0, + `reportModule` varchar(20) NOT NULL DEFAULT '', `title` varchar(255) NOT NULL DEFAULT '', `keywords` varchar(255) NOT NULL DEFAULT '', `type` varchar(30) NOT NULL DEFAULT '', From dbc270517b23577daa07060985d9d2e5d1fbc47d Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 7 Nov 2025 10:27:42 +0800 Subject: [PATCH 2/5] * [task#152172,doing,0.1h] modify module field default value. --- module/doc/config/form.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/module/doc/config/form.php b/module/doc/config/form.php index f8bd1d8649..09daf83690 100644 --- a/module/doc/config/form.php +++ b/module/doc/config/form.php @@ -39,7 +39,7 @@ $config->doc->form->create['version'] = array('type' => 'int', 'requir $config->doc->form->create['product'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->create['project'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->create['execution'] = array('type' => 'int', 'required' => false, 'default' => 0); -$config->doc->form->create['module'] = array('type' => 'string', 'required' => false, 'default' => ''); +$config->doc->form->create['module'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->create['lib'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->create['status'] = array('type' => 'string', 'required' => false, 'default' => 'normal'); $config->doc->form->create['parent'] = array('type' => 'int', 'required' => false, 'default' => 0); @@ -70,7 +70,7 @@ $config->doc->form->edit['title'] = array('type' => 'string', 'required' $config->doc->form->edit['product'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->edit['project'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->edit['execution'] = array('type' => 'int', 'required' => false, 'default' => 0); -$config->doc->form->edit['module'] = array('type' => 'string', 'required' => false, 'default' => ''); +$config->doc->form->edit['module'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->edit['lib'] = array('type' => 'int', 'required' => false, 'default' => 0, 'skipRequired' => true); $config->doc->form->edit['status'] = array('type' => 'string', 'required' => false, 'default' => 'normal'); $config->doc->form->edit['parent'] = array('type' => 'int', 'required' => false, 'default' => 0); @@ -100,7 +100,7 @@ $config->doc->form->movelib['groups'] = array('type' => 'array', 'required' = $config->doc->form->movelib['users'] = array('type' => 'array', 'required' => false, 'default' => '', 'filter' => 'join'); $config->doc->form->movedoc['lib'] = array('type' => 'int', 'required' => true, 'default' => ''); -$config->doc->form->movedoc['module'] = array('type' => 'int', 'required' => false, 'default' => ''); +$config->doc->form->movedoc['module'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->movedoc['acl'] = array('type' => 'string', 'required' => true, 'default' => ''); $config->doc->form->movedoc['groups'] = array('type' => 'array', 'required' => false, 'default' => '', 'filter' => 'join'); $config->doc->form->movedoc['users'] = array('type' => 'array', 'required' => false, 'default' => '', 'filter' => 'join'); @@ -109,7 +109,7 @@ $config->doc->form->movedoc['readUsers'] = array('type' => 'array', 'require $config->doc->form->movedoc['parent'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->movetemplate['lib'] = array('type' => 'int', 'required' => true, 'default' => ''); -$config->doc->form->movetemplate['module'] = array('type' => 'int', 'required' => true, 'default' => ''); +$config->doc->form->movetemplate['module'] = array('type' => 'int', 'required' => true, 'default' => 0); $config->doc->form->movetemplate['parent'] = array('type' => 'int', 'required' => false, 'default' => 0); $config->doc->form->movetemplate['acl'] = array('type' => 'string', 'required' => true, 'default' => ''); From a458af7fa60844e94b988cbb911caf2692aa2973 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 7 Nov 2025 10:32:59 +0800 Subject: [PATCH 3/5] * [task#152172,done,0.2h] change module to reportModule. --- module/project/tao.php | 2 +- module/upgrade/model.php | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/module/project/tao.php b/module/project/tao.php index 270a515b1a..c70f19e15a 100755 --- a/module/project/tao.php +++ b/module/project/tao.php @@ -1186,7 +1186,7 @@ class projectTao extends projectModel $report = new stdclass(); $report->title = $this->lang->project->milestoneReport; $report->project = $projectID; - $report->module = 'milestone'; + $report->reportModule = 'milestone'; $report->templateType = 'projectReport'; $report->addedBy = 'system'; $report->addedDate = helper::now(); diff --git a/module/upgrade/model.php b/module/upgrade/model.php index 7f01ff27d6..eedc9cc188 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -11263,18 +11263,18 @@ class upgradeModel extends model $weekNumber = ceil(helper::diffDate($data['weekStart'], $data['projectBegin']) / 7) + 1; $weekEnd = date('Y-m-d', strtotime('+6 day', strtotime($data['weekStart']))); - $report->project = $data['project']; - $report->title = sprintf($this->lang->upgrade->weeklyReportTitle, $weekNumber, $data['weekStart'], $weekEnd); - $report->module = 'week'; - $report->addedDate = $data['weekStart'] . ' 00:00:00'; - $report->weeklyDate = str_replace('-', '', $data['weekStart']); + $report->project = $data['project']; + $report->title = sprintf($this->lang->upgrade->weeklyReportTitle, $weekNumber, $data['weekStart'], $weekEnd); + $report->reportModule = 'week'; + $report->addedDate = $data['weekStart'] . ' 00:00:00'; + $report->weeklyDate = str_replace('-', '', $data['weekStart']); } else { - $report->title = $this->lang->upgrade->milestoneTitle; - $report->module = 'milestone'; - $report->project = $data['id']; - $report->addedDate = helper::now(); + $report->title = $this->lang->upgrade->milestoneTitle; + $report->reportModule = 'milestone'; + $report->project = $data['id']; + $report->addedDate = helper::now(); } $report->templateType = 'projectReport'; From 2fa92b3fb7b0b30a313959e2f02adf5cccd6c622 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 7 Nov 2025 10:50:48 +0800 Subject: [PATCH 4/5] * [bug#67031,done,0.2h] fix module tree active error. --- lib/zin/wg/modulemenu/v1.php | 2 +- module/execution/ui/task.html.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/zin/wg/modulemenu/v1.php b/lib/zin/wg/modulemenu/v1.php index e6800ede7d..aa240acccc 100644 --- a/lib/zin/wg/modulemenu/v1.php +++ b/lib/zin/wg/modulemenu/v1.php @@ -94,7 +94,7 @@ class moduleMenu extends wg $items = $this->buildMenuTree($child->id); if($items) $item['items'] = $items; - if($child->id == $activeKey || $child->id == 'product-' . $activeKey) + if($child->id === $activeKey || $child->id === 'product-' . $activeKey) { $itemKey = $this->prop('checkbox') ? 'checked' : 'selected'; $item[$itemKey] = true; diff --git a/module/execution/ui/task.html.php b/module/execution/ui/task.html.php index 0171b2b227..4b52932d89 100644 --- a/module/execution/ui/task.html.php +++ b/module/execution/ui/task.html.php @@ -239,7 +239,7 @@ if(!$isFromDoc) moduleMenu ( set::modules($moduleTree), - set::activeKey($activeKey), + set::activeKey($status == 'byProduct' ? "product-{$activeKey}" : $activeKey), set::settingLink(createLink('tree', 'browsetask', "rootID=$execution->id&productID=0")), set::settingApp($execution->multiple ? 'execution' : 'project'), set::closeLink(createLink('execution', 'task', "executionID={$executionID}")), From fac76c8d7b65e7c80f84a3e5d4b6d7a144806ee5 Mon Sep 17 00:00:00 2001 From: tianshujie Date: Fri, 7 Nov 2025 10:53:04 +0800 Subject: [PATCH 5/5] * [unittest] fix createmilestonereport file error. --- module/project/test/tao/createmilestonereport.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/module/project/test/tao/createmilestonereport.php b/module/project/test/tao/createmilestonereport.php index 67874b8823..c72209f3ab 100644 --- a/module/project/test/tao/createmilestonereport.php +++ b/module/project/test/tao/createmilestonereport.php @@ -10,7 +10,7 @@ cid=1 - 属性title @里程碑报告 - 属性project @1 - 属性templateType @projectReport - - 属性module @milestone + - 属性reportModule @milestone - 属性addedBy @system */ @@ -27,4 +27,4 @@ $projectModel = $tester->loadModel('project'); $projectModel->createMilestoneReport(1); $report = $tester->dao->select('*')->from(TABLE_DOC)->fetch(); -r($report) && p('title,project,templateType,module,addedBy') && e('里程碑报告,1,projectReport,milestone,system'); // 测试创建里程碑报告 +r($report) && p('title,project,templateType,reportModule,addedBy') && e('里程碑报告,1,projectReport,milestone,system'); // 测试创建里程碑报告