diff --git a/api/v1/entries/bugs.php b/api/v1/entries/bugs.php index b46672c9d5..d3fdb496c6 100644 --- a/api/v1/entries/bugs.php +++ b/api/v1/entries/bugs.php @@ -76,8 +76,12 @@ class bugsEntry extends entry * @access public * @return void */ - public function post($productID) + public function post($productID = 0) { + if(!$productID) $productID = $this->param('product'); + if(!$productID and isset($this->requestBody->product)) $productID = $this->requestBody->product; + if(!$productID) return $this->sendError(400, 'Need product id.'); + $fields = 'title,project,execution,openedBuild,assignedTo,pri,severity,type,story'; $this->batchSetPost($fields); diff --git a/api/v1/entries/testcase.php b/api/v1/entries/testcase.php index 9aa791f9a8..dd23826add 100644 --- a/api/v1/entries/testcase.php +++ b/api/v1/entries/testcase.php @@ -28,7 +28,10 @@ class testcaseEntry extends entry if(isset($data->status) and $data->status == 'fail') return $this->sendError(400, $data->message); if(!isset($data->case)) $this->sendError(400, 'error'); - $this->send(200, $this->format($data->case, 'openedDate:time,lastEditedDate:time,lastRunDate:time,scriptedDate:date,reviewedDate:date,deleted:bool')); + $case = $data->case; + $case->steps = (isset($case->steps) and !empty($case->steps)) ? array_values(get_object_vars($case->steps)) : array(); + + $this->send(200, $this->format($case, 'openedDate:time,lastEditedDate:time,lastRunDate:time,scriptedDate:date,reviewedDate:date,deleted:bool')); } /** diff --git a/api/v1/entries/testcases.php b/api/v1/entries/testcases.php index 62dac12bb4..90e273ea8d 100644 --- a/api/v1/entries/testcases.php +++ b/api/v1/entries/testcases.php @@ -57,4 +57,53 @@ class testcasesEntry extends entry return $this->sendError(400, 'error'); } + + /** + * POST method. + * + * @param int $productID + * @access public + * @return void + */ + public function post($productID = 0) + { + if(!$productID) $productID = $this->param('product'); + if(!$productID and isset($this->requestBody->product)) $productID = $this->requestBody->product; + if(!$productID) return $this->sendError(400, 'Need product id.'); + + $fields = 'module,type,stage,story,title,precondition,pri'; + $this->batchSetPost($fields); + $this->setPost('product', $productID); + + /* Set steps and expects. */ + if(isset($this->requestBody->steps)) + { + $steps = array(); + $expects = array(); + $stepType = array(); + foreach($this->requestBody->steps as $step) + { + $steps[] = $step->desc; + $expects[] = $step->expect; + $stepType[] = 'item'; + } + $this->setPost('steps', $steps); + $this->setPost('expects', $expects); + $this->setPost('stepType', $stepType); + } + + $control = $this->loadController('testcase', 'create'); + $this->requireFields('title,type,pri,steps'); + + $control->create(0); + + $data = $this->getData(); + if(isset($data->result) and $data->result == 'fail') return $this->sendError(400, $data->message); + if(isset($data->result) and !isset($data->id)) return $this->sendError(400, $data->message); + + $case = $this->loadModel('testcase')->getByID($data->id); + $case->steps = (isset($case->steps) and !empty($case->steps)) ? array_values($case->steps) : array(); + + $this->send(200, $this->format($case, 'openedDate:time,lastEditedDate:time,lastRunDate:time,scriptedDate:date,reviewedDate:date,deleted:bool')); + } } diff --git a/db/standard/zentao15.5.sql b/db/standard/zentao15.5.sql new file mode 100644 index 0000000000..74749dc2eb --- /dev/null +++ b/db/standard/zentao15.5.sql @@ -0,0 +1,1268 @@ +CREATE TABLE `zt_acl` ( + `id` mediumint(9) NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `objectType` char(30) NOT NULL, + `objectID` mediumint(9) NOT NULL DEFAULT 0, + `type` char(40) NOT NULL DEFAULT 'whitelist', + `source` char(30) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_action` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `objectType` varchar(30) NOT NULL DEFAULT '', + `objectID` mediumint(8) unsigned NOT NULL DEFAULT 0, + `product` varchar(255) NOT NULL, + `project` mediumint(8) unsigned NOT NULL, + `execution` mediumint(8) unsigned NOT NULL, + `actor` varchar(100) NOT NULL DEFAULT '', + `action` varchar(30) NOT NULL DEFAULT '', + `date` datetime NOT NULL, + `comment` text NOT NULL, + `extra` text NOT NULL, + `read` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `date` (`date`), + KEY `actor` (`actor`), + KEY `project` (`project`), + KEY `action` (`action`), + KEY `objectID` (`objectID`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_block` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `module` varchar(20) NOT NULL, + `type` char(30) NOT NULL, + `title` varchar(100) NOT NULL, + `source` varchar(20) NOT NULL, + `block` varchar(20) NOT NULL, + `params` text NOT NULL, + `order` tinyint(3) unsigned NOT NULL DEFAULT 0, + `grid` tinyint(3) unsigned NOT NULL DEFAULT 0, + `height` smallint(5) unsigned NOT NULL DEFAULT 0, + `hidden` tinyint(1) unsigned NOT NULL DEFAULT 0, + PRIMARY KEY (`id`), + UNIQUE KEY `account_module_type_order` (`account`,`module`,`type`,`order`), + KEY `account` (`account`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_branch` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `product` mediumint(8) unsigned NOT NULL, + `name` varchar(255) NOT NULL, + `order` smallint(5) unsigned NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_bug` ( + `id` mediumint(8) NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `module` mediumint(8) unsigned NOT NULL DEFAULT 0, + `execution` mediumint(8) unsigned NOT NULL DEFAULT 0, + `plan` mediumint(8) unsigned NOT NULL DEFAULT 0, + `story` mediumint(8) unsigned NOT NULL DEFAULT 0, + `storyVersion` smallint(6) NOT NULL DEFAULT 1, + `task` mediumint(8) unsigned NOT NULL DEFAULT 0, + `toTask` mediumint(8) unsigned NOT NULL DEFAULT 0, + `toStory` mediumint(8) NOT NULL DEFAULT 0, + `title` varchar(255) NOT NULL, + `keywords` varchar(255) NOT NULL, + `severity` tinyint(4) NOT NULL DEFAULT 0, + `pri` tinyint(3) unsigned NOT NULL, + `type` varchar(30) NOT NULL DEFAULT '', + `os` varchar(30) NOT NULL DEFAULT '', + `browser` varchar(30) NOT NULL DEFAULT '', + `hardware` varchar(30) NOT NULL, + `found` varchar(30) NOT NULL DEFAULT '', + `steps` text NOT NULL, + `status` enum('active','resolved','closed') NOT NULL DEFAULT 'active', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `color` char(7) NOT NULL, + `confirmed` tinyint(1) NOT NULL DEFAULT 0, + `activatedCount` smallint(6) NOT NULL, + `activatedDate` datetime NOT NULL, + `mailto` text DEFAULT NULL, + `openedBy` varchar(30) NOT NULL DEFAULT '', + `openedDate` datetime NOT NULL, + `openedBuild` varchar(255) NOT NULL, + `assignedTo` varchar(30) NOT NULL DEFAULT '', + `assignedDate` datetime NOT NULL, + `deadline` date NOT NULL, + `resolvedBy` varchar(30) NOT NULL DEFAULT '', + `resolution` varchar(30) NOT NULL DEFAULT '', + `resolvedBuild` varchar(30) NOT NULL DEFAULT '', + `resolvedDate` datetime NOT NULL, + `closedBy` varchar(30) NOT NULL DEFAULT '', + `closedDate` datetime NOT NULL, + `duplicateBug` mediumint(8) unsigned NOT NULL, + `linkBug` varchar(255) NOT NULL, + `case` mediumint(8) unsigned NOT NULL, + `caseVersion` smallint(6) NOT NULL DEFAULT 1, + `result` mediumint(8) unsigned NOT NULL, + `repo` mediumint(8) unsigned NOT NULL, + `entry` varchar(255) NOT NULL, + `lines` varchar(10) NOT NULL, + `v1` varchar(40) NOT NULL, + `v2` varchar(40) NOT NULL, + `repoType` varchar(30) NOT NULL DEFAULT '', + `testtask` mediumint(8) unsigned NOT NULL, + `lastEditedBy` varchar(30) NOT NULL DEFAULT '', + `lastEditedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `execution` (`execution`), + KEY `status` (`status`), + KEY `plan` (`plan`), + KEY `story` (`story`), + KEY `case` (`case`), + KEY `toStory` (`toStory`), + KEY `result` (`result`), + KEY `assignedTo` (`assignedTo`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_build` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `execution` mediumint(8) unsigned NOT NULL DEFAULT 0, + `name` char(150) NOT NULL, + `scmPath` char(255) NOT NULL, + `filePath` char(255) NOT NULL, + `date` date NOT NULL, + `stories` text NOT NULL, + `bugs` text NOT NULL, + `builder` char(30) NOT NULL DEFAULT '', + `desc` text NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `execution` (`execution`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_burn` ( + `execution` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `task` mediumint(8) unsigned NOT NULL DEFAULT 0, + `date` date NOT NULL, + `estimate` float NOT NULL, + `left` float NOT NULL, + `consumed` float NOT NULL, + `storyPoint` float NOT NULL, + PRIMARY KEY (`execution`,`date`,`task`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_case` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `execution` mediumint(8) unsigned NOT NULL, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `lib` mediumint(8) unsigned NOT NULL DEFAULT 0, + `module` mediumint(8) unsigned NOT NULL DEFAULT 0, + `path` mediumint(8) unsigned NOT NULL DEFAULT 0, + `story` mediumint(30) unsigned NOT NULL DEFAULT 0, + `storyVersion` smallint(6) NOT NULL DEFAULT 1, + `title` varchar(255) NOT NULL, + `precondition` text NOT NULL, + `keywords` varchar(255) NOT NULL, + `pri` tinyint(3) unsigned NOT NULL DEFAULT 3, + `type` char(30) NOT NULL DEFAULT '1', + `auto` varchar(10) NOT NULL DEFAULT 'no', + `frame` varchar(10) NOT NULL, + `stage` varchar(255) NOT NULL, + `howRun` varchar(30) NOT NULL, + `scriptedBy` varchar(30) NOT NULL, + `scriptedDate` date NOT NULL, + `scriptStatus` varchar(30) NOT NULL, + `scriptLocation` varchar(255) NOT NULL, + `status` char(30) NOT NULL DEFAULT '1', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `color` char(7) NOT NULL, + `frequency` enum('1','2','3') NOT NULL DEFAULT '1', + `order` tinyint(30) unsigned NOT NULL DEFAULT 0, + `openedBy` char(30) NOT NULL DEFAULT '', + `openedDate` datetime NOT NULL, + `reviewedBy` varchar(255) NOT NULL, + `reviewedDate` date NOT NULL, + `lastEditedBy` char(30) NOT NULL DEFAULT '', + `lastEditedDate` datetime NOT NULL, + `version` tinyint(3) unsigned NOT NULL DEFAULT 0, + `linkCase` varchar(255) NOT NULL, + `fromBug` mediumint(8) unsigned NOT NULL, + `fromCaseID` mediumint(8) unsigned NOT NULL, + `fromCaseVersion` mediumint(8) unsigned NOT NULL DEFAULT 1, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + `lastRunner` varchar(30) NOT NULL, + `lastRunDate` datetime NOT NULL, + `lastRunResult` char(30) NOT NULL, + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `story` (`story`), + KEY `fromBug` (`fromBug`), + KEY `module` (`module`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_casestep` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `parent` mediumint(8) unsigned NOT NULL DEFAULT 0, + `case` mediumint(8) unsigned NOT NULL DEFAULT 0, + `version` smallint(3) unsigned NOT NULL DEFAULT 0, + `type` varchar(10) NOT NULL DEFAULT 'step', + `desc` text NOT NULL, + `expect` text NOT NULL, + PRIMARY KEY (`id`), + KEY `case` (`case`), + KEY `version` (`version`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_company` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` char(120) DEFAULT NULL, + `phone` char(20) DEFAULT NULL, + `fax` char(20) DEFAULT NULL, + `address` char(120) DEFAULT NULL, + `zipcode` char(10) DEFAULT NULL, + `website` char(120) DEFAULT NULL, + `backyard` char(120) DEFAULT NULL, + `guest` enum('1','0') NOT NULL DEFAULT '0', + `admins` char(255) DEFAULT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_compile` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `job` mediumint(8) unsigned NOT NULL, + `queue` mediumint(8) NOT NULL, + `status` varchar(255) NOT NULL, + `logs` text DEFAULT NULL, + `atTime` varchar(10) NOT NULL, + `testtask` mediumint(8) unsigned NOT NULL, + `tag` varchar(255) NOT NULL, + `times` tinyint(3) unsigned NOT NULL DEFAULT 0, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `updateDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_config` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `owner` char(30) NOT NULL DEFAULT '', + `module` varchar(30) NOT NULL, + `section` char(30) NOT NULL DEFAULT '', + `key` char(30) NOT NULL DEFAULT '', + `value` longtext NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `unique` (`owner`,`module`,`section`,`key`) +) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8; +CREATE TABLE `zt_cron` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `m` varchar(20) NOT NULL, + `h` varchar(20) NOT NULL, + `dom` varchar(20) NOT NULL, + `mon` varchar(20) NOT NULL, + `dow` varchar(20) NOT NULL, + `command` text NOT NULL, + `remark` varchar(255) NOT NULL, + `type` varchar(20) NOT NULL, + `buildin` tinyint(1) NOT NULL DEFAULT 0, + `status` varchar(20) NOT NULL, + `lastTime` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `lastTime` (`lastTime`) +) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8; +CREATE TABLE `zt_dept` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` char(60) NOT NULL, + `parent` mediumint(8) unsigned NOT NULL DEFAULT 0, + `path` char(255) NOT NULL DEFAULT '', + `grade` tinyint(3) unsigned NOT NULL DEFAULT 0, + `order` smallint(4) unsigned NOT NULL DEFAULT 0, + `position` char(30) NOT NULL DEFAULT '', + `function` char(255) NOT NULL DEFAULT '', + `manager` char(30) NOT NULL DEFAULT '', + PRIMARY KEY (`id`), + KEY `parent` (`parent`), + KEY `path` (`path`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_doc` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `execution` mediumint(8) unsigned NOT NULL, + `lib` varchar(30) NOT NULL, + `module` varchar(30) NOT NULL, + `title` varchar(255) NOT NULL, + `keywords` varchar(255) NOT NULL, + `type` varchar(30) NOT NULL, + `views` smallint(5) unsigned NOT NULL, + `draft` longtext NOT NULL, + `collector` text NOT NULL, + `addedBy` varchar(30) NOT NULL, + `addedDate` datetime NOT NULL, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `mailto` text DEFAULT NULL, + `acl` varchar(10) NOT NULL DEFAULT 'open', + `groups` varchar(255) NOT NULL, + `users` text NOT NULL, + `version` smallint(5) unsigned NOT NULL DEFAULT 1, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `execution` (`execution`), + KEY `lib` (`lib`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_doccontent` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `doc` mediumint(8) unsigned NOT NULL, + `title` varchar(255) NOT NULL, + `digest` varchar(255) NOT NULL, + `content` longtext NOT NULL, + `files` text NOT NULL, + `type` varchar(10) NOT NULL, + `version` smallint(5) unsigned NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `doc_version` (`doc`,`version`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_doclib` ( + `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, + `type` varchar(30) NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `project` mediumint(8) unsigned NOT NULL, + `execution` mediumint(8) unsigned NOT NULL, + `name` varchar(60) NOT NULL, + `acl` varchar(10) NOT NULL DEFAULT 'open', + `groups` varchar(255) NOT NULL, + `users` text NOT NULL, + `main` enum('0','1') NOT NULL DEFAULT '0', + `collector` text NOT NULL, + `order` tinyint(5) unsigned NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `execution` (`execution`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_effort` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `user` char(30) NOT NULL DEFAULT '', + `todo` enum('1','0') NOT NULL DEFAULT '1', + `date` date NOT NULL, + `begin` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `end` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `type` enum('1','2','3') NOT NULL DEFAULT '1', + `idvalue` mediumint(8) unsigned NOT NULL DEFAULT 0, + `name` char(30) NOT NULL DEFAULT '', + `desc` char(255) NOT NULL DEFAULT '', + `status` enum('1','2','3') NOT NULL DEFAULT '1', + PRIMARY KEY (`id`), + KEY `user` (`user`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_entry` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `account` varchar(30) NOT NULL DEFAULT '', + `code` varchar(20) NOT NULL, + `key` varchar(32) NOT NULL, + `freePasswd` enum('0','1') NOT NULL DEFAULT '0', + `ip` varchar(100) NOT NULL, + `desc` text NOT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `calledTime` int(10) unsigned NOT NULL DEFAULT 0, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_expect` ( + `id` mediumint(8) NOT NULL AUTO_INCREMENT, + `userID` mediumint(8) NOT NULL, + `project` mediumint(8) NOT NULL DEFAULT 0, + `expect` text NOT NULL, + `progress` text NOT NULL, + `createdBy` char(30) NOT NULL, + `createdDate` date NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_extension` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(150) NOT NULL, + `code` varchar(30) NOT NULL, + `version` varchar(50) NOT NULL, + `author` varchar(100) NOT NULL, + `desc` text NOT NULL, + `license` text NOT NULL, + `type` varchar(20) NOT NULL DEFAULT 'extension', + `site` varchar(150) NOT NULL, + `zentaoCompatible` varchar(100) NOT NULL, + `installedTime` datetime NOT NULL, + `depends` varchar(100) NOT NULL, + `dirs` mediumtext NOT NULL, + `files` mediumtext NOT NULL, + `status` varchar(20) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `code` (`code`), + KEY `name` (`name`), + KEY `installedTime` (`installedTime`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_file` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `pathname` char(50) NOT NULL, + `title` char(255) NOT NULL, + `extension` char(30) NOT NULL, + `size` int(10) unsigned NOT NULL DEFAULT 0, + `objectType` char(30) NOT NULL, + `objectID` mediumint(9) NOT NULL, + `addedBy` char(30) NOT NULL DEFAULT '', + `addedDate` datetime NOT NULL, + `downloads` mediumint(8) unsigned NOT NULL DEFAULT 0, + `extra` varchar(255) NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `objectType` (`objectType`), + KEY `objectID` (`objectID`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_group` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL DEFAULT 0, + `name` char(30) NOT NULL, + `role` char(30) NOT NULL DEFAULT '', + `desc` char(255) NOT NULL DEFAULT '', + `acl` text DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8; +CREATE TABLE `zt_grouppriv` ( + `group` mediumint(8) unsigned NOT NULL DEFAULT 0, + `module` char(30) NOT NULL DEFAULT '', + `method` char(30) NOT NULL DEFAULT '', + UNIQUE KEY `group` (`group`,`module`,`method`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_history` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `action` mediumint(8) unsigned NOT NULL DEFAULT 0, + `field` varchar(30) NOT NULL DEFAULT '', + `old` text NOT NULL, + `new` text NOT NULL, + `diff` mediumtext NOT NULL, + PRIMARY KEY (`id`), + KEY `action` (`action`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_job` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `repo` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `frame` varchar(20) NOT NULL, + `engine` varchar(20) NOT NULL, + `server` mediumint(8) unsigned NOT NULL, + `pipeline` varchar(500) NOT NULL, + `triggerType` varchar(255) NOT NULL, + `svnDir` varchar(255) NOT NULL, + `atDay` varchar(255) DEFAULT NULL, + `atTime` varchar(10) DEFAULT NULL, + `customParam` text NOT NULL, + `comment` varchar(255) DEFAULT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `lastExec` datetime DEFAULT NULL, + `lastStatus` varchar(255) DEFAULT NULL, + `lastTag` varchar(255) DEFAULT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_lang` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `lang` varchar(30) NOT NULL, + `module` varchar(30) NOT NULL, + `section` varchar(30) NOT NULL, + `key` varchar(60) NOT NULL, + `value` text NOT NULL, + `system` enum('0','1') NOT NULL DEFAULT '1', + PRIMARY KEY (`id`), + UNIQUE KEY `lang` (`lang`,`module`,`section`,`key`) +) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8; +CREATE TABLE `zt_log` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `objectType` varchar(30) NOT NULL, + `objectID` mediumint(8) unsigned NOT NULL, + `action` mediumint(8) unsigned NOT NULL, + `date` datetime NOT NULL, + `url` varchar(255) NOT NULL, + `contentType` varchar(30) NOT NULL, + `data` text NOT NULL, + `result` text NOT NULL, + PRIMARY KEY (`id`), + KEY `objectType` (`objectType`), + KEY `obejctID` (`objectID`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_module` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `root` mediumint(8) unsigned NOT NULL DEFAULT 0, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `name` char(60) NOT NULL DEFAULT '', + `parent` mediumint(8) unsigned NOT NULL DEFAULT 0, + `path` char(255) NOT NULL DEFAULT '', + `grade` tinyint(3) unsigned NOT NULL DEFAULT 0, + `order` smallint(5) unsigned NOT NULL DEFAULT 0, + `type` char(30) NOT NULL, + `owner` varchar(30) NOT NULL, + `collector` text NOT NULL, + `short` varchar(30) NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `root` (`root`), + KEY `type` (`type`), + KEY `path` (`path`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_mr` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `gitlabID` mediumint(8) unsigned NOT NULL, + `sourceProject` int unsigned NOT NULL, + `sourceBranch` varchar(100) NOT NULL, + `targetProject` int unsigned NOT NULL, + `targetBranch` varchar(100) NOT NULL, + `mriid` int unsigned NOT NULL, + `title` varchar(255) NOT NULL, + `description` text NOT NULL, + `assignee` varchar(255) NOT NULL, + `reviewer` varchar(255) NOT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + `status` char(30) NOT NULL, + `mergeStatus` char(30) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_notify` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `objectType` varchar(50) NOT NULL, + `objectID` mediumint(8) unsigned NOT NULL, + `action` mediumint(9) NOT NULL, + `toList` varchar(255) NOT NULL, + `ccList` text NOT NULL, + `subject` varchar(255) NOT NULL, + `data` text NOT NULL, + `createdBy` char(30) NOT NULL, + `createdDate` datetime NOT NULL, + `sendTime` datetime NOT NULL, + `status` varchar(10) NOT NULL DEFAULT 'wait', + `failReason` text NOT NULL, + PRIMARY KEY (`id`), + KEY `objectType_toList_status` (`objectType`,`toList`,`status`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_oauth` ( + `account` varchar(30) NOT NULL, + `openID` varchar(255) NOT NULL, + `providerType` varchar(30) NOT NULL, + `providerID` mediumint(8) unsigned NOT NULL, + KEY `account` (`account`), + KEY `providerType` (`providerType`), + KEY `providerID` (`providerID`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_pipeline` ( + `id` smallint(8) unsigned NOT NULL AUTO_INCREMENT, + `type` char(30) NOT NULL, + `name` varchar(50) NOT NULL, + `url` varchar(255) DEFAULT NULL, + `account` varchar(30) DEFAULT NULL, + `password` varchar(255) NOT NULL, + `token` varchar(255) DEFAULT NULL, + `private` char(32) DEFAULT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_planstory` ( + `plan` mediumint(8) unsigned NOT NULL, + `story` mediumint(8) unsigned NOT NULL, + `order` mediumint(9) NOT NULL, + UNIQUE KEY `plan_story` (`plan`,`story`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_product` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `program` mediumint(8) unsigned NOT NULL, + `name` varchar(90) NOT NULL, + `code` varchar(45) NOT NULL, + `bind` enum('0','1') NOT NULL DEFAULT '0', + `line` mediumint(8) NOT NULL, + `type` varchar(30) NOT NULL DEFAULT 'normal', + `status` varchar(30) NOT NULL DEFAULT '', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `desc` text NOT NULL, + `PO` varchar(30) NOT NULL, + `QD` varchar(30) NOT NULL, + `RD` varchar(30) NOT NULL, + `storyConcept` smallint(5) NOT NULL, + `acl` enum('open','private','custom') NOT NULL DEFAULT 'open', + `whitelist` text NOT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `createdVersion` varchar(20) NOT NULL, + `order` mediumint(8) unsigned NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `acl` (`acl`), + KEY `order` (`order`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_productplan` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `product` mediumint(8) unsigned NOT NULL, + `branch` mediumint(8) unsigned NOT NULL, + `parent` mediumint(9) NOT NULL DEFAULT 0, + `title` varchar(90) NOT NULL, + `desc` text NOT NULL, + `begin` date NOT NULL, + `end` date NOT NULL, + `order` text NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `end` (`end`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_project` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) NOT NULL DEFAULT 0, + `model` char(30) NOT NULL, + `type` char(30) NOT NULL DEFAULT 'sprint', + `product` char(30) NOT NULL DEFAULT 'single', + `lifetime` char(30) NOT NULL DEFAULT '', + `budget` varchar(30) NOT NULL DEFAULT '0', + `budgetUnit` char(30) NOT NULL DEFAULT 'CNY', + `attribute` varchar(30) NOT NULL DEFAULT '', + `percent` float unsigned NOT NULL DEFAULT 0, + `milestone` enum('0','1') NOT NULL DEFAULT '0', + `output` text NOT NULL, + `auth` char(30) NOT NULL, + `parent` mediumint(8) unsigned NOT NULL DEFAULT 0, + `path` varchar(255) NOT NULL, + `grade` tinyint(3) unsigned NOT NULL, + `name` varchar(90) NOT NULL, + `code` varchar(45) NOT NULL, + `begin` date NOT NULL, + `end` date NOT NULL, + `realBegan` date NOT NULL, + `realEnd` date NOT NULL, + `days` smallint(5) unsigned NOT NULL, + `storyConcept` smallint(5) unsigned NOT NULL, + `status` varchar(10) NOT NULL, + `subStatus` varchar(30) NOT NULL DEFAULT '', + `statge` enum('1','2','3','4','5') NOT NULL DEFAULT '1', + `pri` enum('1','2','3','4') NOT NULL DEFAULT '1', + `desc` text NOT NULL, + `version` smallint(6) NOT NULL, + `parentVersion` smallint(6) NOT NULL, + `planDuration` int(11) NOT NULL, + `realDuration` int(11) NOT NULL, + `openedBy` varchar(30) NOT NULL DEFAULT '', + `openedDate` datetime NOT NULL, + `openedVersion` varchar(20) NOT NULL, + `lastEditedBy` varchar(30) NOT NULL DEFAULT '', + `lastEditedDate` datetime NOT NULL, + `closedBy` varchar(30) NOT NULL DEFAULT '', + `closedDate` datetime NOT NULL, + `canceledBy` varchar(30) NOT NULL DEFAULT '', + `canceledDate` datetime NOT NULL, + `PO` varchar(30) NOT NULL DEFAULT '', + `PM` varchar(30) NOT NULL DEFAULT '', + `QD` varchar(30) NOT NULL DEFAULT '', + `RD` varchar(30) NOT NULL DEFAULT '', + `team` varchar(90) NOT NULL, + `acl` char(30) NOT NULL DEFAULT 'open', + `whitelist` text NOT NULL, + `order` mediumint(8) unsigned NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `parent` (`parent`), + KEY `begin` (`begin`), + KEY `end` (`end`), + KEY `status` (`status`), + KEY `acl` (`acl`), + KEY `order` (`order`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_projectcase` ( + `project` mediumint(8) unsigned NOT NULL DEFAULT 0, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `case` mediumint(8) unsigned NOT NULL DEFAULT 0, + `count` mediumint(8) unsigned NOT NULL DEFAULT 1, + `version` smallint(6) NOT NULL DEFAULT 1, + `order` smallint(6) unsigned NOT NULL, + UNIQUE KEY `project` (`project`,`case`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_projectproduct` ( + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `branch` mediumint(8) unsigned NOT NULL, + `plan` mediumint(8) unsigned NOT NULL, + PRIMARY KEY (`project`,`product`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_projectspec` ( + `project` mediumint(8) NOT NULL, + `version` smallint(6) NOT NULL, + `name` varchar(255) NOT NULL, + `milestone` enum('0','1') NOT NULL DEFAULT '0', + `begin` date NOT NULL, + `end` date NOT NULL, + UNIQUE KEY `project` (`project`,`version`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_projectstory` ( + `project` mediumint(8) unsigned NOT NULL DEFAULT 0, + `product` mediumint(8) unsigned NOT NULL, + `story` mediumint(8) unsigned NOT NULL DEFAULT 0, + `version` smallint(6) NOT NULL DEFAULT 1, + `order` smallint(6) unsigned NOT NULL, + UNIQUE KEY `project` (`project`,`story`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_relation` ( + `id` int(8) NOT NULL AUTO_INCREMENT, + `project` mediumint(8) NOT NULL, + `product` mediumint(8) NOT NULL, + `execution` mediumint(8) NOT NULL, + `AType` char(30) NOT NULL, + `AID` mediumint(8) NOT NULL, + `AVersion` char(30) NOT NULL, + `relation` char(30) NOT NULL, + `BType` char(30) NOT NULL, + `BID` mediumint(8) NOT NULL, + `BVersion` char(30) NOT NULL, + `extra` char(30) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `relation` (`product`,`relation`,`AType`,`BType`,`AID`,`BID`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_release` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `build` mediumint(8) unsigned NOT NULL, + `name` varchar(255) NOT NULL DEFAULT '', + `marker` enum('0','1') NOT NULL DEFAULT '0', + `date` date NOT NULL, + `stories` text NOT NULL, + `bugs` text NOT NULL, + `leftBugs` text NOT NULL, + `desc` text NOT NULL, + `mailto` text, + `notify` varchar(255), + `status` varchar(20) NOT NULL DEFAULT 'normal', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `build` (`build`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_repo` ( + `id` mediumint(9) NOT NULL AUTO_INCREMENT, + `product` varchar(255) NOT NULL, + `name` varchar(255) NOT NULL, + `path` varchar(255) NOT NULL, + `prefix` varchar(100) NOT NULL, + `encoding` varchar(20) NOT NULL, + `SCM` varchar(10) NOT NULL, + `client` varchar(100) NOT NULL, + `commits` mediumint(8) unsigned NOT NULL, + `account` varchar(30) NOT NULL, + `password` varchar(30) NOT NULL, + `encrypt` varchar(30) NOT NULL DEFAULT 'plain', + `acl` text NOT NULL, + `synced` tinyint(1) NOT NULL DEFAULT 0, + `lastSync` datetime NOT NULL, + `desc` text NOT NULL, + `extra` char(30) NOT NULL, + `deleted` tinyint(1) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_repobranch` ( + `repo` mediumint(8) unsigned NOT NULL, + `revision` mediumint(8) unsigned NOT NULL, + `branch` varchar(255) NOT NULL, + UNIQUE KEY `repo_revision_branch` (`repo`,`revision`,`branch`), + KEY `branch` (`branch`), + KEY `revision` (`revision`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_repofiles` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `repo` mediumint(8) unsigned NOT NULL, + `revision` mediumint(8) unsigned NOT NULL, + `path` varchar(255) NOT NULL, + `parent` varchar(255) NOT NULL, + `type` varchar(20) NOT NULL, + `action` char(1) NOT NULL, + PRIMARY KEY (`id`), + KEY `path` (`path`), + KEY `parent` (`parent`), + KEY `repo` (`repo`), + KEY `revision` (`revision`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_repohistory` ( + `id` mediumint(9) NOT NULL AUTO_INCREMENT, + `repo` mediumint(9) NOT NULL, + `revision` varchar(40) NOT NULL, + `commit` mediumint(8) unsigned NOT NULL, + `comment` text NOT NULL, + `committer` varchar(100) NOT NULL, + `time` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `repo` (`repo`), + KEY `revision` (`revision`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_score` ( + `id` bigint(12) unsigned NOT NULL AUTO_INCREMENT, + `account` varchar(30) NOT NULL, + `module` varchar(30) NOT NULL DEFAULT '', + `method` varchar(30) NOT NULL, + `desc` varchar(250) NOT NULL DEFAULT '', + `before` int(11) NOT NULL DEFAULT 0, + `score` int(11) NOT NULL DEFAULT 0, + `after` int(11) NOT NULL DEFAULT 0, + `time` datetime NOT NULL, + PRIMARY KEY (`id`), + KEY `account` (`account`), + KEY `model` (`module`), + KEY `method` (`method`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_searchdict` ( + `key` smallint(5) unsigned NOT NULL, + `value` char(3) NOT NULL, + PRIMARY KEY (`key`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_searchindex` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `objectType` char(20) NOT NULL, + `objectID` mediumint(9) NOT NULL, + `title` text NOT NULL, + `content` text NOT NULL, + `addedDate` datetime NOT NULL, + `editedDate` datetime NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `object` (`objectType`,`objectID`), + KEY `addedDate` (`addedDate`), + FULLTEXT KEY `content` (`content`), + FULLTEXT KEY `title` (`title`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_stakeholder` ( + `id` mediumint(8) NOT NULL AUTO_INCREMENT, + `objectID` mediumint(8) NOT NULL, + `objectType` char(30) NOT NULL, + `user` char(30) NOT NULL, + `type` char(30) NOT NULL, + `key` enum('0','1') NOT NULL, + `from` char(30) NOT NULL, + `createdBy` char(30) NOT NULL, + `createdDate` date NOT NULL, + `editedBy` char(30) NOT NULL, + `editedDate` date NOT NULL, + `deleted` enum('0','1') NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_story` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `parent` mediumint(9) NOT NULL DEFAULT 0, + `product` mediumint(8) unsigned NOT NULL DEFAULT 0, + `branch` mediumint(8) unsigned NOT NULL DEFAULT 0, + `module` mediumint(8) unsigned NOT NULL DEFAULT 0, + `plan` text DEFAULT NULL, + `source` varchar(20) NOT NULL, + `sourceNote` varchar(255) NOT NULL, + `fromBug` mediumint(8) unsigned NOT NULL DEFAULT 0, + `title` varchar(255) NOT NULL, + `keywords` varchar(255) NOT NULL, + `type` varchar(30) NOT NULL DEFAULT 'story', + `category` varchar(30) NOT NULL DEFAULT 'feature', + `pri` tinyint(3) unsigned NOT NULL DEFAULT 3, + `estimate` float unsigned NOT NULL, + `status` enum('','changed','active','draft','closed') NOT NULL DEFAULT '', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `color` char(7) NOT NULL, + `stage` enum('','wait','planned','projected','developing','developed','testing','tested','verified','released','closed') NOT NULL DEFAULT 'wait', + `stagedBy` char(30) NOT NULL, + `mailto` text DEFAULT NULL, + `openedBy` varchar(30) NOT NULL DEFAULT '', + `openedDate` datetime NOT NULL, + `assignedTo` varchar(30) NOT NULL DEFAULT '', + `assignedDate` datetime NOT NULL, + `lastEditedBy` varchar(30) NOT NULL DEFAULT '', + `lastEditedDate` datetime NOT NULL, + `reviewedBy` varchar(255) NOT NULL, + `reviewedDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `closedBy` varchar(30) NOT NULL DEFAULT '', + `closedDate` datetime NOT NULL, + `closedReason` varchar(30) NOT NULL, + `toBug` mediumint(8) unsigned NOT NULL, + `childStories` varchar(255) NOT NULL, + `linkStories` varchar(255) NOT NULL, + `duplicateStory` mediumint(8) unsigned NOT NULL, + `version` smallint(6) NOT NULL DEFAULT 1, + `URChanged` enum('0','1') NOT NULL DEFAULT '0', + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `status` (`status`), + KEY `assignedTo` (`assignedTo`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_storyestimate` ( + `story` mediumint(9) NOT NULL, + `round` smallint(6) NOT NULL, + `estimate` text NOT NULL, + `average` float NOT NULL, + `openedBy` varchar(30) NOT NULL, + `openedDate` datetime NOT NULL, + UNIQUE KEY `story` (`story`,`round`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_storyreview` ( + `story` mediumint(9) NOT NULL, + `version` smallint(6) NOT NULL, + `reviewer` varchar(30) NOT NULL, + `result` varchar(30) NOT NULL, + `reviewDate` datetime NOT NULL, + UNIQUE KEY `story` (`story`,`version`,`reviewer`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_storyspec` ( + `story` mediumint(9) NOT NULL, + `version` smallint(6) NOT NULL, + `title` varchar(255) NOT NULL, + `spec` text NOT NULL, + `verify` text NOT NULL, + UNIQUE KEY `story` (`story`,`version`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_storystage` ( + `story` mediumint(8) unsigned NOT NULL, + `branch` mediumint(8) unsigned NOT NULL, + `stage` varchar(50) NOT NULL, + `stagedBy` char(30) NOT NULL, + UNIQUE KEY `story_branch` (`story`,`branch`), + KEY `story` (`story`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_suitecase` ( + `suite` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `case` mediumint(8) unsigned NOT NULL, + `version` smallint(5) unsigned NOT NULL, + UNIQUE KEY `suitecase` (`suite`,`case`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_task` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `parent` mediumint(8) NOT NULL DEFAULT 0, + `execution` mediumint(8) unsigned NOT NULL DEFAULT 0, + `module` mediumint(8) unsigned NOT NULL DEFAULT 0, + `design` mediumint(8) unsigned NOT NULL, + `story` mediumint(8) unsigned NOT NULL DEFAULT 0, + `storyVersion` smallint(6) NOT NULL DEFAULT 1, + `designVersion` smallint(6) unsigned NOT NULL, + `fromBug` mediumint(8) unsigned NOT NULL DEFAULT 0, + `name` varchar(255) NOT NULL, + `type` varchar(20) NOT NULL, + `pri` tinyint(3) unsigned NOT NULL DEFAULT 0, + `estimate` float unsigned NOT NULL, + `consumed` float unsigned NOT NULL, + `left` float unsigned NOT NULL, + `deadline` date NOT NULL, + `status` enum('wait','doing','done','pause','cancel','closed') NOT NULL DEFAULT 'wait', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `color` char(7) NOT NULL, + `mailto` text DEFAULT NULL, + `desc` text NOT NULL, + `version` smallint(6) NOT NULL, + `openedBy` varchar(30) NOT NULL, + `openedDate` datetime NOT NULL, + `assignedTo` varchar(30) NOT NULL, + `assignedDate` datetime NOT NULL, + `estStarted` date NOT NULL, + `realStarted` datetime NOT NULL, + `finishedBy` varchar(30) NOT NULL, + `finishedDate` datetime NOT NULL, + `finishedList` text NOT NULL, + `canceledBy` varchar(30) NOT NULL, + `canceledDate` datetime NOT NULL, + `closedBy` varchar(30) NOT NULL, + `closedDate` datetime NOT NULL, + `planDuration` int(11) NOT NULL, + `realDuration` int(11) NOT NULL, + `closedReason` varchar(30) NOT NULL, + `lastEditedBy` varchar(30) NOT NULL, + `lastEditedDate` datetime NOT NULL, + `activatedDate` date NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `execution` (`execution`), + KEY `story` (`story`), + KEY `parent` (`parent`), + KEY `assignedTo` (`assignedTo`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_taskestimate` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `task` mediumint(8) unsigned NOT NULL DEFAULT 0, + `date` date NOT NULL, + `left` float unsigned NOT NULL DEFAULT 0, + `consumed` float unsigned NOT NULL, + `account` char(30) NOT NULL DEFAULT '', + `work` text DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `task` (`task`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_taskspec` ( + `task` mediumint(8) NOT NULL, + `version` smallint(6) NOT NULL, + `name` varchar(255) NOT NULL, + `estStarted` date NOT NULL, + `deadline` date NOT NULL, + UNIQUE KEY `task` (`task`,`version`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_team` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `root` mediumint(8) unsigned NOT NULL DEFAULT 0, + `type` enum('project','task','execution') NOT NULL DEFAULT 'project', + `account` char(30) NOT NULL DEFAULT '', + `role` char(30) NOT NULL DEFAULT '', + `limited` char(8) NOT NULL DEFAULT 'no', + `join` date NOT NULL DEFAULT '0000-00-00', + `days` smallint(5) unsigned NOT NULL, + `hours` float(3,1) unsigned NOT NULL DEFAULT 0.0, + `estimate` decimal(12,2) unsigned NOT NULL DEFAULT 0.00, + `consumed` decimal(12,2) unsigned NOT NULL DEFAULT 0.00, + `left` decimal(12,2) unsigned NOT NULL DEFAULT 0.00, + `order` tinyint(3) NOT NULL DEFAULT 0, + PRIMARY KEY (`id`), + UNIQUE KEY `team` (`root`,`type`,`account`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_testreport` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `execution` mediumint(8) unsigned NOT NULL, + `tasks` varchar(255) NOT NULL, + `builds` varchar(255) NOT NULL, + `title` varchar(255) NOT NULL, + `begin` date NOT NULL, + `end` date NOT NULL, + `owner` char(30) NOT NULL, + `members` text NOT NULL, + `stories` text NOT NULL, + `bugs` text NOT NULL, + `cases` text NOT NULL, + `report` text NOT NULL, + `objectType` varchar(20) NOT NULL, + `objectID` mediumint(8) unsigned NOT NULL, + `createdBy` char(30) NOT NULL, + `createdDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_testresult` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `run` mediumint(8) unsigned NOT NULL, + `case` mediumint(8) unsigned NOT NULL, + `version` smallint(5) unsigned NOT NULL, + `job` mediumint(8) unsigned NOT NULL, + `compile` mediumint(8) unsigned NOT NULL, + `caseResult` char(30) NOT NULL, + `stepResults` text NOT NULL, + `lastRunner` varchar(30) NOT NULL, + `date` datetime NOT NULL, + `duration` float NOT NULL, + `xml` text NOT NULL, + PRIMARY KEY (`id`), + KEY `case` (`case`), + KEY `version` (`version`), + KEY `run` (`run`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_testrun` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `task` mediumint(8) unsigned NOT NULL DEFAULT 0, + `case` mediumint(8) unsigned NOT NULL DEFAULT 0, + `version` tinyint(3) unsigned NOT NULL DEFAULT 0, + `assignedTo` char(30) NOT NULL DEFAULT '', + `lastRunner` varchar(30) NOT NULL, + `lastRunDate` datetime NOT NULL, + `lastRunResult` char(30) NOT NULL, + `status` char(30) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `task` (`task`,`case`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_testsuite` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `name` varchar(255) NOT NULL, + `desc` text NOT NULL, + `type` varchar(20) NOT NULL, + `addedBy` char(30) NOT NULL, + `addedDate` datetime NOT NULL, + `lastEditedBy` char(30) NOT NULL, + `lastEditedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL, + PRIMARY KEY (`id`), + KEY `product` (`product`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_testtask` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `project` mediumint(8) unsigned NOT NULL, + `product` mediumint(8) unsigned NOT NULL, + `name` char(90) NOT NULL, + `execution` mediumint(8) unsigned NOT NULL DEFAULT 0, + `build` char(30) NOT NULL, + `type` varchar(255) NOT NULL DEFAULT '', + `owner` varchar(30) NOT NULL, + `pri` tinyint(3) unsigned NOT NULL DEFAULT 0, + `begin` date NOT NULL, + `end` date NOT NULL, + `realFinishedDate` datetime NOT NULL, + `mailto` text DEFAULT NULL, + `desc` text NOT NULL, + `report` text NOT NULL, + `status` enum('blocked','doing','wait','done') NOT NULL DEFAULT 'wait', + `testreport` mediumint(8) unsigned NOT NULL, + `auto` varchar(10) NOT NULL DEFAULT 'no', + `subStatus` varchar(30) NOT NULL DEFAULT '', + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `product` (`product`), + KEY `build` (`build`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_todo` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `date` date NOT NULL, + `begin` smallint(4) unsigned zerofill NOT NULL, + `end` smallint(4) unsigned zerofill NOT NULL, + `type` char(10) NOT NULL, + `cycle` tinyint(3) unsigned NOT NULL DEFAULT 0, + `idvalue` mediumint(8) unsigned NOT NULL DEFAULT 0, + `pri` tinyint(3) unsigned NOT NULL, + `name` char(150) NOT NULL, + `desc` text NOT NULL, + `status` enum('wait','doing','done','closed') NOT NULL DEFAULT 'wait', + `private` tinyint(1) NOT NULL, + `config` varchar(255) NOT NULL, + `assignedTo` varchar(30) NOT NULL DEFAULT '', + `assignedBy` varchar(30) NOT NULL DEFAULT '', + `assignedDate` datetime NOT NULL, + `finishedBy` varchar(30) NOT NULL DEFAULT '', + `finishedDate` datetime NOT NULL, + `closedBy` varchar(30) NOT NULL DEFAULT '', + `closedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `account` (`account`), + KEY `assignedTo` (`assignedTo`), + KEY `finishedBy` (`finishedBy`), + KEY `date` (`date`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_user` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `company` mediumint(8) unsigned NOT NULL, + `type` char(30) NOT NULL DEFAULT 'inside', + `dept` mediumint(8) unsigned NOT NULL DEFAULT 0, + `account` char(30) NOT NULL DEFAULT '', + `password` char(32) NOT NULL DEFAULT '', + `role` char(10) NOT NULL DEFAULT '', + `realname` varchar(100) NOT NULL DEFAULT '', + `nickname` char(60) NOT NULL DEFAULT '', + `commiter` varchar(100) NOT NULL, + `avatar` text NOT NULL, + `birthday` date NOT NULL DEFAULT '0000-00-00', + `gender` enum('f','m') NOT NULL DEFAULT 'f', + `email` char(90) NOT NULL DEFAULT '', + `skype` char(90) NOT NULL DEFAULT '', + `qq` char(20) NOT NULL DEFAULT '', + `mobile` char(11) NOT NULL DEFAULT '', + `phone` char(20) NOT NULL DEFAULT '', + `weixin` varchar(90) NOT NULL DEFAULT '', + `dingding` varchar(90) NOT NULL DEFAULT '', + `slack` varchar(90) NOT NULL DEFAULT '', + `whatsapp` varchar(90) NOT NULL DEFAULT '', + `address` char(120) NOT NULL DEFAULT '', + `zipcode` char(10) NOT NULL DEFAULT '', + `nature` text NOT NULL, + `analysis` text NOT NULL, + `strategy` text NOT NULL, + `join` date NOT NULL DEFAULT '0000-00-00', + `visits` mediumint(8) unsigned NOT NULL DEFAULT 0, + `ip` char(15) NOT NULL DEFAULT '', + `last` int(10) unsigned NOT NULL DEFAULT 0, + `fails` tinyint(5) NOT NULL DEFAULT 0, + `locked` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + `ranzhi` char(30) NOT NULL DEFAULT '', + `score` int(11) NOT NULL DEFAULT 0, + `scoreLevel` int(11) NOT NULL DEFAULT 0, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY `account` (`account`), + KEY `dept` (`dept`), + KEY `email` (`email`), + KEY `commiter` (`commiter`), + KEY `deleted` (`deleted`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_usercontact` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `listName` varchar(60) NOT NULL, + `userList` text NOT NULL, + PRIMARY KEY (`id`), + KEY `account` (`account`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_usergroup` ( + `account` char(30) NOT NULL DEFAULT '', + `group` mediumint(8) unsigned NOT NULL DEFAULT 0, + `project` text NOT NULL, + UNIQUE KEY `account` (`account`,`group`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_userquery` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `module` varchar(30) NOT NULL, + `title` varchar(90) NOT NULL, + `form` text NOT NULL, + `sql` text NOT NULL, + `shortcut` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `account` (`account`), + KEY `module` (`module`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_usertpl` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `account` char(30) NOT NULL, + `type` char(30) NOT NULL, + `title` varchar(150) NOT NULL, + `content` text NOT NULL, + `public` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `account` (`account`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_userview` ( + `account` char(30) NOT NULL, + `programs` mediumtext NOT NULL, + `products` mediumtext NOT NULL, + `projects` mediumtext NOT NULL, + `sprints` mediumtext NOT NULL, + UNIQUE KEY `account` (`account`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +CREATE TABLE `zt_webhook` ( + `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, + `type` varchar(15) NOT NULL DEFAULT 'default', + `name` varchar(50) NOT NULL, + `url` varchar(255) NOT NULL, + `domain` varchar(255) NOT NULL, + `secret` varchar(255) NOT NULL, + `contentType` varchar(30) NOT NULL DEFAULT 'application/json', + `sendType` enum('sync','async') NOT NULL DEFAULT 'sync', + `products` text NOT NULL, + `executions` text NOT NULL, + `params` varchar(100) NOT NULL, + `actions` text NOT NULL, + `desc` text NOT NULL, + `createdBy` varchar(30) NOT NULL, + `createdDate` datetime NOT NULL, + `editedBy` varchar(30) NOT NULL, + `editedDate` datetime NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; diff --git a/db/update15.4.sql b/db/update15.4.sql index a43b36fdc8..d9043824ac 100644 --- a/db/update15.4.sql +++ b/db/update15.4.sql @@ -18,7 +18,7 @@ CREATE TABLE `zt_mr` ( `createdDate` datetime NOT NULL, `editedBy` varchar(30) NOT NULL, `editedDate` datetime NOT NULL, - `deleted` tinyint(1) NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', `status` char(30) NOT NULL, `mergeStatus` char(30) NOT NULL, PRIMARY KEY (`id`) diff --git a/db/zentao.sql b/db/zentao.sql index 773ee4c4cb..f75613d858 100644 --- a/db/zentao.sql +++ b/db/zentao.sql @@ -546,7 +546,7 @@ CREATE TABLE IF NOT EXISTS `zt_module` ( KEY `path` (`path`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- DROP TABLE IF EXISTS `zt_mr`; -CREATE TABLE `zt_mr` ( +CREATE TABLE IF NOT EXISTS `zt_mr` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `gitlabID` mediumint(8) unsigned NOT NULL, `sourceProject` int unsigned NOT NULL, @@ -562,7 +562,7 @@ CREATE TABLE `zt_mr` ( `createdDate` datetime NOT NULL, `editedBy` varchar(30) NOT NULL, `editedDate` datetime NOT NULL, - `deleted` tinyint(1) NOT NULL, + `deleted` enum('0','1') NOT NULL DEFAULT '0', `status` char(30) NOT NULL, `mergeStatus` char(30) NOT NULL, PRIMARY KEY (`id`) @@ -1352,7 +1352,8 @@ INSERT INTO `zt_cron` (`m`, `h`, `dom`, `mon`, `dow`, `command`, `remark`, `type ('1', '1', '*', '*', '*', 'moduleName=todo&methodName=createCycle', '生成周期性待办', 'zentao', 1, 'normal', '0000-00-00 00:00:00'), ('1', '0', '*', '*', '*', 'moduleName=ci&methodName=initQueue', '创建周期性任务', 'zentao', 1, 'normal', '0000-00-00 00:00:00'), ('*/5', '*', '*', '*', '*', 'moduleName=ci&methodName=checkCompileStatus', '同步DevOps构建任务状态', 'zentao', 1, 'normal', '0000-00-00 00:00:00'), -('*/5', '*', '*', '*', '*', 'moduleName=ci&methodName=exec', '执行DevOps构建任务', 'zentao', 1, 'normal', '0000-00-00 00:00:00'); +('*/5', '*', '*', '*', '*', 'moduleName=ci&methodName=exec', '执行DevOps构建任务', 'zentao', 1, 'normal', '0000-00-00 00:00:00'), +('*/5', '*', '*', '*', '*', 'moduleName=mr&methodName=syncMR', '定时同步GitLab合并数据到禅道数据库', 'zentao', 1, 'normal', '0000-00-00 00:00:00'); INSERT INTO `zt_group` (`id`, `name`, `role`, `desc`) VALUES (1, 'ADMIN', 'admin', 'for administrator'), diff --git a/doc/CHANGELOG b/doc/CHANGELOG index 5803e6f947..651a667ff6 100644 --- a/doc/CHANGELOG +++ b/doc/CHANGELOG @@ -1,3 +1,113 @@ +2021-09-14 15.5 +完成的需求 +28102 在项目集中添加批量编辑项目功能 +28048 执行视图二级菜单增加更多菜单 +28042 执行列表区块中在执行名称前显示项目名称 +28039 待处理区块用下拉菜单展示显示不完整的对象类型 +28037 欢迎总览区块和面板中增加新手引导入口 +28034 实现老版本管理模式的新手引导功能 +28025 可视化看板中大泳道第一列颜色规范 +28022 可视化看板中列表高度计算规则 +28021 项目的二级导航中增加项目看板菜单 +28020 产品的二级导航中增加产品看板菜单 +28019 项目集的二级导航中增加项目集看板菜单 +28018 实现产品的看板视图功能 +28017 实现项目的看板视图功能 +28016 实现项目集的看板视图功能 +28015 二级导航中打印全局添加按钮 +28014 实现禅道全局添加功能 +27999 编辑页面点击返回操作后返回到同一个应用内session里面记录的列表地址 +27927 执行看板默认只显示一屏滚动时再往下加载 +27888 项目需求列表增加已关联执行和未关联执行的查询条件 +27886 导入数据时只能导入所属业务对象内的数据 +27755 新用户安装禅道15以上版本时增加禅道功能介绍页面 +27452 调整在禅道软件里面打开的帮助手册 +26226 将任务列表的任务类型字段调整为类型 +15615 实现全新项目集管理模式的新手引导功能 +15514 列表字段的宽度使用有指定含义的内容命名 +修复的BUG +14046 项目白名单成员首次登陆系统,关闭青春蓝提示后报错 +14146 试用版批量添加用户超过授权数量不提示 +14150 国际版-授权提醒文档需要修改(各种场景) +14422 升级流程优化 +6814 通知邮件中的链接地址与禅道中填写的不一致 +6935 使用模块访问需求页面响应慢。 +11549 钉钉webhook配置后出发多的情况下会创建出异常的bug信息 +12610 未登录会获取禅道中的用户信息 +13417 钉钉机器人关联产品之后不通知 +13771 搜索列表与数字显示不一致 +13821 产品中可以选到已删除的项目 +13824 权限设置可访问产品报错 +13826 可访问产品设置不生效 +13940 预算太大时在项目集列表页面显示不正确 +13941 编辑项目集中预算信息过大时会自动变成待定 +13942 项目中预算数字显示不正确 +13963 附件库列表下载附件时页面加载了空白页面 +13989 下载已完成但是还是显现在加载 +14007 后台人员模块中权限新增分组不显示 +14013 发布所属项目丢失 +14017 批量编辑计划选择结束日期显示错误 +14028 执行-文档中,三级导航显示错误 +14057 项目白名单成员无法访问该项目下的执行 +14058 批量编辑需求计划后列表显示有问题 +14108 完成任务时完成时间不应该大于开始时间 +14112 构建-不选择流水线报错 +14113 创建版本库gitlab server和gitlab token未设置成必填 +14115 点击动态中的项目集链接报错 +14128 15版本部分接口无法正常调用 +14137 应用集成访问禅道总是提示初始化设置 +14144 专业版12.1老模式安装升新模式后项目团队成员看不到项目主库 +14147 国际版主题 -青春蓝应予引导页面的Young Blue统一翻译 +14148 国际版升级数据合并页面选项未对齐 +14149 国际版升级数据合并页面项目集和项目未能区分名称 +14160 维护联系人之后创建任务页面无法选择 +14161 需求描述中加号被过滤掉了 +14162 进入维护干系人动态链接页面下拉组件缺失 +14165 创建项目和执行页面,不能设置白名单 +14178 维护产品线后创建产品的时候不显示 +14179 测试-用例/测试单下有多余导航白条 +14181 调整产品计划下需求的所属模块后需求列表没有更新 +14182 邮件中显示的发信人不是禅道中配置的发信人 +14197 进入Bug详情页导航跳转了2次 +14202 禅道客户端截图不能截笔记本的图,只能截图外接屏幕 +14211 创建文档库页面分组下拉页有遮挡 +14215 直接关闭裁剪页面也可以更换头像 +14221 我的地盘-待处理-任务 设置分页后切换页面后失效 +14222 后台批量添加人员密码报错无法输入 +14230 用例历史记录不记录批量修改记录 +14235 计划列表的描述折叠按钮无法展开 +14239 新增功能权限没有初始化到对应的权限分组 +14240 下拉组件的图标位置优化 +14241 任务列表状态字段内容显示不全 +14244 视野维护中可访问项目处提示语不对 +14250 按产品线升级,填写项目集名称不填写项目名称保存后升级数据错误 +14256 点击全屏按钮后保存按钮位置错乱 +14257 编辑文档保存时提示信息位置需优化 +14259 执行看板排序功能异常 +14268 执行复制白名单提示信息遮挡 +14272 编辑产品文档页面有代码报错 +14273 执行团队管理页面维护用户控件可以全部删除掉 +14277 执行库的主库名称未根据自定义的迭代/冲刺显示 +14279 点击迭代库下创建文档动态链接后页面有代码报错 +14282 组织--团队页面显示为白屏 +14283 创建版本时需要过滤掉上一个已删除的版本 +14284 弹出文档保存提示时文档内容未正常显示 +14285 提交测试时,创建版本成功后没直接显示 +14291 测试统计中产品数据外面的圈没显示 +14292 项目下的测试用例页面操作按钮有遮挡 +14365 任务可以对未来日期记录工时 +14366 项目集下的白名单列表中部门换行了 +14367 忘记密码 页面提示的路径不准确 +14387 执行列表导出选中记录,导出的excel没有数据 +14389 批量编辑执行二级导航不对 +14401 国际版-OA-考勤-弹窗页面“描述”未完全显示 +14402 国际版-OA-考勤-登入、出表头未完全显示 +14403 国际版-测试-BUG-二级导航排版乱了 +14404 国际版-系统-Todo-部门下拉菜单超出表格范围 +14405 国际版-运维-设置-语言选项与按钮错位 +14457 集成钉钉工作消息通知时,选择部分用户会提示报错 +14475 批量编辑任务时模块名显示不正确 + 2021-08-23 15.4 完成的需求 27731 ctrl+点击按钮可以新标签页打开页面 @@ -2031,32 +2141,32 @@ 2018-08-09 10.3.stable 修复的Bug -1523 计划编辑结束日期有问题 -1994 添加待办时间控件异常 -2003 已保存的搜索历史页面显示异常 -2006 批量提需求时,多图上传后需求创建失败 -2010 记录工时页面显示异常 -2017 待办弹窗页,激活操作不生效 -2022 计划关联需求功能异常 -2024 提Bug页面无法删除已保存的模板 -2043 创建文档库时,所属产品或项目的下拉菜单显示不全 -2056 创建项目,有下拉菜单的2级导航被隐藏 -2057 我的地盘待办显示问题 -2058 为刚创建的任务指派人员时,提示错误消息 -2070 统计中项目偏差报表没有数据 -2071 文档列表增加分页功能 -2072 执行用例添加附件不显示 -2074 任务维护模块页面会列出非关联的平台模块信息 -2081 搜索日期无法选择 -2085 权限的成员维护sql显示2次查询日志 -2088 我的地盘项目统计区块数据统计不正确 -2096 文档页没有分页功能,最多显示20个文档 -2097 多人任务点击开始按钮开始后状态还是未开始 -2098 需求的多行录入无响应 -2099 创建文档库的时候无法选择所属项目 -2101 任务创建页面优先级没有设置默认值 -2102 上传附件的时候,数据库里附件名称包含了文件扩展名 -2109 任务批量指派会检查剩余工时是否为0 +1523 计划编辑结束日期有问题 +1994 添加待办时间控件异常 +2003 已保存的搜索历史页面显示异常 +2006 批量提需求时,多图上传后需求创建失败 +2010 记录工时页面显示异常 +2017 待办弹窗页,激活操作不生效 +2022 计划关联需求功能异常 +2024 提Bug页面无法删除已保存的模板 +2043 创建文档库时,所属产品或项目的下拉菜单显示不全 +2056 创建项目,有下拉菜单的2级导航被隐藏 +2057 我的地盘待办显示问题 +2058 为刚创建的任务指派人员时,提示错误消息 +2070 统计中项目偏差报表没有数据 +2071 文档列表增加分页功能 +2072 执行用例添加附件不显示 +2074 任务维护模块页面会列出非关联的平台模块信息 +2081 搜索日期无法选择 +2085 权限的成员维护sql显示2次查询日志 +2088 我的地盘项目统计区块数据统计不正确 +2096 文档页没有分页功能,最多显示20个文档 +2097 多人任务点击开始按钮开始后状态还是未开始 +2098 需求的多行录入无响应 +2099 创建文档库的时候无法选择所属项目 +2101 任务创建页面优先级没有设置默认值 +2102 上传附件的时候,数据库里附件名称包含了文件扩展名 +2109 任务批量指派会检查剩余工时是否为0 2018-07-11 10.1.stable 完成的需求 diff --git a/module/action/lang/zh-tw.php b/module/action/lang/zh-tw.php index f65f325078..6ea0a55058 100755 --- a/module/action/lang/zh-tw.php +++ b/module/action/lang/zh-tw.php @@ -285,18 +285,18 @@ $lang->action->dynamicAction->todo['assigned'] = '指派待辦'; $lang->action->dynamicAction->todo['undeleted'] = '還原待辦'; $lang->action->dynamicAction->todo['hidden'] = '隱藏待辦'; -$lang->action->dynamicAction->program['create'] = '創建項目集'; -$lang->action->dynamicAction->program['edit'] = '編輯項目集'; -$lang->action->dynamicAction->program['activate'] = '激活項目集'; -$lang->action->dynamicAction->program['delete'] = '刪除項目集'; -$lang->action->dynamicAction->program['close'] = '關閉項目集'; +$lang->action->dynamicAction->program['opened'] = '創建項目集'; +$lang->action->dynamicAction->program['edited'] = '編輯項目集'; +$lang->action->dynamicAction->program['activated'] = '激活項目集'; +$lang->action->dynamicAction->program['deleted'] = '刪除項目集'; +$lang->action->dynamicAction->program['closed'] = '關閉項目集'; -$lang->action->dynamicAction->project['create'] = '創建項目'; -$lang->action->dynamicAction->project['edit'] = '編輯項目'; -$lang->action->dynamicAction->project['start'] = '開始項目'; -$lang->action->dynamicAction->project['suspend'] = '延期項目'; -$lang->action->dynamicAction->project['activate'] = '激活項目'; -$lang->action->dynamicAction->project['close'] = '關閉項目'; +$lang->action->dynamicAction->project['opened'] = '創建項目'; +$lang->action->dynamicAction->project['edited'] = '編輯項目'; +$lang->action->dynamicAction->project['started'] = '開始項目'; +$lang->action->dynamicAction->project['suspended'] = '延期項目'; +$lang->action->dynamicAction->project['activated'] = '激活項目'; +$lang->action->dynamicAction->project['closed'] = '關閉項目'; $lang->action->dynamicAction->product['opened'] = '創建' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = '編輯' . $lang->productCommon; @@ -566,3 +566,99 @@ $lang->action->search->label['paused'] = $lang->action->label->pa $lang->action->search->label['verified'] = $lang->action->label->verified; $lang->action->search->label['login'] = $lang->action->label->login; $lang->action->search->label['logout'] = $lang->action->label->logout; + +/* Action language config for API(JIHU) */ +$lang->action->apiTitle = new stdclass(); +$lang->action->apiTitle->opened = '首次創建。'; +$lang->action->apiTitle->created = '首次創建。'; +$lang->action->apiTitle->added = '添加成功。'; +$lang->action->apiTitle->changed = '進行了需求變更。'; +$lang->action->apiTitle->edited = '編輯操作。'; +$lang->action->apiTitle->assigned = '指派給 %s。'; +$lang->action->apiTitle->closed = '執行了關閉操作。'; +$lang->action->apiTitle->deleted = '執行刪除操作。'; +$lang->action->apiTitle->deletedfile = '刪除了附件:%s。'; +$lang->action->apiTitle->editfile = '編輯了附件:%s。'; +$lang->action->apiTitle->erased = '執行了刪除操作。'; +$lang->action->apiTitle->undeleted = '執行還原操作。'; +$lang->action->apiTitle->hidden = '進行隱藏操作。'; +$lang->action->apiTitle->commented = '添加了備註'; +$lang->action->apiTitle->activated = '執行激活操作。'; +$lang->action->apiTitle->confirmed = '確認' . $lang->SRCommon . '變動,最新版本為#%s。'; +$lang->action->apiTitle->caseconfirmed = '確認用例變動,最新版本為#%s。'; +$lang->action->apiTitle->bugconfirmed = '確認了Bug。'; +$lang->action->apiTitle->frombug = 'Bug轉化而來,Bug編號為 %s。'; +$lang->action->apiTitle->started = '啟動。'; +$lang->action->apiTitle->restarted = '繼續。'; +$lang->action->apiTitle->delayed = '執行了延期操作。'; +$lang->action->apiTitle->suspended = '掛起。'; +$lang->action->apiTitle->recordestimate = '記錄工時,消耗 %s 小時。'; +$lang->action->apiTitle->editestimate = '編輯了工時。'; +$lang->action->apiTitle->deleteestimate = '刪除工時。'; +$lang->action->apiTitle->canceled = '執行取消操作。'; +$lang->action->apiTitle->svncommited = '提交代碼,版本為#%s。'; +$lang->action->apiTitle->gitcommited = '提交代碼,版本為#%s。'; +$lang->action->apiTitle->finished = '完成。'; +$lang->action->apiTitle->paused = '暫停。'; +$lang->action->apiTitle->linked2bug = '關聯到版本 %s'; +$lang->action->apiTitle->linked2testtask = '關聯到測試單 %s'; +$lang->action->apiTitle->resolved = '解決。'; +$lang->action->apiTitle->managed = '維護。'; +$lang->action->apiTitle->estimated = '估算。'; +$lang->action->apiTitle->run = '執行。'; +$lang->action->apiTitle->tostory = "轉{$lang->SRCommon}"; +$lang->action->apiTitle->createchildren = '創建子任務 %s。'; +$lang->action->apiTitle->linkchildtask = '關聯子任務 %s。'; +$lang->action->apiTitle->unlinkchildrentask = '移除子任務 %s。'; +$lang->action->apiTitle->linkparenttask = '關聯到父任務 %s。'; +$lang->action->apiTitle->unlinkparenttask = '從父任務%s取消關聯。'; +$lang->action->apiTitle->deletechildrentask = '刪除子任務%s。'; +$lang->action->apiTitle->createchildrenstory = '創建子需求 %s。'; +$lang->action->apiTitle->linkchildstory = '關聯子需求 %s。'; +$lang->action->apiTitle->unlinkchildrenstory = '移除子需求 %s。'; +$lang->action->apiTitle->linkparentstory = '關聯到父需求 %s。'; +$lang->action->apiTitle->unlinkparentstory = '從父需求%s取消關聯。'; +$lang->action->apiTitle->deletechildrenstory = '刪除子需求%s。'; +$lang->action->apiTitle->linkrelatedcase = '關聯相關用例 %s。'; +$lang->action->apiTitle->unlinkrelatedcase = '移除相關用例 %s。'; +$lang->action->apiTitle->openedbysystem = '系統創建'; +$lang->action->apiTitle->closedbysystem = '系統關閉'; +$lang->action->apiTitle->communicated = '溝通'; +$lang->action->apiTitle->blocked = '阻塞'; +$lang->action->apiTitle->reviewed = '評審'; +$lang->action->apiTitle->recalled = '撤銷評審'; +$lang->action->apiTitle->moved = '移動'; +$lang->action->apiTitle->fromlib = '從用例庫導入'; +$lang->action->apiTitle->totask = '轉任務'; +$lang->action->apiTitle->linked2plan = "關聯計劃"; +$lang->action->apiTitle->unlinkedfromplan = "移除計劃"; +$lang->action->apiTitle->changestatus = '修改狀態'; +$lang->action->apiTitle->marked = '編輯'; +$lang->action->apiTitle->linked2execution = "關聯{$lang->executionCommon}"; +$lang->action->apiTitle->unlinkedfromexecution = "移除{$lang->executionCommon}"; +$lang->action->apiTitle->linked2project = "關聯項目"; +$lang->action->apiTitle->unlinkedfromproject = "移除項目"; +$lang->action->apiTitle->unlinkedfrombuild = "移除版本"; +$lang->action->apiTitle->linked2release = "關聯發佈"; +$lang->action->apiTitle->unlinkedfromrelease = "移除發佈"; +$lang->action->apiTitle->linkrelatedbug = "關聯了相關Bug"; +$lang->action->apiTitle->unlinkrelatedbug = "移除了相關Bug"; +$lang->action->apiTitle->linkrelatedstory = "關聯了相關{$lang->SRCommon}"; +$lang->action->apiTitle->unlinkrelatedstory = "移除了相關{$lang->SRCommon}"; +$lang->action->apiTitle->subdividestory = "細分了{$lang->SRCommon}"; +$lang->action->apiTitle->unlinkchildstory = "移除了細分{$lang->SRCommon}"; +$lang->action->apiTitle->verified = '驗收'; +$lang->action->apiTitle->login = '登錄系統'; +$lang->action->apiTitle->logout = "退出登錄"; +$lang->action->apiTitle->linked2build = "關聯"; +$lang->action->apiTitle->unlinkedfromtesttask = "移除"; +$lang->action->apiTitle->batchcreate = "批量創建任務"; +$lang->action->apiTitle->managedteam = "維護"; +$lang->action->apiTitle->managedwhitelist = "維護"; +$lang->action->apiTitle->tracked = '跟蹤'; +$lang->action->apiTitle->hangup = '掛起'; +$lang->action->apiTitle->reviewpassed = '確認通過'; +$lang->action->apiTitle->reviewrejected = '拒絶'; +$lang->action->apiTitle->reviewclarified = '有待明確'; +$lang->action->apiTitle->commitsummary = '提交培訓總結'; +$lang->action->apiTitle->updatetrainee = '更新培訓人員'; diff --git a/module/block/view/projectblock.html.php b/module/block/view/projectblock.html.php index 99560cca63..64d8750cc1 100644 --- a/module/block/view/projectblock.html.php +++ b/module/block/view/projectblock.html.php @@ -27,7 +27,7 @@ createLink('project', 'index', "programID={$project->id}");?>
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.5'] = '2021-09-14'; $lang->misc->releaseDate['15.4'] = '2021-08-23'; $lang->misc->releaseDate['15.3'] = '2021-08-04'; $lang->misc->releaseDate['15.2'] = '2021-07-20'; @@ -156,6 +157,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.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' => ''); $lang->misc->feature->all['15.2'][] = array('title' => 'Optimize the new version upgrade process, add execution kanban.', 'desc' => ''); diff --git a/module/misc/lang/zh-cn.php b/module/misc/lang/zh-cn.php index b40a29005d..6dbd7b4d96 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.5'] = '2021-09-14'; $lang->misc->releaseDate['15.4'] = '2021-08-23'; $lang->misc->releaseDate['15.3'] = '2021-08-04'; $lang->misc->releaseDate['15.2'] = '2021-07-20'; @@ -156,6 +157,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.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' => ''); $lang->misc->feature->all['15.2'][] = array('title' => '优化新版本升级流程,增加执行看板。', 'desc' => ''); diff --git a/module/misc/lang/zh-tw.php b/module/misc/lang/zh-tw.php index ef2b8c425f..773192f3fb 100644 --- a/module/misc/lang/zh-tw.php +++ b/module/misc/lang/zh-tw.php @@ -81,9 +81,18 @@ $lang->misc->noticeRepair = "禪道15系列新增了多項功能,您可以通過“新手引導教程”快速瞭解禪道的基本使用方法。
通過滑鼠經過 [頭像-新手引導],點擊新手引導,即可進入新手引導教程。
"; +$lang->misc->feature->themeDesc = "禪道15系列上線了全新的“青春藍”主題,頁面呈現更加美觀,體驗更加友好。
通過滑鼠經過 [頭像-主題-青春藍],點擊青春藍,即可設置成功。
"; +$lang->misc->releaseDate['15.5'] = '2021-09-14'; $lang->misc->releaseDate['15.4'] = '2021-08-23'; $lang->misc->releaseDate['15.3'] = '2021-08-04'; $lang->misc->releaseDate['15.2'] = '2021-07-20'; @@ -148,6 +157,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.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' => ''); $lang->misc->feature->all['15.2'][] = array('title' => '優化新版本升級流程,增加執行看板。', 'desc' => ''); diff --git a/module/mr/lang/en.php b/module/mr/lang/en.php index f56b32277d..9778fcc660 100644 --- a/module/mr/lang/en.php +++ b/module/mr/lang/en.php @@ -77,6 +77,7 @@ $lang->mr->mergeFailed = "Unable to merge request, please check the merge req $lang->mr->mergeSuccess = "Merge Request Successfully"; $lang->mr->todomessage = "project was assigned to you"; + /** * Merge Command Document. * diff --git a/module/mr/lang/zh-cn.php b/module/mr/lang/zh-cn.php index 698b91ce81..12aa3f859d 100644 --- a/module/mr/lang/zh-cn.php +++ b/module/mr/lang/zh-cn.php @@ -78,7 +78,6 @@ $lang->mr->mergeSuccess = "已成功合并"; $lang->mr->todomessage = "项目中指派给你了"; - /** * Merge Command Document. * diff --git a/module/mr/lang/zh-tw.php b/module/mr/lang/zh-tw.php index cac39d7ba9..d384a8ae23 100644 --- a/module/mr/lang/zh-tw.php +++ b/module/mr/lang/zh-tw.php @@ -23,6 +23,7 @@ $lang->mr->reviewer = '評審人'; $lang->mr->mergeStatus = '是否可合併'; $lang->mr->commits = '提交數'; $lang->mr->changes = '更改數'; +$lang->mr->gitlabID = 'GitLab'; $lang->mr->statusList = array(); $lang->mr->statusList['opened'] = '開放中'; @@ -75,6 +76,8 @@ $lang->mr->acceptMR = "合併"; $lang->mr->mergeFailed = "無法合併,請核對合併請求狀態"; $lang->mr->mergeSuccess = "已成功合併"; +$lang->mr->todomessage = "項目中指派給你了"; + /** * Merge Command Document. * diff --git a/module/testtask/lang/zh-tw.php b/module/testtask/lang/zh-tw.php index 523cd4921e..38fb65d520 100644 --- a/module/testtask/lang/zh-tw.php +++ b/module/testtask/lang/zh-tw.php @@ -127,17 +127,17 @@ $lang->testtask->fail = '失敗'; $lang->testtask->showResult = '共執行%s次'; $lang->testtask->showFail = '失敗%s次'; -$lang->testtask->confirmDelete = '您確認要刪除該測試單嗎?'; -$lang->testtask->confirmUnlinkCase = '您確認要移除該用例嗎?'; -$lang->testtask->noticeNoOther = '該產品還沒有其他測試單'; -$lang->testtask->noTesttask = '暫時沒有測試單。'; -$lang->testtask->checkLinked = "請檢查測試單的產品是否與{$lang->executionCommon}相關聯"; -$lang->testtask->noImportData = '導入的XML沒有解析出數據。'; -$lang->testtask->unitXMLFormat = '請選擇Junit XML 格式的檔案。'; -$lang->testtask->titleOfAuto = "%s 自動化測試"; -$lang->testtask->cannotBeParsed = '導入的XML檔案內容格式錯誤,無法解析。'; -$lang->testtask->finishedDateError = '實際完成日期不能小於開始日期%s'; -$lang->testtask->finishedDateError2 = '實際完成日期不能大於今天'; +$lang->testtask->confirmDelete = '您確認要刪除該測試單嗎?'; +$lang->testtask->confirmUnlinkCase = '您確認要移除該用例嗎?'; +$lang->testtask->noticeNoOther = '該產品還沒有其他測試單'; +$lang->testtask->noTesttask = '暫時沒有測試單。'; +$lang->testtask->checkLinked = "請檢查測試單的產品是否與{$lang->executionCommon}相關聯"; +$lang->testtask->noImportData = '導入的XML沒有解析出數據。'; +$lang->testtask->unitXMLFormat = '請選擇Junit XML 格式的檔案。'; +$lang->testtask->titleOfAuto = "%s 自動化測試"; +$lang->testtask->cannotBeParsed = '導入的XML檔案內容格式錯誤,無法解析。'; +$lang->testtask->finishedDateLess = '實際完成日期不能小於開始日期%s'; +$lang->testtask->finishedDateMore = '實際完成日期不能大於今天'; $lang->testtask->assignedToMe = '指派給我'; $lang->testtask->allCases = '所有用例'; diff --git a/module/tutorial/lang/en.php b/module/tutorial/lang/en.php index 908f244282..aba275f885 100644 --- a/module/tutorial/lang/en.php +++ b/module/tutorial/lang/en.php @@ -54,28 +54,28 @@ $lang->tutorial->tasks['createStory']['desc'] = "Create a story:
Create a {$lang->projectCommon}:
Create a project:
Manage {$lang->projectCommon} team members:
Manage project team members:
Create a new {$lang->executionCommon}:
Create a new {$lang->executionCommon}:
Create a new {$lang->executionCommon}:
Create a new {$lang->executionCommon}:
Manage {$lang->projectCommon} team members:
Manage project team members:
在系统创建一个新的{$lang->SRCommon}:
在系统创建一个新的{$lang->projectCommon}:
在系统创建一个新的项目:
管理{$lang->projectCommon}团队成员:
管理项目团队成员:
在系统创建一个新的{$lang->executionCommon}:
在系统创建一个新的{$lang->executionCommon}:
在系统创建一个新的{$lang->executionCommon}:
在系统创建一个新的{$lang->executionCommon}:
在系統創建一個新 $lang->tutorial->tasks['createProduct'] = array('title' => '創建' . $lang->productCommon); $lang->tutorial->tasks['createProduct']['nav'] = array('app' => 'product', 'module' => 'product', 'method' => 'create', 'menuModule' => 'product', 'menu' => 'all', 'form' => '#createForm', 'submit' => '#submit', 'target' => '.create-product-btn', 'targetPageName' => '添加' . $lang->productCommon); -$lang->tutorial->tasks['createProduct']['desc'] = "
在系統創建一個新的{$lang->productCommon}:
在系統創建一個新的{$lang->productCommon}:
在系統創建一個新的{$lang->SRCommon}:
在系統創建一個新的{$lang->SRCommon}:
在系統創建一個新的{$lang->projectCommon}:
在系統創建一個新的{$lang->projectCommon}:
管理{$lang->projectCommon}團隊成員:
管理{$lang->projectCommon}團隊成員:
在系統創建一個新的{$lang->executionCommon}:
在系統創建一個新的{$lang->executionCommon}:
在系統創建一個新的{$lang->executionCommon}:
管理{$lang->executionCommon}團隊成員:
將{$lang->SRCommon}關聯到{$lang->executionCommon}:
將{$lang->SRCommon}關聯到執行:
將{$lang->SRCommon}關聯到{$lang->executionCommon}:
將{$lang->executionCommon}{$lang->SRCommon}分解為任務:
將執行{$lang->SRCommon}分解為任務:
將{$lang->executionCommon}{$lang->SRCommon}分解為任務: