diff --git a/db/update18.1.sql b/db/update18.1.sql index 7a9b0d9d6a..feba83e887 100644 --- a/db/update18.1.sql +++ b/db/update18.1.sql @@ -4,6 +4,7 @@ update `zt_task` set `assignedTo` = '' where `mode` = 'multi' and `status` != 'd REPLACE INTO `zt_lang` (`lang`, `module`, `section`, `key`, `value`, `system`, `vision`) SELECT `lang`, `module`, 'scrumClassify', `key`, `value`, `system`, `vision` FROM `zt_lang` WHERE `module` = 'process' and `section` = 'classify' ORDER BY id ASC; REPLACE INTO `zt_lang` (`lang`, `module`, `section`, `key`, `value`, `system`, `vision`) SELECT `lang`, `module`, 'agileplusClassify', `key`, `value`, `system`, `vision` FROM `zt_lang` WHERE `module` = 'process' and `section` = 'classify' ORDER BY id ASC; +REPLACE INTO `zt_lang` (`lang`, `module`, `section`, `key`, `value`, `system`, `vision`) SELECT `lang`, `module`, 'waterfallplusClassify', `key`, `value`, `system`, `vision` FROM `zt_lang` WHERE `module` = 'process' and `section` = 'classify' ORDER BY id ASC; UPDATE `zt_project` AS parent INNER JOIN (select `id`,`parent`,`attribute` from `zt_project` where `parent` != 0 and `type` = 'stage') AS child ON parent.`id` = child.`parent` SET parent.`attribute`='mix' where parent.`grade`=1 and parent.`type`='stage' and parent.`attribute` != child.`attribute`; @@ -20,3 +21,7 @@ REPLACE INTO `zt_stage` (`name`,`percent`,`type`, `projectType`, `createdBy`,`cr ('发布','10','release','waterfallplus','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), ('总结评审','5','review','waterfallplus','admin','2020-02-08 21:08:45','admin','2020-02-12 13:50:27','0'); +ALTER table `zt_reviewcl` ADD `type` varchar(255) NOT NULL DEFAULT '' AFTER `category`; +UPDATE `zt_reviewcl` SET `type` = 'waterfall' WHERE `type` = ''; + +UPDATE `zt_activity` SET `order` = `id` * 5 WHERE `order` = '0'; diff --git a/db/zentao.sql b/db/zentao.sql index b7c0f371e0..cad8faf602 100755 --- a/db/zentao.sql +++ b/db/zentao.sql @@ -1488,6 +1488,7 @@ CREATE TABLE IF NOT EXISTS `zt_stage` ( `name` varchar(255) NOT NULL, `percent` varchar(255) NOT NULL, `type` varchar(255) NOT NULL, + `projectType` varchar(255) NOT NULL, `createdBy` varchar(30) NOT NULL, `createdDate` datetime NOT NULL, `editedBy` varchar(30) NOT NULL, @@ -6397,7 +6398,7 @@ REPLACE INTO `zt_stage` (`name`,`percent`,`type`,`projectType`,`createdBy`,`crea ('开发','50','dev','waterfall','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), ('测试','15','qa','waterfall','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), ('发布','10','release','waterfall','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), -('总结评审','5','review','waterfall','admin','2020-02-08 21:08:45','admin','2020-02-12 13:50:27','0'); +('总结评审','5','review','waterfall','admin','2020-02-08 21:08:45','admin','2020-02-12 13:50:27','0'), ('需求','10','request','waterfallplus','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), ('设计','10','design','waterfallplus','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), ('开发','50','dev','waterfallplus','admin','2020-02-08 21:08:30','admin','2020-02-12 13:50:27','0'), @@ -9707,6 +9708,7 @@ CREATE TABLE IF NOT EXISTS `zt_reviewcl` ( `title` varchar(255) NOT NULL, `object` char(30) NOT NULL, `category` char(30) NOT NULL, + `type` varchar(255) NOT NULL, `assignedTo` varchar(30) NOT NULL, `order` mediumint(8) DEFAULT '0', `status` varchar(30) NOT NULL, diff --git a/extension/lite/group/ext/lang/resource.php b/extension/lite/group/ext/lang/resource.php index 3ba031f0f2..7cb8bd18cf 100644 --- a/extension/lite/group/ext/lang/resource.php +++ b/extension/lite/group/ext/lang/resource.php @@ -649,7 +649,7 @@ $lang->resource->custom = new stdclass(); $lang->resource->custom->index = 'index'; $lang->resource->custom->set = 'set'; $lang->resource->custom->product = 'productName'; -$lang->resource->custom->execution = 'execution'; +$lang->resource->custom->execution = 'executionCommon'; $lang->resource->custom->required = 'required'; $lang->resource->custom->restore = 'restore'; $lang->resource->custom->flow = 'flow'; diff --git a/module/admin/css/index.css b/module/admin/css/index.css index fd06878df7..72321537fa 100755 --- a/module/admin/css/index.css +++ b/module/admin/css/index.css @@ -57,9 +57,11 @@ .official {justify-content: center;} .official > .panel-title {position: absolute; top: 0px;} .official-img {background-image: url('/static/images/wechat.jpg'); background-repeat: no-repeat; background-size: contain; flex: 1 1 30%; aspect-ratio: 1 / 1; background-position: center;} -.official-content {flex: 0 0 60%; display: flex; flex-direction: column; justify-content: center; padding-left: 10px;} +.official-content {flex: 0 0 60%; display: flex; flex-direction: column; padding-left: 10px; padding-top: 15px;} .official-content > .content {color: #838A9D; font-size: 12px; line-height: 22px; padding-top: 6px;} .official-content > .title {color: #313C52; font-size: 13px; line-height: 14px;} +.panel-link {color: #313c52; padding-left: 10px; font-size: 13px;} +.panel-link > a {border-bottom: 1px solid;} .classList > .classItem {flex: 1 1 30%; margin: 5px 5px 16px 5px; border: 1px solid rgba(227, 228, 233, 0.6); border-radius: 4px; padding-bottom: 5px; align-items: center;} .classItem > .imgBack {flex: 1 1 50%;} diff --git a/module/admin/lang/de.php b/module/admin/lang/de.php index 6ba6dae130..18acddc1f7 100755 --- a/module/admin/lang/de.php +++ b/module/admin/lang/de.php @@ -72,6 +72,7 @@ $lang->admin->registerNotice->click = 'Bitte registieren Sie sich hier'; $lang->admin->registerNotice->lblAccount = 'mindestens 3 Zeichen bitte; mit Buchsten und Ziffern.'; $lang->admin->registerNotice->lblPasswd = 'mindestens 6 Zeichen bitte; mit Buchsten und Ziffern.'; $lang->admin->registerNotice->submit = 'Registieren'; +$lang->admin->registerNotice->submitHere = 'RegistierenHere'; $lang->admin->registerNotice->bind = "Verbinde bestehendes Konto"; $lang->admin->registerNotice->success = "Sie haben sich erfolgreich registriert!"; diff --git a/module/admin/lang/fr.php b/module/admin/lang/fr.php index 71acb72380..2039c78d4c 100755 --- a/module/admin/lang/fr.php +++ b/module/admin/lang/fr.php @@ -72,6 +72,7 @@ $lang->admin->registerNotice->click = "S'enregistrer ici"; $lang->admin->registerNotice->lblAccount = '>= 3 lettres et chiffres'; $lang->admin->registerNotice->lblPasswd = '>= 6 lettres et chiffres'; $lang->admin->registerNotice->submit = "S'enregistrer"; +$lang->admin->registerNotice->submitHere = "S'enregistrer here"; $lang->admin->registerNotice->bind = "S'associer à un compte existant"; $lang->admin->registerNotice->success = "Vous êtes enregistré !"; diff --git a/module/admin/lang/menu.php b/module/admin/lang/menu.php index 80454b8b46..deb8d5c52c 100644 --- a/module/admin/lang/menu.php +++ b/module/admin/lang/menu.php @@ -188,8 +188,11 @@ if($config->edition != 'max') if(!helper::hasFeature('waterfall')) { unset($lang->admin->menuList->model['subMenu']['waterfall']); - unset($lang->admin->menuList->model['subMenu']['waterfallplus']); unset($lang->admin->menuList->model['menuOrder']['15']); +} +if(!helper::hasFeature('waterfallplus')) +{ + unset($lang->admin->menuList->model['subMenu']['waterfallplus']); unset($lang->admin->menuList->model['menuOrder']['25']); } if($config->edition == 'max') diff --git a/module/admin/lang/vi.php b/module/admin/lang/vi.php index feff21edda..aafc0994bd 100755 --- a/module/admin/lang/vi.php +++ b/module/admin/lang/vi.php @@ -52,6 +52,7 @@ $lang->admin->registerNotice->click = 'Đăng ký'; $lang->admin->registerNotice->lblAccount = '>= 3 chữ và số'; $lang->admin->registerNotice->lblPasswd = '>= 6 chữ và số'; $lang->admin->registerNotice->submit = 'Gửi'; +$lang->admin->registerNotice->submitHere = 'submitHere'; $lang->admin->registerNotice->bind = "Kết nối với tài khoản đang tồn tại"; $lang->admin->registerNotice->success = "Bạn đã đăng ký!"; diff --git a/module/admin/lang/zh-cn.php b/module/admin/lang/zh-cn.php index ab9f757940..c9ba4e745a 100755 --- a/module/admin/lang/zh-cn.php +++ b/module/admin/lang/zh-cn.php @@ -61,7 +61,7 @@ $lang->admin->info->account = "您的禅道社区账户为%s。"; $lang->admin->info->log = '超出存天数的日志会被删除,需要开启计划任务。'; $lang->admin->notice = new stdclass(); -$lang->admin->notice->register = "友情提示:您还未在禅道社区(www.zentao.net)登记,%s进行登记,以及时获得禅道最新信息。"; +$lang->admin->notice->register = "可%s禅道社区 www.zentao.net, 及时获得禅道最新信息。"; $lang->admin->notice->ignore = "不再提示"; $lang->admin->notice->int = "『%s』应当是正整数。"; @@ -72,6 +72,7 @@ $lang->admin->registerNotice->click = '点击此处'; $lang->admin->registerNotice->lblAccount = '请设置您的用户名,英文字母和数字的组合,三位以上。'; $lang->admin->registerNotice->lblPasswd = '请设置您的密码。数字和字母的组合,六位以上。'; $lang->admin->registerNotice->submit = '登记'; +$lang->admin->registerNotice->submitHere = '在此登记'; $lang->admin->registerNotice->bind = "绑定已有帐号"; $lang->admin->registerNotice->success = "登记账户成功"; diff --git a/module/admin/view/index.html.php b/module/admin/view/index.html.php index 40a03cf45d..f695d67c5f 100755 --- a/module/admin/view/index.html.php +++ b/module/admin/view/index.html.php @@ -42,7 +42,7 @@

name;?>

-

+

@@ -53,19 +53,22 @@
admin->officialAccount?>
-
-
-
-
- admin->followUs?> - - - +
+
+
+
+ admin->followUs?> + + +
-
admin->followUsContent?>
-
+
admin->followUsContent?>
+
+
+ + +
-
@@ -75,7 +78,7 @@
-
+
name;?>
diff --git a/module/execution/control.php b/module/execution/control.php index 23e12a6ecc..b97958c31b 100644 --- a/module/execution/control.php +++ b/module/execution/control.php @@ -1876,7 +1876,6 @@ class execution extends control $this->view->title = $this->app->tab == 'execution' ? $this->lang->execution->createExec : $this->lang->execution->create; $this->view->position[] = $this->view->title; $this->view->gobackLink = (isset($output['from']) and $output['from'] == 'global') ? $this->createLink('execution', 'all') : ''; - $this->view->executions = array('' => '') + $this->execution->getList($projectID); $this->view->groups = $this->loadModel('group')->getPairs(); $this->view->allProducts = $allProducts; $this->view->acl = $acl; @@ -1887,7 +1886,7 @@ class execution extends control $this->view->teams = array(0 => '') + $this->execution->getCanCopyObjects((int)$projectID); $this->view->allProjects = array(0 => '') + $this->project->getPairsByModel('all', 0, 'noclosed,multiple'); $this->view->copyProjects = $copyProjects; - $this->view->copyExecutions = array('' => '') + $this->execution->getList($copyProjectID); + $this->view->copyExecutions = array('' => '') + $this->execution->getList($copyProjectID, 'all', 'all', 0, 0, 0, null, false); $this->view->executionID = $executionID; $this->view->productID = $productID; $this->view->projectID = $projectID; @@ -4447,7 +4446,7 @@ class execution extends control */ public function ajaxGetCopyProjectExecutions($projectID = 0) { - $executions = $this->execution->getList($projectID); + $executions = $this->execution->getList($projectID, 'all', 'all', 0, 0, 0, null, false); echo json_encode($executions); } diff --git a/module/execution/js/common.js b/module/execution/js/common.js index 37b32040ba..92ca8e7134 100644 --- a/module/execution/js/common.js +++ b/module/execution/js/common.js @@ -177,9 +177,6 @@ function loadBranches(product) disableSelectedProduct(); } - var branch = $('#branch' + index); - loadPlans(product, branch); - if(typeof isStage != 'undefined' && isStage == true) { $tableRow.find("select[name^='branch'] option").attr('selected', 'selected'); @@ -187,6 +184,9 @@ function loadBranches(product) $tableRow.find("div[id^='branch']").addClass('chosen-disabled'); } }); + + var branch = $('#branch' + index); + loadPlans(product, branch); } /** diff --git a/module/execution/model.php b/module/execution/model.php index dd1dc9d835..76f9b07418 100755 --- a/module/execution/model.php +++ b/module/execution/model.php @@ -1742,10 +1742,11 @@ class executionModel extends model * @param int $productID * @param int $branch * @param object $pager + * @param bool $withChildren * @access public * @return array */ - public function getList($projectID = 0, $type = 'all', $status = 'all', $limit = 0, $productID = 0, $branch = 0, $pager = null) + public function getList($projectID = 0, $type = 'all', $status = 'all', $limit = 0, $productID = 0, $branch = 0, $pager = null, $withChildren = true) { if($status == 'involved') return $this->getInvolvedExecutionList($projectID, $status, $limit, $productID, $branch); @@ -1762,6 +1763,7 @@ class executionModel extends model ->beginIF($branch)->andWhere('t1.branch')->eq($branch)->fi() ->beginIF($status != 'all' and $status != 'undone')->andWhere('status')->in($status)->fi() ->beginIF(!$this->app->user->admin)->andWhere('t2.id')->in($this->app->user->view->sprints)->fi() + ->beginIF(!$withChildren)->andWhere('grade')->eq(1)->fi() ->orderBy('order_desc') ->page($pager) ->beginIF($limit)->limit($limit)->fi() @@ -1778,6 +1780,7 @@ class executionModel extends model ->beginIF($status == 'undone')->andWhere('status')->notIN('done,closed')->fi() ->beginIF($status != 'all' and $status != 'undone')->andWhere('status')->in($status)->fi() ->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->sprints)->fi() + ->beginIF(!$withChildren)->andWhere('grade')->eq(1)->fi() ->orderBy('order_desc') ->page($pager) ->beginIF($limit)->limit($limit)->fi() diff --git a/module/execution/view/create.html.php b/module/execution/view/create.html.php index bb3d9a2e73..cb134dfd7e 100644 --- a/module/execution/view/create.html.php +++ b/module/execution/view/create.html.php @@ -309,15 +309,14 @@