diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cda7c32473..f191cd48c0 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,10 @@
+stages:
+ - sonar
+ - unit_test
+ - cleanup_packages
+ - package
sonarqube:
+ stage: sonar
variables:
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
@@ -11,12 +17,21 @@ sonarqube:
allow_failure: true
only:
- master # or the name of your main branch
-packages:
+package:
+ stage: package
script:
- make cizip
allow_failure: true
only:
- master
+unit_test:
+ stage: unit_test
+ script:
+ - "/home/gitlab-runner/bin/zentao-unittest.sh ${CI_PROJECT_DIR}"
+ allow_failure: true
+ only:
+ - master
+ - merge_requests
#notify:
# script:
# - 'curl --location --request POST ''http://api.lf.oop.cc/api/v1/xuan/chatMessage'' --header ''Content-Type: application/json'' --data-raw ''{"gid": "84be4c6e-02e3-4fdc-b081-318c0c1eca02", "title": "开源包下载地址", "content": "点击查看详情链接", "url": "http://10.0.7.242:8080/allpacks/"}'''
@@ -24,6 +39,7 @@ packages:
# only:
# - master
cleanup_packages:
+ stage: cleanup_packages
script:
- make clean
when: on_failure
diff --git a/VERSION b/VERSION
index 5f9cbaa8b2..c9333734bd 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-17.4
+17.6
diff --git a/api/v1/entries/execution.php b/api/v1/entries/execution.php
index cc9add74e9..3d66f624a0 100644
--- a/api/v1/entries/execution.php
+++ b/api/v1/entries/execution.php
@@ -20,9 +20,8 @@ class executionEntry extends Entry
*/
public function get($executionID)
{
- $fields = $this->param('fields');
- $productID = $this->param('productID');
- $status = $this->param('status', 'all');
+ $fields = $this->param('fields');
+ $status = $this->param('status', 'all');
$control = $this->loadController('execution', 'view');
$control->view($executionID);
@@ -47,8 +46,8 @@ class executionEntry extends Entry
foreach($executionProduct->plans as $planID)
{
$plan = new stdclass();
- $plan->id = $planID;
- $plan->name = $data->data->planGroups->{$productID}->{$planID};
+ $plan->id = trim($planID, ',');
+ $plan->name = $data->data->planGroups->{$productID}->{$plan->id};
$product->plans[] = $plan;
}
$execution->products[] = $product;
diff --git a/api/v1/entries/executionbugs.php b/api/v1/entries/executionbugs.php
index 5b7cf62535..0dfe4d13e6 100644
--- a/api/v1/entries/executionbugs.php
+++ b/api/v1/entries/executionbugs.php
@@ -24,7 +24,7 @@ class executionBugsEntry extends entry
if(empty($executionID)) return $this->sendError(400, 'Need execution id.');
$control = $this->loadController('execution', 'bug');
- $control->bug($executionID, $this->param('product', 0), $this->param('order', 'status,id_desc'), $this->param('build', 0), $this->param('status', 'all'), 0, 0, $this->param('limit', 20), $this->param('page', 1));
+ $control->bug($executionID, $this->param('product', 0), $this->param('branch', 0), $this->param('order', 'status,id_desc'), $this->param('build', 0), $this->param('status', 'all'), 0, 0, $this->param('limit', 20), $this->param('page', 1));
$data = $this->getData();
diff --git a/api/v1/entries/executioncases.php b/api/v1/entries/executioncases.php
index 3b63e30e3a..ed4b1a3bab 100644
--- a/api/v1/entries/executioncases.php
+++ b/api/v1/entries/executioncases.php
@@ -24,7 +24,7 @@ class executionCasesEntry extends entry
if(empty($executionID)) return $this->sendError(400, 'Need execution id.');
$control = $this->loadController('execution', 'testcase');
- $control->testcase($executionID, $this->param('status', 'all'), $this->param('order', 'id_desc'), 0, $this->param('limit', 20), $this->param('page', 1));
+ $control->testcase($executionID, $this->param('product', 0), $this->param('branch', 0), $this->param('status', 'all'), $this->param('module', 0), $this->param('order', 'id_desc'), 0, $this->param('limit', 20), $this->param('page', 1));
$data = $this->getData();
diff --git a/api/v1/entries/executions.php b/api/v1/entries/executions.php
index 9a00ae719b..a3275395c7 100644
--- a/api/v1/entries/executions.php
+++ b/api/v1/entries/executions.php
@@ -41,7 +41,7 @@ class executionsEntry extends entry
else
{
$control = $this->loadController('execution', 'all');
- $control->all($this->param('status', 'all'), $this->param('project', $projectID), $this->param('order', 'id_desc'), 0, 0, $this->param('limit', 20), $this->param('page', 1));
+ $control->all($this->param('status', 'all'), $this->param('order', 'id_desc'), 0, '', 0, $this->param('limit', 20), $this->param('page', 1));
$data = $this->getData();
if(!$data or !isset($data->status)) return $this->sendError(400, 'error');
diff --git a/api/v1/entries/product.php b/api/v1/entries/product.php
index 518936c737..0dedc42047 100644
--- a/api/v1/entries/product.php
+++ b/api/v1/entries/product.php
@@ -120,7 +120,7 @@ class productEntry extends Entry
if(isset($data->result) and $data->result == 'fail') return $this->sendError(400, $data->message);
$product = $this->product->getByID($productID);
- $this->send(200, $this->format($product, 'createdDate:time'));
+ $this->send(200, $this->format($product, 'createdDate:time,whitelist:userList,createdBy:user,PO:user,RD:user,QD:user'));
}
/**
diff --git a/api/v1/entries/program.php b/api/v1/entries/program.php
index 22a9469687..e7394f9d45 100644
--- a/api/v1/entries/program.php
+++ b/api/v1/entries/program.php
@@ -60,7 +60,7 @@ class programEntry extends Entry
public function delete($programID)
{
$control = $this->loadController('program', 'delete');
- $control->delete(0, $programID, 'true');
+ $control->delete($programID, 'true');
$data = $this->getData();
if(isset($data->result) and $data->result == 'fail') return $this->sendError(400, $data->message);
diff --git a/api/v1/entries/projectbugs.php b/api/v1/entries/projectbugs.php
index b5c6660c5c..4e03d77890 100644
--- a/api/v1/entries/projectbugs.php
+++ b/api/v1/entries/projectbugs.php
@@ -24,7 +24,7 @@ class projectBugsEntry extends entry
if(empty($projectID)) return $this->sendError(400, 'Need project id.');
$control = $this->loadController('project', 'bug');
- $control->bug($projectID, $this->param('product', 0), $this->param('order', 'status,id_desc'), $this->param('build', 0), $this->param('status', 'all'), 0, 0, $this->param('limit', 20), $this->param('page', 1));
+ $control->bug($projectID, $this->param('product', 0), $this->param('branch', 0), $this->param('order', 'status,id_desc'), $this->param('build', 0), $this->param('status', 'all'), 0, 0, $this->param('limit', 20), $this->param('page', 1));
$data = $this->getData();
diff --git a/api/v1/entries/tabs.php b/api/v1/entries/tabs.php
index 9078299d8c..af0c938f46 100644
--- a/api/v1/entries/tabs.php
+++ b/api/v1/entries/tabs.php
@@ -29,7 +29,7 @@ class tabsEntry extends baseEntry
foreach($tabs as $menuKey)
{
if(!isset($this->lang->my->$menuKey)) continue;
- if(!common::hasPriv('my', $menuKey)) continue;
+ if(!common::hasPriv('my', 'work')) continue;
$label = $this->lang->my->$menuKey;
if($menuKey == 'calendar') $label = $this->lang->my->calendarAction;
diff --git a/api/v1/entries/user.php b/api/v1/entries/user.php
index 5be0be2c25..8940d9ee05 100644
--- a/api/v1/entries/user.php
+++ b/api/v1/entries/user.php
@@ -140,7 +140,8 @@ class userEntry extends Entry
break;
case 'execution':
$info->execution = array('total' => 0, 'executions' => array());
- if(!common::hasPriv('my', 'execution')) break;
+ if(!common::hasPriv('my', 'work')) break;
+ $this->config->openMethods[] = 'my.execution';
$control = $this->loadController('my', 'execution');
$control->execution($this->param('type', 'undone'), $this->param('order', 'id_desc'), $this->param('total', 0), $this->param('limit', 5), $this->param('page', 1));
@@ -193,6 +194,7 @@ class userEntry extends Entry
case 'task':
$info->task = array('total' => 0, 'tasks' => array());
if(!common::hasPriv('my', 'work')) break;
+ $this->config->openMethods[] = 'my.task';
$control = $this->loadController('my', 'task');
$control->task($this->param('type', 'assignedTo'), 0, $this->param('order', 'id_desc'), $this->param('total', 0), $this->param('limit', 5), $this->param('page', 1));
@@ -208,6 +210,7 @@ class userEntry extends Entry
case 'bug':
$info->bug = array('total' => 0, 'bugs' => array());
if(!common::hasPriv('my', 'work')) break;
+ $this->config->openMethods[] = 'my.bug';
$control = $this->loadController('my', 'bug');
$control->bug($this->param('type', 'assignedTo'), 0, $this->param('order', 'id_desc'), $this->param('total', 0), $this->param('limit', 5), $this->param('page', 1));
@@ -251,7 +254,7 @@ class userEntry extends Entry
if(!common::hasPriv('my', 'todo')) break;
$control = $this->loadController('my', 'todo');
- $control->todo($this->param('date', 'all'), '', 'all', 'date_desc', 0, 0, $this->param('limit', 5), 1);
+ $control->todo($this->param('date', 'before'), '', 'all', 'date_desc', 0, $this->param('limit', 5), 1);
$data = $this->getData();
if($data->status == 'success')
@@ -264,6 +267,7 @@ class userEntry extends Entry
case 'story':
$info->story = array('total' => 0, 'stories' => array());
if(!common::hasPriv('my', 'work')) break;
+ $this->config->openMethods[] = 'my.story';
$control = $this->loadController('my', 'story');
$control->story($this->param('type', 'assignedTo'), 0, $this->param('order', 'id_desc'), $this->param('total', 0), $this->param('limit', 5), $this->param('page', 1));
@@ -289,6 +293,7 @@ class userEntry extends Entry
if($this->config->edition == 'max')
{
+ $this->config->openMethods[] = 'my.issue';
$control = $this->loadController('my', 'issue');
$control->issue('createdBy', 0, 'id_desc', 0, $this->param('limit', 5), 1);
$data = $this->getData();
@@ -306,8 +311,9 @@ class userEntry extends Entry
if($this->config->edition == 'max')
{
+ $this->config->openMethods[] = 'my.risk';
$control = $this->loadController('my', 'risk');
- $control->risk('createdBy', 0, 'id_desc', 0, $this->param('limit', 5), 1);
+ $control->risk('assignedTo', 0, 'id_desc', 0, $this->param('limit', 5), 1);
$data = $this->getData();
if($data->status == 'success')
@@ -323,8 +329,9 @@ class userEntry extends Entry
if($this->config->edition == 'max')
{
+ $this->config->openMethods[] = 'my.myMeeting';
$control = $this->loadController('my', 'myMeeting');
- $control->myMeeting('all', '', 'id_desc', 0, $this->param('limit', 5), 1);
+ $control->myMeeting('futureMeeting', '', 'id_desc', 0, $this->param('limit', 5), 1);
$data = $this->getData();
if($data->status == 'success')
@@ -375,14 +382,21 @@ class userEntry extends Entry
$oldUser = $this->loadModel('user')->getByID($userID, 'id');
/* Set $_POST variables. */
- $fields = 'dept,realname,email,commiter,gender,role,mobile,phone,visions,groups';
+ $fields = 'dept,realname,role,join,type,visions,mobile,phone,qq,dingding,weixin,skype,whatsapp,slack,address,address,email,commiter,gender,groups,passwordStrength,locked,fails,birthday';
$this->batchSetPost($fields, $oldUser);
$this->setPost('account', $oldUser->account);
- if($this->request('gender') and !in_array($this->request('gender'), array('f', 'm'))) return $this->sendError(400, "The value of gendar must be 'f' or 'm'");
+ $userGroups = $this->dao->select('`group`')->from(TABLE_USERGROUP)->where('account')->eq($oldUser->account)->fetchPairs('group', 'group');
+ $this->setPost('groups', $this->request('groups', zget($_POST, 'groups', array_values($userGroups))));
- $this->setPost('password1', $this->request('password', ''));
- $this->setPost('password2', $this->request('password', ''));
+ $gender = $this->request('gender', zget($_POST, 'gender', 'f'));
+ if(!in_array($gender, array('f', 'm'))) return $this->sendError(400, "The value of gender must be 'f' or 'm'");
+ if($this->request('gender') and !in_array($this->request('gender'), array('f', 'm'))) return $this->sendError(400, "The value of gendar must be 'f' or 'm'");
+ $this->setPost('gender', $gender);
+
+ $password = $this->request('password', zget($_POST, 'password', ''));
+ $this->setPost('password1', md5($password));
+ $this->setPost('password2', md5($password));
$this->setPost('verifyPassword', md5($this->app->user->password . $this->app->session->rand));
$control = $this->loadController('user', 'edit');
diff --git a/api/v1/entries/users.php b/api/v1/entries/users.php
index 9696cb0211..b344dcba48 100644
--- a/api/v1/entries/users.php
+++ b/api/v1/entries/users.php
@@ -55,21 +55,23 @@ class usersEntry extends entry
*/
public function post()
{
- $fields = 'account,dept,realname,email,commiter,gender';
+ $fields = 'type,dept,account,password,visions,realname,join,role,email,commiter,gender,group,passwordStrength';
$this->batchSetPost($fields);
- if(!in_array($this->request('gendar', 'f'), array('f', 'm'))) return $this->sendError(400, "The value of gendar must be 'f' or 'm'");
+ if(!in_array($this->request('gendar', zget($_POST, 'gendar', 'f')), array('f', 'm'))) return $this->sendError(400, "The value of gendar must be 'f' or 'm'");
- $password = $this->request('password', '') ? md5($this->request('password')) : '';
+ $password = $this->request('password', zget($_POST, 'password', '')) ? md5($this->request('password', zget($_POST, 'password', ''))) : '';
$visions = $this->request('visions', array('rnd'));
if(!is_array($visions)) $visions = explode(',', $visions);
+ if($this->request('group')) $this->setPost('group', explode(',', $this->request('group')));
$this->setPost('password1', $password);
$this->setPost('password2', $password);
$this->setPost('passwordStrength', 3);
$this->setPost('visions', $visions);
$this->setPost('verifyPassword', md5($this->app->user->password . $this->app->session->rand));
+ unset($_POST['password']);
$control = $this->loadController('user', 'create');
$this->requireFields('account,password1,realname');
diff --git a/bin/ztcli b/bin/ztcli
index 38252d263b..b6352cf9e9 100755
--- a/bin/ztcli
+++ b/bin/ztcli
@@ -50,7 +50,7 @@ if($config->requestType == 'PATH_INFO')
{
$_SERVER['PATH_INFO'] = $path['basename'];
}
- else
+ else
{
/* url like http://pms.zentao.net/zentao/my/, PATH_INFO is 'my'. */
if(is_dir('./module/' . $path['basename']))
diff --git a/composer.json b/composer.json
deleted file mode 100644
index 797156678b..0000000000
--- a/composer.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "easysoft/zentaopms",
- "description": "Zentao is an agile(scrum) project management system/tool, Free Upgrade Forever!",
- "type": "project",
- "license": "ZPL",
- "require": {
- "php": "~5.2||~7.0",
- "ext-json" : "*",
- "ext-mbstring" : "*",
- "ext-curl" : "*"
- }
-}
diff --git a/config/config.php b/config/config.php
index ae288b21ab..e8d0dbd010 100644
--- a/config/config.php
+++ b/config/config.php
@@ -16,7 +16,7 @@ if(!class_exists('config')){class config{}}
if(!function_exists('getWebRoot')){function getWebRoot(){}}
/* 基本设置。Basic settings. */
-$config->version = '17.4'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
+$config->version = '17.6'; // ZenTaoPHP的版本。 The version of ZenTaoPHP. Don't change it.
$config->liteVersion = '1.2'; // 迅捷版版本。 The version of Lite.
$config->charset = 'UTF-8'; // ZenTaoPHP的编码。 The encoding of ZenTaoPHP.
$config->cookieLife = time() + 2592000; // Cookie的生存时间。The cookie life time.
diff --git a/config/filter.php b/config/filter.php
index 95c366a47d..16374266ab 100755
--- a/config/filter.php
+++ b/config/filter.php
@@ -29,6 +29,7 @@ $filter->default->cookie['fingerprint'] = 'reg::word';
$filter->default->cookie['hideMenu'] = 'equal::true';
$filter->default->cookie['tab'] = 'reg::word';
$filter->default->cookie['goback'] = 'reg::any';
+$filter->default->cookie['maxImport'] = 'reg::any';
$filter->index = new stdclass();
$filter->my = new stdclass();
diff --git a/config/zentaopms.php b/config/zentaopms.php
index df143621ce..a10d6a941c 100644
--- a/config/zentaopms.php
+++ b/config/zentaopms.php
@@ -222,6 +222,8 @@ $config->openMethods[] = 'kanban.deleteobjectcard';
$config->openMethods[] = 'admin.ignore';
$config->openMethods[] = 'personnel.unbindwhitelist';
$config->openMethods[] = 'tree.viewhistory';
+$config->openMethods[] = 'doc.createbasicinfo';
+$config->openMethods[] = 'project.createguide';
/* Define the tables. */
define('TABLE_COMPANY', '`' . $config->db->prefix . 'company`');
@@ -331,6 +333,10 @@ if(!defined('TABLE_PROJECTSPEC')) define('TABLE_PROJECTSPEC', '`' . $config->db-
if(!defined('TABLE_SEARCHINDEX')) define('TABLE_SEARCHINDEX', $config->db->prefix . 'searchindex');
if(!defined('TABLE_SEARCHDICT')) define('TABLE_SEARCHDICT', $config->db->prefix . 'searchdict');
+define('TABLE_CHART', '`' . $config->db->prefix . 'chart`');
+define('TABLE_DASHBOARD', '`' . $config->db->prefix . 'dashboard`');
+define('TABLE_DATASET', '`' . $config->db->prefix . 'dataset`');
+
$config->objectTables['product'] = TABLE_PRODUCT;
$config->objectTables['productplan'] = TABLE_PRODUCTPLAN;
$config->objectTables['story'] = TABLE_STORY;
@@ -392,3 +398,6 @@ $config->programPriv->waterfall = array_merge($config->programPriv->scrum, array
$config->waterfallModules = array('workestimation', 'durationestimation', 'budget', 'programplan', 'review', 'reviewissue', 'weekly', 'cm', 'milestone', 'design', 'opportunity', 'auditplan', 'trainplan', 'gapanalysis', 'pssp', 'researchplan', 'researchreport');
$config->showMainMenu = true;
+$config->maxPriValue = '256';
+
+$config->importWhiteList = array('user', 'task', 'story', 'bug', 'testcase', 'feedback');
\ No newline at end of file
diff --git a/db/demo.sql b/db/demo.sql
index d2d0550d63..2277a6a1d4 100644
--- a/db/demo.sql
+++ b/db/demo.sql
@@ -15,7 +15,7 @@ INSERT INTO `zt_action` (`id`, `objectType`, `objectID`, `product`, `project`, `
(11, 'story', 1, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:09:49', '', '', '0'),
(12, 'story', 2, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:16:37', '', '', '0'),
(13, 'story', 3, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:18:10', '', '', '0'),
-(14, 'story', 3, ',1,', 0, 0, 'productManager', 'changed', '2012-06-05 10:19:06', '', '', '0'),
+(14, 'story', 3, ',1,', 0, 0, 'productManager', 'changing', '2012-06-05 10:19:06', '', '', '0'),
(15, 'story', 4, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:20:16', '', '', '0'),
(16, 'story', 5, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:21:39', '', '', '0'),
(17, 'story', 6, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:23:11', '', '', '0'),
@@ -589,9 +589,9 @@ INSERT INTO `zt_story` (`id`, `parent`, `product`, `branch`, `module`, `plan`, `
(2, 0, 1, 0, 2, '1', 'po', '', 0, '新闻中心的设计和开发。', '', 'story', 1, 1, 'active', '', '', 'projected', '', '', 'productManager', '2012-06-05 10:16:37', 'productManager', '2012-06-05 10:16:37', 'productManager', '2012-06-05 10:25:33', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
(3, 0, 1, 0, 3, '1', 'po', '', 0, '成果展示的设计和开发', '', 'story', 1, 0, 'active', '', '', 'developing', '', '', 'productManager', '2012-06-05 10:18:10', 'productManager', '2012-06-05 10:18:10', 'productManager', '2012-06-05 10:25:38', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 2, '0', '0'),
(4, 0, 1, 0, 4, '1', 'po', '', 0, '售后服务的设计和开发', '', 'story', 1, 1, 'active', '', '', 'developed', '', '', 'productManager', '2012-06-05 10:20:16', 'productManager', '2012-06-05 10:20:16', 'productManager', '2012-06-05 10:25:42', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(5, 0, 1, 0, 5, '1', 'po', '', 0, '诚聘英才的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:21:39', 'productManager', '2012-06-05 10:21:39', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(6, 0, 1, 0, 6, '1', 'po', '', 0, '合作洽谈的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:23:11', 'productManager', '2012-06-05 10:23:11', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(7, 0, 1, 0, 7, '1', 'po', '', 0, '关于我们的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:24:19', 'productManager', '2012-06-05 10:24:19', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0');
+(5, 0, 1, 0, 5, '1', 'po', '', 0, '诚聘英才的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:21:39', 'productManager', '2012-06-05 10:21:39', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
+(6, 0, 1, 0, 6, '1', 'po', '', 0, '合作洽谈的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:23:11', 'productManager', '2012-06-05 10:23:11', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
+(7, 0, 1, 0, 7, '1', 'po', '', 0, '关于我们的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:24:19', 'productManager', '2012-06-05 10:24:19', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0');
INSERT INTO `zt_storyspec` (`story`, `version`, `title`, `spec`, `verify`) VALUES
(1, 1, '首页设计和开发', '作为一名本公司的用户,我希望可以在首页看到该公司网站的基本内容,例如最新动态、部分成果展示、联系信息、工商信息等。
', '开发并通过验收
'),
(2, 1, '新闻中心的设计和开发。', '作为一名本公司的用户,我希望可以在新闻中心看到该公司网站的企业新闻,这样可以通过新闻了解企业的最新动态。
', ''),
diff --git a/db/endemo.sql b/db/endemo.sql
index d2d0550d63..2277a6a1d4 100644
--- a/db/endemo.sql
+++ b/db/endemo.sql
@@ -15,7 +15,7 @@ INSERT INTO `zt_action` (`id`, `objectType`, `objectID`, `product`, `project`, `
(11, 'story', 1, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:09:49', '', '', '0'),
(12, 'story', 2, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:16:37', '', '', '0'),
(13, 'story', 3, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:18:10', '', '', '0'),
-(14, 'story', 3, ',1,', 0, 0, 'productManager', 'changed', '2012-06-05 10:19:06', '', '', '0'),
+(14, 'story', 3, ',1,', 0, 0, 'productManager', 'changing', '2012-06-05 10:19:06', '', '', '0'),
(15, 'story', 4, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:20:16', '', '', '0'),
(16, 'story', 5, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:21:39', '', '', '0'),
(17, 'story', 6, ',1,', 0, 0, 'productManager', 'opened', '2012-06-05 10:23:11', '', '', '0'),
@@ -589,9 +589,9 @@ INSERT INTO `zt_story` (`id`, `parent`, `product`, `branch`, `module`, `plan`, `
(2, 0, 1, 0, 2, '1', 'po', '', 0, '新闻中心的设计和开发。', '', 'story', 1, 1, 'active', '', '', 'projected', '', '', 'productManager', '2012-06-05 10:16:37', 'productManager', '2012-06-05 10:16:37', 'productManager', '2012-06-05 10:25:33', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
(3, 0, 1, 0, 3, '1', 'po', '', 0, '成果展示的设计和开发', '', 'story', 1, 0, 'active', '', '', 'developing', '', '', 'productManager', '2012-06-05 10:18:10', 'productManager', '2012-06-05 10:18:10', 'productManager', '2012-06-05 10:25:38', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 2, '0', '0'),
(4, 0, 1, 0, 4, '1', 'po', '', 0, '售后服务的设计和开发', '', 'story', 1, 1, 'active', '', '', 'developed', '', '', 'productManager', '2012-06-05 10:20:16', 'productManager', '2012-06-05 10:20:16', 'productManager', '2012-06-05 10:25:42', 'productManager, ', '2012-06-05 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(5, 0, 1, 0, 5, '1', 'po', '', 0, '诚聘英才的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:21:39', 'productManager', '2012-06-05 10:21:39', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(6, 0, 1, 0, 6, '1', 'po', '', 0, '合作洽谈的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:23:11', 'productManager', '2012-06-05 10:23:11', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
-(7, 0, 1, 0, 7, '1', 'po', '', 0, '关于我们的设计和开发', '', 'story', 1, 1, 'draft', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:24:19', 'productManager', '2012-06-05 10:24:19', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0');
+(5, 0, 1, 0, 5, '1', 'po', '', 0, '诚聘英才的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:21:39', 'productManager', '2012-06-05 10:21:39', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
+(6, 0, 1, 0, 6, '1', 'po', '', 0, '合作洽谈的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:23:11', 'productManager', '2012-06-05 10:23:11', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0'),
+(7, 0, 1, 0, 7, '1', 'po', '', 0, '关于我们的设计和开发', '', 'story', 1, 1, 'reviewing', '', '', 'planned', '', '', 'productManager', '2012-06-05 10:24:19', 'productManager', '2012-06-05 10:24:19', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', '0000-00-00 00:00:00', '', 0, '', '', 0, 1, '0', '0');
INSERT INTO `zt_storyspec` (`story`, `version`, `title`, `spec`, `verify`) VALUES
(1, 1, '首页设计和开发', '作为一名本公司的用户,我希望可以在首页看到该公司网站的基本内容,例如最新动态、部分成果展示、联系信息、工商信息等。
', '开发并通过验收
'),
(2, 1, '新闻中心的设计和开发。', '作为一名本公司的用户,我希望可以在新闻中心看到该公司网站的企业新闻,这样可以通过新闻了解企业的最新动态。
', ''),
diff --git a/db/standard/zentao17.5.sql b/db/standard/zentao17.5.sql
new file mode 100644
index 0000000000..0b25e0fd50
--- /dev/null
+++ b/db/standard/zentao17.5.sql
@@ -0,0 +1,3982 @@
+CREATE TABLE `zt_account` (
+ `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(255) NOT NULL,
+ `provider` varchar(255) NOT NULL,
+ `adminURI` varchar(255) NOT NULL,
+ `account` varchar(255) NOT NULL,
+ `password` varchar(255) NOT NULL,
+ `email` varchar(255) NOT NULL,
+ `mobile` varchar(255) NOT NULL,
+ `extra` text NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `name` (`name`),
+ KEY `provider` (`provider`),
+ KEY `status` (`status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_action` (
+ `id` int(9) unsigned NOT NULL AUTO_INCREMENT,
+ `objectType` varchar(30) NOT NULL DEFAULT '',
+ `objectID` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `product` text NOT NULL,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `actor` varchar(100) NOT NULL DEFAULT '',
+ `action` varchar(80) NOT NULL DEFAULT '',
+ `date` datetime NOT NULL,
+ `comment` text NOT NULL,
+ `extra` text,
+ `read` enum('0','1') NOT NULL DEFAULT '0',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `efforted` tinyint(1) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `date` (`date`),
+ KEY `actor` (`actor`),
+ KEY `project` (`project`),
+ KEY `action` (`action`),
+ KEY `objectID` (`objectID`)
+) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_activity` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `process` mediumint(9) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `optional` varchar(255) NOT NULL,
+ `tailorNorm` varchar(255) NOT NULL,
+ `content` mediumtext NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `order` mediumint(8) DEFAULT '0',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=90 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_api` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `product` varchar(255) NOT NULL DEFAULT '',
+ `lib` int(10) unsigned NOT NULL DEFAULT '0',
+ `module` int(10) unsigned NOT NULL DEFAULT '0',
+ `title` varchar(100) NOT NULL DEFAULT '',
+ `path` varchar(255) NOT NULL DEFAULT '',
+ `protocol` varchar(10) NOT NULL DEFAULT '',
+ `method` varchar(10) NOT NULL DEFAULT '',
+ `requestType` varchar(100) NOT NULL DEFAULT '',
+ `responseType` varchar(100) NOT NULL DEFAULT '',
+ `status` varchar(20) NOT NULL DEFAULT '',
+ `owner` varchar(30) NOT NULL DEFAULT '0',
+ `desc` mediumtext NULL,
+ `version` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `params` text,
+ `paramsExample` text,
+ `responseExample` text,
+ `response` text,
+ `commonParams` text,
+ `addedBy` varchar(30) NOT NULL DEFAULT '0',
+ `addedDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL DEFAULT '0',
+ `editedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=70 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_api_lib_release` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `lib` int(10) unsigned NOT NULL DEFAULT '0',
+ `desc` varchar(255) NOT NULL DEFAULT '',
+ `version` varchar(255) NOT NULL DEFAULT '',
+ `snap` mediumtext NOT NULL,
+ `addedBy` varchar(30) NOT NULL DEFAULT '0',
+ `addedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_apispec` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `doc` int(10) unsigned NOT NULL DEFAULT '0',
+ `module` int(10) unsigned NOT NULL DEFAULT '0',
+ `title` varchar(100) NOT NULL DEFAULT '',
+ `path` varchar(255) NOT NULL DEFAULT '',
+ `protocol` varchar(10) NOT NULL DEFAULT '',
+ `method` varchar(10) NOT NULL DEFAULT '',
+ `requestType` varchar(100) NOT NULL DEFAULT '',
+ `responseType` varchar(100) NOT NULL DEFAULT '',
+ `status` varchar(20) NOT NULL DEFAULT '',
+ `owner` varchar(255) NOT NULL DEFAULT '0',
+ `desc` mediumtext NULL,
+ `version` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `params` text,
+ `paramsExample` text,
+ `responseExample` text,
+ `response` text,
+ `addedBy` varchar(30) NOT NULL DEFAULT '0',
+ `addedDate` datetime DEFAULT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=176 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_apistruct` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `lib` int(10) unsigned NOT NULL DEFAULT '0',
+ `name` varchar(30) NOT NULL DEFAULT '',
+ `type` varchar(50) NOT NULL DEFAULT '',
+ `desc` mediumtext NOT NULL DEFAULT '',
+ `version` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `attribute` text,
+ `addedBy` varchar(30) NOT NULL DEFAULT '0',
+ `addedDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL DEFAULT '0',
+ `editedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_apistruct_spec` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `type` varchar(50) NOT NULL DEFAULT '',
+ `desc` varchar(255) NOT NULL DEFAULT '',
+ `attribute` text,
+ `version` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `addedBy` varchar(30) NOT NULL DEFAULT '0',
+ `addedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approval` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `flow` mediumint(8) NOT NULL,
+ `objectType` varchar(30) NOT NULL,
+ `objectID` mediumint(9) NOT NULL,
+ `nodes` mediumtext NOT NULL,
+ `version` mediumint(9) NOT NULL,
+ `status` varchar(20) NOT NULL DEFAULT 'doing',
+ `result` varchar(20) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint(4) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalflow` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `code` varchar(100) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `version` mediumint(8) NOT NULL DEFAULT '1',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `deleted` tinyint(4) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalflowobject` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `root` int(8) NOT NULL,
+ `flow` int(8) NOT NULL,
+ `objectType` char(30) NOT NULL,
+ `objectID` mediumint(9) NOT NULL,
+ `extra` varchar(255) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalflowspec` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `flow` mediumint(8) NOT NULL,
+ `version` mediumint(8) NOT NULL,
+ `nodes` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalnode` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `approval` mediumint(8) NOT NULL,
+ `type` enum('review','cc') NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `account` char(30) NOT NULL,
+ `node` varchar(100) NOT NULL,
+ `reviewType` varchar(100) NOT NULL DEFAULT 'manual',
+ `multipleType` enum('and','or') NOT NULL DEFAULT 'and',
+ `prev` mediumtext NOT NULL,
+ `next` mediumtext NOT NULL,
+ `status` varchar(20) NOT NULL DEFAULT 'wait',
+ `result` varchar(10) NOT NULL,
+ `date` date NOT NULL,
+ `opinion` mediumtext NOT NULL,
+ `extra` mediumtext NOT NULL,
+ `reviewedBy` char(30) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `idx_reviewed_date` (`reviewedDate`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalobject` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `approval` int(8) NOT NULL,
+ `objectType` char(30) NOT NULL,
+ `objectID` mediumint(8) NOT NULL,
+ `extra` varchar(255) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_approvalrole` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `code` char(30) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `desc` text NOT NULL,
+ `users` longtext NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_asset` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `group` varchar(128) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_assetlib` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(255) NOT NULL,
+ `desc` mediumtext 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_attend` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `account` char(30) NOT NULL,
+ `date` date NOT NULL,
+ `signIn` time NOT NULL,
+ `signOut` time NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT '',
+ `ip` varchar(15) NOT NULL,
+ `device` varchar(30) NOT NULL,
+ `client` varchar(20) NOT NULL,
+ `manualIn` time NOT NULL,
+ `manualOut` time NOT NULL,
+ `reason` varchar(30) NOT NULL DEFAULT '',
+ `desc` text NOT NULL,
+ `reviewStatus` varchar(30) NOT NULL DEFAULT '',
+ `reviewedBy` char(30) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `attend` (`date`,`account`),
+ KEY `account` (`account`),
+ KEY `date` (`date`),
+ KEY `status` (`status`),
+ KEY `reason` (`reason`),
+ KEY `reviewStatus` (`reviewStatus`),
+ KEY `reviewedBy` (`reviewedBy`)
+) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_attendstat` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `account` char(30) NOT NULL,
+ `month` char(10) NOT NULL DEFAULT '',
+ `normal` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `late` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `early` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `absent` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `trip` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `egress` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `lieu` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `paidLeave` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `unpaidLeave` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `timeOvertime` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `restOvertime` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `holidayOvertime` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `deserve` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `actual` decimal(12,2) NOT NULL DEFAULT '0.00',
+ `status` char(30) NOT NULL DEFAULT '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `attend` (`month`,`account`),
+ KEY `account` (`account`),
+ KEY `month` (`month`),
+ KEY `status` (`status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_auditcl` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `model` char(30) NOT NULL DEFAULT 'waterfall',
+ `practiceArea` char(30) NOT NULL,
+ `type` char(30) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `objectType` char(30) NOT NULL,
+ `objectID` int(10) DEFAULT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_auditplan` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `dateType` char(30) DEFAULT NULL,
+ `config` text,
+ `objectID` mediumint(9) NOT NULL,
+ `objectType` char(30) NOT NULL,
+ `process` mediumint(9) NOT NULL,
+ `processType` char(30) NOT NULL,
+ `checkDate` date NOT NULL,
+ `checkedBy` varchar(30) NOT NULL,
+ `realCheckDate` date NOT NULL,
+ `result` char(30) NOT NULL,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ `checkBy` varchar(30) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_auditresult` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `auditplan` mediumint(8) NOT NULL,
+ `listID` mediumint(8) NOT NULL,
+ `result` char(30) NOT NULL,
+ `checkedBy` varchar(30) NOT NULL,
+ `checkedDate` date NOT NULL,
+ `comment` text NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_baseimage` (
+ `id` smallint(7) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `path` varchar(255) NOT NULL DEFAULT '',
+ `osType` varchar(50) NOT NULL DEFAULT '',
+ `os` varchar(50) NOT NULL DEFAULT '',
+ `osCategory` varchar(50) NOT NULL DEFAULT '',
+ `osArch` varchar(50) NOT NULL DEFAULT '',
+ `osLang` varchar(50) NOT NULL DEFAULT '',
+ `suggestCore` tinyint(1) unsigned NOT NULL DEFAULT '0',
+ `suggestMemory` mediumint(6) unsigned NOT NULL DEFAULT '0',
+ `suggestVolume` mediumint(6) unsigned NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_baseimagebrowser` (
+ `vmBackingID` int(10) NOT NULL,
+ `browserID` int(10) NOT NULL,
+ PRIMARY KEY (`vmBackingID`,`browserID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_basicmeas` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `purpose` varchar(50) NOT NULL,
+ `scope` char(30) NOT NULL,
+ `object` char(30) NOT NULL,
+ `name` varchar(90) NOT NULL,
+ `code` char(30) NOT NULL,
+ `unit` varchar(10) NOT NULL,
+ `configure` text,
+ `params` text,
+ `definition` text,
+ `source` varchar(255) DEFAULT NULL,
+ `collectType` varchar(30) NOT NULL,
+ `collectConf` text NOT NULL,
+ `execTime` varchar(30) NOT NULL,
+ `collectedBy` varchar(10) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `order` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `code` (`code`)
+) ENGINE=InnoDB AUTO_INCREMENT=54 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_block` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `account` char(30) NOT NULL,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `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_vision_module_type_order` (`account`,`vision`,`module`,`type`,`order`),
+ KEY `account` (`account`)
+) ENGINE=InnoDB AUTO_INCREMENT=11 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,
+ `default` enum('0','1') NOT NULL DEFAULT '0',
+ `status` enum('active','closed') NOT NULL DEFAULT 'active',
+ `desc` varchar(255) NOT NULL,
+ `createdDate` date NOT NULL,
+ `closedDate` date NOT NULL,
+ `order` smallint(5) unsigned NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_browser` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `type` varchar(255) NOT NULL DEFAULT '',
+ `version` varchar(255) NOT NULL DEFAULT '',
+ `lang` varchar(255) NOT NULL DEFAULT '',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_budget` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `stage` char(30) NOT NULL,
+ `subject` mediumint(8) NOT NULL,
+ `amount` char(30) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `lastEditedBy` char(30) NOT NULL,
+ `lastEditedDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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',
+ `injection` mediumint(8) unsigned NOT NULL,
+ `identify` mediumint(8) unsigned NOT NULL,
+ `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` mediumtext 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,
+ `feedbackBy` varchar(100) NOT NULL,
+ `notifyEmail` varchar(100) NOT NULL,
+ `mailto` text,
+ `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',
+ `feedback` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `result` mediumint(8) unsigned NOT NULL,
+ `repo` mediumint(8) unsigned NOT NULL,
+ `mr` mediumint(8) unsigned NOT NULL,
+ `entry` text NOT NULL,
+ `lines` varchar(10) NOT NULL,
+ `v1` varchar(40) NOT NULL,
+ `v2` varchar(40) NOT NULL,
+ `repoType` varchar(30) NOT NULL DEFAULT '',
+ `issueKey` varchar(50) 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=InnoDB 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` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`),
+ KEY `execution` (`execution`)
+) ENGINE=InnoDB 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=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_cfd` (
+ `id` int(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+ `execution` int(8) NOT NULL,
+ `type` char(30) NOT NULL,
+ `name` char(30) NOT NULL,
+ `count` smallint NOT NULL,
+ `date` date NOT NULL,
+ UNIQUE KEY `execution_type_name_date` (`execution`,`type`,`name`,`date`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_cmcl` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` char(30) NOT NULL,
+ `title` int(11) NOT NULL,
+ `contents` text NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `order` int(11) 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=InnoDB 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=InnoDB AUTO_INCREMENT=2 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,
+ `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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_config` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `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` (`vision`,`owner`,`module`,`section`,`key`)
+) ENGINE=InnoDB AUTO_INCREMENT=33 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=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_deploy` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `begin` datetime NOT NULL,
+ `end` datetime NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `status` varchar(20) NOT NULL,
+ `owner` char(30) NOT NULL,
+ `members` text NOT NULL,
+ `notify` text NOT NULL,
+ `cases` text NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `result` varchar(20) NOT NULL,
+ `deleted` enum('0','1') NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_chart` (
+ `id` mediumint NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `dataset` varchar(30) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `settings` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_dashboard` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `module` mediumint NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `layout` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_dataset` (
+ `id` mediumint unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(155) NOT NULL,
+ `sql` text NOT NULL,
+ `fields` mediumtext NOT NULL,
+ `objects` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_deployproduct` (
+ `deploy` mediumint(8) unsigned NOT NULL,
+ `product` mediumint(8) unsigned NOT NULL,
+ `release` mediumint(8) unsigned NOT NULL,
+ `package` varchar(255) NOT NULL,
+ UNIQUE KEY `deploy_product_release` (`deploy`,`product`,`release`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_deployscope` (
+ `deploy` mediumint(8) unsigned NOT NULL,
+ `service` mediumint(8) unsigned NOT NULL,
+ `hosts` text NOT NULL,
+ `remove` text NOT NULL,
+ `add` text NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_deploystep` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `deploy` mediumint(8) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `begin` datetime NOT NULL,
+ `end` datetime NOT NULL,
+ `stage` varchar(30) NOT NULL,
+ `content` text NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `assignedTo` char(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `finishedBy` char(30) NOT NULL,
+ `finishedDate` datetime NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_design` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` varchar(255) NOT NULL,
+ `product` varchar(255) NOT NULL,
+ `commit` text NOT NULL,
+ `commitedBy` varchar(30) NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `name` varchar(255) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ `story` char(30) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `version` smallint(6) NOT NULL,
+ `type` char(30) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_designspec` (
+ `design` mediumint(8) NOT NULL,
+ `version` smallint(6) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `files` varchar(255) NOT NULL,
+ UNIQUE KEY `design` (`design`,`version`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_doc` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `project` mediumint(8) unsigned NOT NULL,
+ `product` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `lib` varchar(30) NOT NULL,
+ `template` varchar(30) NOT NULL,
+ `templateType` varchar(30) NOT NULL,
+ `chapterType` varchar(30) NOT NULL,
+ `module` varchar(30) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `keywords` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `parent` smallint(5) 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',
+ `views` smallint(5) unsigned NOT NULL,
+ `assetLib` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `assetLibType` varchar(30) NOT NULL DEFAULT '',
+ `from` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `fromVersion` smallint(6) NOT NULL DEFAULT '1',
+ `draft` longtext NOT NULL,
+ `collector` text NOT NULL,
+ `addedBy` varchar(30) NOT NULL,
+ `addedDate` datetime NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `approvedDate` date NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `mailto` text,
+ `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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_doclib` (
+ `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
+ `type` varchar(30) NOT NULL,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `product` mediumint(8) unsigned NOT NULL,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `name` varchar(60) NOT NULL,
+ `baseUrl` varchar(255) NOT NULL DEFAULT '',
+ `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,
+ `desc` mediumtext 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=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_domain` (
+ `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
+ `domain` varchar(255) NOT NULL,
+ `adminURI` varchar(255) NOT NULL,
+ `resolverURI` varchar(255) NOT NULL,
+ `register` varchar(255) NOT NULL,
+ `expiredDate` datetime NOT NULL,
+ `renew` varchar(255) NOT NULL,
+ `account` 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',
+ PRIMARY KEY (`id`),
+ KEY `domain` (`domain`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_durationestimation` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `stage` mediumint(9) NOT NULL,
+ `workload` varchar(255) NOT NULL,
+ `worktimeRate` varchar(255) NOT NULL,
+ `people` varchar(255) NOT NULL,
+ `startDate` date NOT NULL,
+ `endDate` date 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_effort` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `objectType` varchar(30) NOT NULL,
+ `objectID` mediumint(8) unsigned NOT NULL,
+ `product` text NOT NULL,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `account` varchar(30) NOT NULL,
+ `work` text,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `date` date NOT NULL,
+ `left` float NOT NULL,
+ `consumed` float NOT NULL,
+ `begin` smallint(4) unsigned zerofill NOT NULL,
+ `end` smallint(4) unsigned zerofill NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `execution` (`execution`),
+ KEY `objectID` (`objectID`),
+ KEY `date` (`date`),
+ KEY `account` (`account`)
+) ENGINE=InnoDB 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` mediumtext 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=InnoDB 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=InnoDB 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` mediumtext 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_faq` (
+ `id` mediumint(9) NOT NULL AUTO_INCREMENT,
+ `module` mediumint(9) NOT NULL,
+ `product` mediumint(9) NOT NULL,
+ `question` varchar(255) NOT NULL,
+ `answer` text NOT NULL,
+ `addedtime` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_feedback` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `product` mediumint(8) unsigned NOT NULL,
+ `module` mediumint(8) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `type` char(30) NOT NULL,
+ `solution` char(30) NOT NULL,
+ `desc` text NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `subStatus` varchar(30) NOT NULL DEFAULT '',
+ `public` enum('0','1') NOT NULL DEFAULT '0',
+ `notify` enum('0','1') NOT NULL DEFAULT '0',
+ `notifyEmail` varchar(100) NOT NULL,
+ `likes` text NOT NULL,
+ `result` mediumint(8) unsigned NOT NULL,
+ `faq` mediumint(8) unsigned NOT NULL,
+ `openedBy` char(30) NOT NULL,
+ `openedDate` datetime NOT NULL,
+ `reviewedBy` varchar(255) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ `processedBy` char(30) NOT NULL,
+ `processedDate` datetime NOT NULL,
+ `closedBy` char(30) NOT NULL,
+ `closedDate` datetime NOT NULL,
+ `closedReason` varchar(30) NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedTo` varchar(255) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `feedbackBy` varchar(100) NOT NULL,
+ `mailto` varchar(255) NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_feedbackview` (
+ `account` char(30) NOT NULL,
+ `product` mediumint(8) unsigned NOT NULL,
+ UNIQUE KEY `account_product` (`account`,`product`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_file` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `pathname` char(100) NOT NULL,
+ `title` varchar(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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_gapanalysis` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `account` varchar(30) NOT NULL,
+ `role` varchar(20) NOT NULL,
+ `analysis` mediumtext NOT NULL,
+ `needTrain` enum('no','yes') NOT NULL DEFAULT 'no',
+ `createdBy` char(30) DEFAULT 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`),
+ UNIQUE KEY `project_account` (`project`,`account`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_group` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `name` char(30) NOT NULL,
+ `role` char(30) NOT NULL DEFAULT '',
+ `desc` char(255) NOT NULL DEFAULT '',
+ `acl` text,
+ `developer` enum('0','1') NOT NULL DEFAULT '1',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=17 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_history` (
+ `id` int(9) 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_holiday` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(30) NOT NULL DEFAULT '',
+ `type` enum('holiday','working') NOT NULL DEFAULT 'holiday',
+ `desc` mediumtext NOT NULL,
+ `year` char(4) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `year` (`year`),
+ KEY `name` (`name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_host` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `assetID` mediumint(8) unsigned NOT NULL,
+ `admin` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `serverRoom` mediumint(8) unsigned NOT NULL,
+ `cabinet` varchar(128) NOT NULL,
+ `serverModel` varchar(256) NOT NULL,
+ `hardwareType` varchar(64) NOT NULL,
+ `hostType` enum('physical','virtual') NOT NULL,
+ `cpuBrand` varchar(128) NOT NULL,
+ `cpuModel` varchar(128) NOT NULL,
+ `cpuNumber` varchar(16) NOT NULL,
+ `cpuCores` varchar(30) NOT NULL,
+ `cpuRate` varchar(30) NOT NULL,
+ `memory` varchar(30) NOT NULL,
+ `diskType` varchar(30) NOT NULL,
+ `diskSize` varchar(30) NOT NULL,
+ `unit` enum('GB','TB') NOT NULL DEFAULT 'GB',
+ `privateIP` varchar(128) NOT NULL,
+ `publicIP` varchar(128) NOT NULL,
+ `nic` varchar(128) NOT NULL,
+ `mac` varchar(128) NOT NULL,
+ `osName` varchar(64) NOT NULL,
+ `osVersion` varchar(64) NOT NULL,
+ `webserver` varchar(128) NOT NULL,
+ `database` varchar(128) NOT NULL,
+ `language` varchar(16) NOT NULL,
+ `status` varchar(50) NOT NULL,
+ `agentPort` varchar(10) NOT NULL,
+ `instanceNum` tinyint(4) NOT NULL DEFAULT '0',
+ `pri` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `heartbeatTime` datetime NOT NULL,
+ `tags` varchar(50) NOT NULL DEFAULT '',
+ `provider` varchar(255) NOT NULL DEFAULT '',
+ `bridgeID` varchar(255) NOT NULL DEFAULT '',
+ `cloudKey` varchar(255) NOT NULL DEFAULT '',
+ `cloudSecret` varchar(255) NOT NULL DEFAULT '',
+ `cloudRegion` varchar(255) NOT NULL DEFAULT '',
+ `cloudNamespace` varchar(255) NOT NULL DEFAULT '',
+ `cloudUser` varchar(255) NOT NULL DEFAULT '',
+ `cloudAccount` varchar(255) NOT NULL DEFAULT '',
+ `cloudPassword` varchar(255) NOT NULL DEFAULT '',
+ `couldVPC` varchar(255) NOT NULL DEFAULT '',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_chat` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `gid` char(40) NOT NULL DEFAULT '',
+ `name` varchar(60) NOT NULL DEFAULT '',
+ `type` varchar(20) NOT NULL DEFAULT 'group',
+ `admins` varchar(255) NOT NULL DEFAULT '',
+ `committers` varchar(255) NOT NULL DEFAULT '',
+ `subject` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `public` enum('0','1') NOT NULL DEFAULT '0',
+ `createdBy` varchar(30) NOT NULL DEFAULT '',
+ `createdDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `ownedBy` varchar(30) NOT NULL DEFAULT '',
+ `editedBy` varchar(30) NOT NULL DEFAULT '',
+ `editedDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `mergedDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `lastActiveTime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `lastMessage` int(11) unsigned NOT NULL DEFAULT '0',
+ `lastMessageIndex` int(11) unsigned NOT NULL DEFAULT 0,
+ `dismissDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `pinnedMessages` text NOT NULL,
+ `mergedChats` text NOT NULL DEFAULT '',
+ `adminInvite` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `gid` (`gid`),
+ KEY `name` (`name`),
+ KEY `type` (`type`),
+ KEY `public` (`public`),
+ KEY `createdBy` (`createdBy`),
+ KEY `editedBy` (`editedBy`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_chat_message_index` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `gid` char(40) NOT NULL,
+ `tableName` char(64) NOT NULL,
+ `start` int(11) unsigned NOT NULL,
+ `end` int(11) unsigned NOT NULL,
+ `startIndex` int(11) unsigned NOT NULL,
+ `endIndex` int(11) unsigned NOT NULL,
+ `startDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `endDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `count` mediumint(8) unsigned NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `chattable` (`gid`,`tableName`),
+ KEY `start` (`start`),
+ KEY `end` (`end`),
+ KEY `startDate` (`startDate`),
+ KEY `endDate` (`endDate`),
+ KEY `chatstartindex` (`gid`,`startIndex`),
+ KEY `chatendindex` (`gid`,`endIndex`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_chatuser` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `cgid` char(40) NOT NULL DEFAULT '',
+ `user` mediumint(8) NOT NULL DEFAULT '0',
+ `order` smallint(5) NOT NULL DEFAULT '0',
+ `star` enum('0','1') NOT NULL DEFAULT '0',
+ `hide` enum('0','1') NOT NULL DEFAULT '0',
+ `mute` enum('0','1') NOT NULL DEFAULT '0',
+ `freeze` enum('0','1') NOT NULL DEFAULT '0',
+ `join` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `quit` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `category` varchar(40) NOT NULL DEFAULT '',
+ `lastReadMessage` int(11) unsigned NOT NULL DEFAULT '0',
+ `lastReadMessageIndex` int(11) unsigned NOT NULL DEFAULT 0,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `chatuser` (`cgid`,`user`),
+ KEY `cgid` (`cgid`),
+ KEY `user` (`user`),
+ KEY `order` (`order`),
+ KEY `star` (`star`),
+ KEY `hide` (`hide`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_client` (
+ `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `version` char(30) NOT NULL DEFAULT '',
+ `desc` varchar(100) NOT NULL DEFAULT '',
+ `changeLog` text NOT NULL,
+ `strategy` varchar(10) NOT NULL DEFAULT '',
+ `downloads` text NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `createdBy` varchar(30) NOT NULL DEFAULT '',
+ `editedDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL DEFAULT '',
+ `status` enum('released','wait') NOT NULL DEFAULT 'wait',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_conference` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `rid` char(40) NOT NULL DEFAULT '',
+ `cgid` char(40) NOT NULL DEFAULT '',
+ `status` enum('closed','open') NOT NULL DEFAULT 'closed',
+ `participants` text NOT NULL,
+ `invitee` text NOT NULL,
+ `openedBy` mediumint(8) NOT NULL DEFAULT '0',
+ `openedDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_conferenceaction` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `rid` char(40) NOT NULL DEFAULT '',
+ `type` enum('create','invite','join','leave','close','publish') NOT NULL DEFAULT 'create',
+ `data` text NOT NULL,
+ `user` mediumint(8) NOT NULL DEFAULT '0',
+ `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `device` char(40) NOT NULL DEFAULT 'default',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_message` (
+ `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `gid` char(40) NOT NULL DEFAULT '',
+ `cgid` char(40) NOT NULL DEFAULT '',
+ `user` varchar(30) NOT NULL DEFAULT '',
+ `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `index` int(11) unsigned NOT NULL DEFAULT 0,
+ `type` enum('normal','broadcast','notify','bulletin') NOT NULL DEFAULT 'normal',
+ `content` text NOT NULL,
+ `contentType` enum('text','plain','emotion','image','file','object','code') NOT NULL DEFAULT 'text',
+ `data` text NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `mgid` (`gid`),
+ KEY `mcgid` (`cgid`),
+ KEY `muser` (`user`),
+ KEY `mtype` (`type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_message_backup` (
+ `id` int(11) unsigned NOT NULL,
+ `gid` char(40) NOT NULL DEFAULT '',
+ `cgid` char(40) NOT NULL DEFAULT '',
+ `user` varchar(30) NOT NULL DEFAULT '',
+ `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `index` int(11) unsigned NOT NULL DEFAULT 0,
+ `type` enum('normal','broadcast','notify') NOT NULL DEFAULT 'normal',
+ `content` text NOT NULL,
+ `contentType` enum('text','plain','emotion','image','file','object','code') NOT NULL DEFAULT 'text',
+ `data` text NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_message_index` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `tableName` char(64) NOT NULL,
+ `start` int(11) unsigned NOT NULL,
+ `end` int(11) unsigned NOT NULL,
+ `startDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `endDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `chats` text NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `tableName` (`tableName`),
+ KEY `start` (`start`),
+ KEY `end` (`end`),
+ KEY `startDate` (`startDate`),
+ KEY `endDate` (`endDate`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_messagestatus` (
+ `user` mediumint(8) NOT NULL DEFAULT '0',
+ `message` int(11) unsigned NOT NULL,
+ `status` enum('waiting','sent','readed','deleted') NOT NULL DEFAULT 'waiting',
+ UNIQUE KEY `user` (`user`,`message`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_queue` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` char(30) NOT NULL,
+ `content` text NOT NULL,
+ `addDate` datetime NOT NULL,
+ `processDate` datetime NOT NULL,
+ `result` text NOT NULL,
+ `status` char(30) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_im_userdevice` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `user` mediumint(8) NOT NULL DEFAULT '0',
+ `device` char(40) NOT NULL DEFAULT 'default',
+ `deviceID` char(40) NOT NULL DEFAULT '',
+ `token` char(64) NOT NULL DEFAULT '',
+ `validUntil` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `lastLogin` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `lastLogout` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `userdevice` (`user`,`device`),
+ KEY `user` (`user`),
+ KEY `lastLogin` (`lastLogin`),
+ KEY `lastLogout` (`lastLogout`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_intervention` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `activity` mediumint(8) NOT NULL,
+ `status` char(30) NOT NULL,
+ `partake` text NOT NULL,
+ `begin` date NOT NULL,
+ `realBegin` date NOT NULL,
+ `situation` varchar(255) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `project` (`project`,`activity`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_issue` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `resolvedBy` varchar(30) NOT NULL,
+ `project` varchar(255) NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `pri` char(30) NOT NULL,
+ `severity` char(30) NOT NULL,
+ `type` char(30) NOT NULL,
+ `activity` varchar(255) NOT NULL,
+ `deadline` date NOT NULL,
+ `resolution` char(30) NOT NULL,
+ `resolutionComment` text NOT NULL,
+ `objectID` varchar(255) NOT NULL,
+ `resolvedDate` date NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `owner` varchar(255) NOT NULL,
+ `lib` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `from` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `version` smallint(6) NOT NULL DEFAULT '1',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `activateBy` varchar(30) NOT NULL,
+ `activateDate` date NOT NULL,
+ `closedBy` varchar(30) NOT NULL,
+ `closedDate` date NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `approvedDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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,
+ `sonarqubeServer` mediumint(8) unsigned NOT NULL,
+ `projectKey` 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanban` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `space` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `owner` varchar(30) NOT NULL,
+ `team` text NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `acl` char(30) NOT NULL DEFAULT 'open',
+ `whitelist` text NOT NULL,
+ `archived` enum('0','1') NOT NULL DEFAULT '1',
+ `performable` enum('0','1') NOT NULL DEFAULT '0',
+ `status` enum('active','closed') NOT NULL DEFAULT 'active',
+ `order` mediumint(8) NOT NULL DEFAULT '0',
+ `displayCards` smallint(6) NOT NULL DEFAULT '0',
+ `showWIP` enum('0','1') NOT NULL DEFAULT '1',
+ `fluidBoard` enum('0','1') NOT NULL DEFAULT '0',
+ `object` varchar(255) NOT NULL,
+ `alignment` varchar(10) NOT NULL DEFAULT 'center',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `lastEditedBy` char(30) NOT NULL,
+ `lastEditedDate` datetime NOT NULL,
+ `closedBy` char(30) NOT NULL,
+ `closedDate` datetime NOT NULL,
+ `activatedBy` char(30) NOT NULL,
+ `activatedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbancard` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `kanban` mediumint(8) unsigned NOT NULL,
+ `region` mediumint(8) unsigned NOT NULL,
+ `group` mediumint(8) unsigned NOT NULL,
+ `fromID` mediumint(8) unsigned NOT NULL,
+ `fromType` varchar(30) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT 'doing',
+ `pri` mediumint(8) unsigned NOT NULL,
+ `assignedTo` text NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `estimate` float unsigned NOT NULL,
+ `progress` float unsigned NOT NULL DEFAULT '0',
+ `color` char(7) NOT NULL,
+ `acl` char(30) NOT NULL DEFAULT 'open',
+ `whitelist` text NOT NULL,
+ `order` mediumint(8) NOT NULL DEFAULT '0',
+ `archived` enum('0','1') NOT NULL DEFAULT '0',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `lastEditedBy` char(30) NOT NULL,
+ `lastEditedDate` datetime NOT NULL,
+ `archivedBy` char(30) NOT NULL,
+ `archivedDate` datetime NOT NULL,
+ `assignedBy` char(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbancell` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `kanban` mediumint(8) NOT NULL,
+ `lane` mediumint(8) NOT NULL,
+ `column` mediumint(8) NOT NULL,
+ `type` char(30) NOT NULL,
+ `cards` text NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `card_group` (`kanban`,`type`,`lane`,`column`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbancolumn` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `parent` mediumint(8) NOT NULL DEFAULT '0',
+ `type` char(30) NOT NULL,
+ `region` mediumint(8) unsigned NOT NULL,
+ `group` mediumint(8) NOT NULL DEFAULT '0',
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `color` char(30) NOT NULL,
+ `limit` smallint(6) NOT NULL DEFAULT '-1',
+ `order` mediumint(8) NOT NULL DEFAULT '0',
+ `archived` enum('0','1') NOT NULL DEFAULT '0',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbangroup` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `kanban` mediumint(8) unsigned NOT NULL,
+ `region` mediumint(8) unsigned NOT NULL,
+ `order` smallint(6) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbanlane` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `execution` mediumint(8) NOT NULL DEFAULT '0',
+ `type` char(30) NOT NULL,
+ `region` mediumint(8) unsigned NOT NULL,
+ `group` mediumint(8) unsigned NOT NULL,
+ `groupby` char(30) NOT NULL,
+ `extra` char(30) NOT NULL,
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `color` char(30) NOT NULL,
+ `order` smallint(6) NOT NULL DEFAULT '0',
+ `lastEditedTime` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbanregion` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `space` mediumint(8) unsigned NOT NULL,
+ `kanban` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `order` mediumint(8) NOT NULL DEFAULT '0',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `lastEditedBy` char(30) NOT NULL,
+ `lastEditedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_kanbanspace` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(50) NOT NULL,
+ `owner` varchar(30) NOT NULL,
+ `team` text NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `acl` char(30) NOT NULL DEFAULT 'open',
+ `whitelist` text NOT NULL,
+ `status` enum('active','closed') NOT NULL DEFAULT 'active',
+ `order` mediumint(8) NOT NULL DEFAULT '0',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `lastEditedBy` char(30) NOT NULL,
+ `lastEditedDate` datetime NOT NULL,
+ `closedBy` char(30) NOT NULL,
+ `closedDate` datetime NOT NULL,
+ `activatedBy` char(30) NOT NULL,
+ `activatedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `lang` (`lang`,`module`,`section`,`key`,`vision`)
+) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_leave` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `year` char(4) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `start` time NOT NULL,
+ `finish` time NOT NULL,
+ `hours` float(4,1) unsigned NOT NULL DEFAULT '0.0',
+ `backDate` datetime NOT NULL,
+ `type` varchar(30) NOT NULL DEFAULT '',
+ `desc` text NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT '',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `reviewedBy` char(30) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ `level` tinyint(3) NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `reviewers` text NOT NULL,
+ `backReviewers` text NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `year` (`year`),
+ KEY `type` (`type`),
+ KEY `status` (`status`),
+ KEY `createdBy` (`createdBy`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_lieu` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `year` char(4) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `start` time NOT NULL,
+ `finish` time NOT NULL,
+ `hours` float(4,1) unsigned NOT NULL DEFAULT '0.0',
+ `overtime` char(255) NOT NULL,
+ `trip` char(255) NOT NULL,
+ `desc` text NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT '',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `reviewedBy` char(30) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ `level` tinyint(3) NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `reviewers` text NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `year` (`year`),
+ KEY `status` (`status`),
+ KEY `createdBy` (`createdBy`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_measqueue` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` varchar(30) NOT NULL,
+ `mid` mediumint(8) unsigned NOT NULL,
+ `status` varchar(255) NOT NULL,
+ `logs` text,
+ `execTime` varchar(10) NOT NULL,
+ `params` text,
+ `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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_measrecords` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `type` varchar(30) NOT NULL,
+ `mid` mediumint(8) NOT NULL,
+ `measCode` char(50) NOT NULL DEFAULT '',
+ `project` mediumint(8) unsigned NOT NULL,
+ `product` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `params` text NOT NULL,
+ `year` char(4) NOT NULL,
+ `month` char(6) NOT NULL,
+ `week` char(8) NOT NULL,
+ `day` char(8) NOT NULL,
+ `value` varchar(255) NOT NULL,
+ `date` date NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`),
+ KEY `project` (`project`),
+ KEY `time` (`year`,`month`,`day`,`week`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_meastemplate` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `model` char(30) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `content` mediumtext NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_meeting` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) NOT NULL,
+ `execution` mediumint(8) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(255) NOT NULL,
+ `begin` time NOT NULL,
+ `end` time NOT NULL,
+ `dept` mediumint(8) NOT NULL,
+ `mode` varchar(255) NOT NULL,
+ `host` varchar(30) NOT NULL,
+ `participant` text NOT NULL,
+ `date` date NOT NULL,
+ `room` int(11) NOT NULL,
+ `minutes` text NOT NULL,
+ `minutedBy` varchar(30) NOT NULL,
+ `minutedDate` datetime NOT NULL,
+ `objectType` varchar(30) NOT NULL,
+ `objectID` mediumint(8) 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_meetingroom` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `position` varchar(30) NOT NULL,
+ `seats` int(11) NOT NULL,
+ `equipment` varchar(255) NOT NULL,
+ `openTime` 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',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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,
+ `from` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `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=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_mr` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `hostID` mediumint(8) unsigned NOT NULL,
+ `sourceProject` varchar(50) NOT NULL,
+ `sourceBranch` varchar(100) NOT NULL,
+ `targetProject` varchar(50) NOT NULL,
+ `targetBranch` varchar(100) NOT NULL,
+ `mriid` int(10) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `description` text NOT NULL,
+ `assignee` varchar(255) NOT NULL,
+ `reviewer` varchar(255) NOT NULL,
+ `approver` 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,
+ `approvalStatus` char(30) NOT NULL,
+ `needApproved` enum('0','1') NOT NULL DEFAULT '0',
+ `needCI` enum('0','1') NOT NULL DEFAULT '0',
+ `repoID` mediumint(8) unsigned NOT NULL,
+ `jobID` mediumint(8) unsigned NOT NULL,
+ `compileID` mediumint(8) unsigned NOT NULL,
+ `compileStatus` char(30) NOT NULL,
+ `removeSourceBranch` enum('0','1') NOT NULL DEFAULT '0',
+ `synced` enum('0','1') NOT NULL DEFAULT '1',
+ `syncError` varchar(255) NOT NULL,
+ `hasNoConflict` enum('0','1') NOT NULL DEFAULT '0',
+ `diffs` longtext,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_mrapproval` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `mrID` mediumint(8) unsigned NOT NULL,
+ `account` varchar(255) NOT NULL,
+ `date` datetime NOT NULL,
+ `action` char(30) NOT NULL,
+ `comment` text NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_nc` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `auditplan` mediumint(8) NOT NULL,
+ `listID` mediumint(8) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `type` char(30) NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT 'active',
+ `severity` char(30) NOT NULL,
+ `deadline` date NOT NULL,
+ `resolvedBy` varchar(30) NOT NULL,
+ `resolution` char(30) NOT NULL,
+ `resolvedDate` date NOT NULL,
+ `closedBy` varchar(30) NOT NULL,
+ `closedDate` date NOT NULL,
+ `parent` mediumint(8) unsigned NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedDate` date NOT NULL,
+ `activateDate` date 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=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_object` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `product` mediumint(8) NOT NULL,
+ `from` mediumint(8) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `category` char(30) NOT NULL,
+ `version` varchar(255) NOT NULL,
+ `type` enum('reviewed','taged') NOT NULL,
+ `range` text NOT NULL,
+ `data` text NOT NULL,
+ `storyEst` char(30) NOT NULL,
+ `taskEst` char(30) NOT NULL,
+ `requestEst` char(30) NOT NULL,
+ `testEst` char(30) NOT NULL,
+ `devEst` char(30) NOT NULL,
+ `designEst` char(30) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_opportunity` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `source` char(30) NOT NULL,
+ `type` char(30) NOT NULL,
+ `strategy` char(30) NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT 'active',
+ `impact` mediumint(8) NOT NULL,
+ `chance` mediumint(8) NOT NULL,
+ `ratio` mediumint(8) NOT NULL,
+ `pri` char(30) NOT NULL,
+ `identifiedDate` date NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedDate` date NOT NULL,
+ `approvedDate` date NOT NULL,
+ `prevention` mediumtext NOT NULL,
+ `plannedClosedDate` date NOT NULL,
+ `actualClosedDate` date NOT NULL,
+ `lib` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `from` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `version` smallint(6) NOT NULL DEFAULT '1',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `activatedBy` varchar(30) NOT NULL,
+ `activatedDate` datetime NOT NULL,
+ `closedBy` varchar(30) NOT NULL,
+ `closedDate` datetime NOT NULL,
+ `canceledBy` varchar(30) NOT NULL,
+ `canceledDate` datetime NOT NULL,
+ `cancelReason` char(30) NOT NULL,
+ `hangupedBy` varchar(30) NOT NULL,
+ `hangupedDate` datetime NOT NULL,
+ `resolution` mediumtext NOT NULL,
+ `resolvedBy` varchar(30) NOT NULL,
+ `resolvedDate` datetime NOT NULL,
+ `lastCheckedBy` varchar(30) NOT NULL,
+ `lastCheckedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_overtime` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `year` char(4) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `start` time NOT NULL,
+ `finish` time NOT NULL,
+ `hours` float(4,1) unsigned NOT NULL DEFAULT '0.0',
+ `leave` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL DEFAULT '',
+ `desc` text NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT '',
+ `rejectReason` varchar(100) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `reviewedBy` char(30) NOT NULL,
+ `reviewedDate` datetime NOT NULL,
+ `level` tinyint(3) NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `reviewers` text NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `year` (`year`),
+ KEY `type` (`type`),
+ KEY `status` (`status`),
+ KEY `createdBy` (`createdBy`)
+) ENGINE=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_process` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `model` char(30) NOT NULL DEFAULT 'waterfall',
+ `name` varchar(255) NOT NULL,
+ `type` char(30) NOT NULL,
+ `abbr` char(30) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `order` mediumint(9) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=27 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` mediumtext NOT NULL,
+ `PO` varchar(30) NOT NULL,
+ `QD` varchar(30) NOT NULL,
+ `RD` varchar(30) NOT NULL,
+ `feedback` varchar(30) NOT NULL,
+ `acl` enum('open','private','custom') NOT NULL DEFAULT 'open',
+ `whitelist` text NOT NULL,
+ `reviewer` text NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `createdVersion` varchar(20) NOT NULL,
+ `order` mediumint(8) unsigned NOT NULL,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `acl` (`acl`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB 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,
+ `status` enum('wait','doing','done','closed') NOT NULL DEFAULT 'wait',
+ `desc` mediumtext NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `order` text NOT NULL,
+ `closedReason` varchar(20) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`),
+ KEY `end` (`end`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_programactivity` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `process` mediumint(8) NOT NULL,
+ `activity` mediumint(8) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `content` text NOT NULL,
+ `reason` varchar(255) NOT NULL,
+ `result` char(30) NOT NULL,
+ `linkedBy` char(30) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_programoutput` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `process` mediumint(8) NOT NULL,
+ `activity` mediumint(8) NOT NULL,
+ `output` mediumint(8) NOT NULL,
+ `content` text NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `reason` varchar(255) NOT NULL,
+ `result` char(30) NOT NULL,
+ `linkedBy` char(30) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_programprocess` (
+ `id` int(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `process` mediumint(8) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `type` char(30) NOT NULL,
+ `abbr` char(30) NOT NULL,
+ `desc` text NOT NULL,
+ `reason` varchar(255) NOT NULL,
+ `linkedBy` char(30) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_programreport` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `template` mediumint(8) NOT NULL,
+ `project` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `params` text NOT NULL,
+ `content` text NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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',
+ `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,
+ `status` varchar(10) NOT NULL,
+ `subStatus` varchar(30) NOT NULL DEFAULT '',
+ `pri` enum('1','2','3','4') NOT NULL DEFAULT '1',
+ `desc` mediumtext 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,
+ `suspendedDate` date 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,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `displayCards` smallint(6) NOT NULL DEFAULT '0',
+ `fluidBoard` enum('0','1') NOT NULL DEFAULT '0',
+ `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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_projectadmin` (
+ `group` smallint(6) NOT NULL,
+ `account` char(30) NOT NULL,
+ `programs` text NOT NULL,
+ `projects` text NOT NULL,
+ `products` text NOT NULL,
+ `executions` text NOT NULL,
+ UNIQUE KEY `group_account` (`group`, `account`)
+) ENGINE=InnoDB 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=InnoDB 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` varchar(255) NOT NULL,
+ PRIMARY KEY (`project`,`product`,`branch`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_projectstory` (
+ `project` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `product` mediumint(8) unsigned NOT NULL,
+ `branch` 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`),
+ KEY `story` (`story`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_relationoftasks` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `pretask` mediumint(8) unsigned NOT NULL,
+ `condition` enum('begin','end') NOT NULL,
+ `task` mediumint(8) unsigned NOT NULL,
+ `action` enum('begin','end') NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `relationoftasks` (`execution`,`task`)
+) ENGINE=InnoDB 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` mediumtext NOT NULL,
+ `mailto` text,
+ `notify` varchar(255) DEFAULT NULL,
+ `status` varchar(20) NOT NULL DEFAULT 'normal',
+ `subStatus` varchar(30) NOT NULL DEFAULT '',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`),
+ KEY `build` (`build`)
+) ENGINE=InnoDB 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,
+ `serviceHost` varchar(50) NOT NULL,
+ `serviceProject` 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,
+ `preMerge` enum('0','1') NOT NULL DEFAULT '0',
+ `job` mediumint(8) unsigned NOT NULL,
+ `fileServerUrl` text,
+ `fileServerAccount` varchar(40) NOT NULL DEFAULT '',
+ `fileServerPassword` varchar(100) NOT NULL DEFAULT '',
+ `deleted` tinyint(1) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_report` (
+ `id` mediumint(9) NOT NULL AUTO_INCREMENT,
+ `code` varchar(100) NOT NULL,
+ `name` text NOT NULL,
+ `module` varchar(100) NOT NULL,
+ `sql` text NOT NULL,
+ `vars` text NOT NULL,
+ `langs` text NOT NULL,
+ `params` text NOT NULL,
+ `step` tinyint(1) NOT NULL DEFAULT '2',
+ `desc` text NOT NULL,
+ `addedBy` char(30) NOT NULL,
+ `addedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `code` (`code`)
+) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_researchplan` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `customer` varchar(255) NOT NULL,
+ `stakeholder` varchar(255) NOT NULL,
+ `objective` varchar(255) NOT NULL,
+ `begin` datetime NOT NULL,
+ `end` datetime NOT NULL,
+ `location` varchar(255) NOT NULL,
+ `team` varchar(255) NOT NULL,
+ `method` enum('','videoConference','interview','questionnaire','telephoneInterview') NOT NULL,
+ `outline` mediumtext NOT NULL,
+ `schedule` mediumtext 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_researchreport` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `relatedPlan` mediumint(8) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `author` varchar(30) NOT NULL,
+ `content` mediumtext NOT NULL,
+ `customer` varchar(255) NOT NULL,
+ `researchObjects` varchar(255) NOT NULL,
+ `begin` datetime NOT NULL,
+ `end` datetime NOT NULL,
+ `location` varchar(255) NOT NULL,
+ `method` enum('','videoConference','interview','questionnaire','telephoneInterview') 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_review` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `object` mediumint(8) NOT NULL,
+ `template` mediumint(8) NOT NULL,
+ `doc` mediumint(8) DEFAULT NULL,
+ `docVersion` smallint(6) NOT NULL,
+ `status` char(30) NOT NULL,
+ `reviewedBy` varchar(255) NOT NULL,
+ `auditedBy` varchar(255) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deadline` date NOT NULL,
+ `lastReviewedBy` varchar(255) DEFAULT NULL,
+ `lastReviewedDate` date NOT NULL,
+ `lastAuditedBy` varchar(255) NOT NULL,
+ `lastAuditedDate` date NOT NULL,
+ `lastEditedBy` varchar(255) NOT NULL,
+ `lastEditedDate` date NOT NULL,
+ `result` char(30) NOT NULL,
+ `auditResult` char(30) NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_reviewcl` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `title` varchar(255) NOT NULL,
+ `object` char(30) NOT NULL,
+ `category` char(30) NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `order` mediumint(8) DEFAULT '0',
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_reviewissue` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `review` mediumint(8) NOT NULL,
+ `approval` mediumint(8) NOT NULL,
+ `injection` mediumint(8) NOT NULL,
+ `identify` mediumint(8) NOT NULL,
+ `type` char(30) NOT NULL DEFAULT 'review',
+ `listID` mediumint(8) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `opinion` varchar(255) NOT NULL,
+ `opinionDate` date NOT NULL,
+ `status` char(30) NOT NULL,
+ `resolution` char(30) NOT NULL,
+ `resolutionBy` char(30) NOT NULL,
+ `resolutionDate` date NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_reviewlist` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `title` varchar(255) NOT NULL,
+ `object` char(30) NOT NULL,
+ `category` char(30) NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedBy` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_reviewresult` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `review` mediumint(8) NOT NULL,
+ `type` char(30) NOT NULL DEFAULT 'review',
+ `result` char(30) NOT NULL,
+ `opinion` text NOT NULL,
+ `reviewer` char(30) NOT NULL,
+ `remainIssue` char(30) NOT NULL,
+ `createdDate` date NOT NULL,
+ `consumed` float NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `reviewer` (`review`,`reviewer`,`type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_risk` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` varchar(255) NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `source` char(30) NOT NULL,
+ `category` char(30) NOT NULL,
+ `strategy` char(30) NOT NULL,
+ `status` varchar(30) NOT NULL DEFAULT 'active',
+ `impact` char(30) NOT NULL,
+ `probability` char(30) NOT NULL,
+ `rate` char(30) NOT NULL,
+ `pri` char(30) NOT NULL,
+ `identifiedDate` date NOT NULL,
+ `prevention` mediumtext NOT NULL,
+ `remedy` mediumtext NOT NULL,
+ `plannedClosedDate` date NOT NULL,
+ `actualClosedDate` date NOT NULL,
+ `lib` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `from` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `version` smallint(6) NOT NULL DEFAULT '1',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `resolution` mediumtext NOT NULL,
+ `resolvedBy` varchar(30) NOT NULL,
+ `activateBy` varchar(30) NOT NULL,
+ `activateDate` date NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `closedBy` varchar(30) NOT NULL,
+ `closedDate` date NOT NULL,
+ `cancelBy` varchar(30) NOT NULL,
+ `cancelDate` date NOT NULL,
+ `cancelReason` char(30) NOT NULL,
+ `hangupBy` varchar(30) NOT NULL,
+ `hangupDate` date NOT NULL,
+ `trackedBy` varchar(30) NOT NULL,
+ `trackedDate` date NOT NULL,
+ `assignedDate` date NOT NULL,
+ `approvedDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_riskissue` (
+ `risk` mediumint(8) unsigned NOT NULL,
+ `issue` mediumint(8) unsigned NOT NULL,
+ UNIQUE KEY `risk_issue` (`risk`,`issue`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_searchdict` (
+ `key` smallint(5) unsigned NOT NULL,
+ `value` char(3) NOT NULL,
+ PRIMARY KEY (`key`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_searchindex` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_serverroom` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(128) NOT NULL,
+ `city` varchar(128) NOT NULL,
+ `line` varchar(20) NOT NULL,
+ `bandwidth` varchar(128) NOT NULL,
+ `provider` varchar(128) NOT NULL,
+ `owner` varchar(30) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_service` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `external` enum('0','1') NOT NULL DEFAULT '0',
+ `port` smallint(5) unsigned NOT NULL,
+ `entry` varchar(255) NOT NULL,
+ `deploy` varchar(255) NOT NULL,
+ `version` varchar(64) NOT NULL,
+ `color` char(7) NOT NULL,
+ `desc` mediumtext,
+ `dept` varchar(128) NOT NULL,
+ `devel` varchar(30) NOT NULL,
+ `qa` varchar(30) NOT NULL,
+ `ops` varchar(30) NOT NULL,
+ `hosts` text,
+ `softName` varchar(128) NOT NULL,
+ `softVersion` varchar(128) NOT NULL,
+ `type` varchar(20) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime 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(5) unsigned NOT NULL DEFAULT '0',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_solutions` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `execution` mediumint(8) unsigned NOT NULL,
+ `contents` text NOT NULL COMMENT '问题描述',
+ `support` text NOT NULL COMMENT '是否需要高层支持',
+ `measures` text NOT NULL COMMENT '解决建议',
+ `type` char(30) NOT NULL,
+ `addedBy` varchar(30) NOT NULL,
+ `addedDate` date NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_sqlview` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(90) NOT NULL,
+ `code` varchar(45) NOT NULL,
+ `sql` 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_stage` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `percent` varchar(255) NOT NULL,
+ `type` 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',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_stakeholder` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+ `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,
+ KEY `objectID` (`objectID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_story` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `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,
+ `source` varchar(20) NOT NULL,
+ `sourceNote` varchar(255) NOT NULL,
+ `fromBug` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `feedback` 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,
+ `lib` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `fromStory` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `fromVersion` smallint(6) NOT NULL DEFAULT '1',
+ `openedBy` varchar(30) NOT NULL DEFAULT '',
+ `openedDate` datetime NOT NULL,
+ `assignedTo` varchar(30) NOT NULL DEFAULT '',
+ `assignedDate` datetime NOT NULL,
+ `approvedDate` date NOT NULL,
+ `lastEditedBy` varchar(30) NOT NULL DEFAULT '',
+ `lastEditedDate` datetime NOT NULL,
+ `changedBy` VARCHAR(30) NOT NULL,
+ `changedDate` 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,
+ `activatedDate` datetime NOT NULL,
+ `toBug` mediumint(8) unsigned NOT NULL,
+ `childStories` varchar(255) NOT NULL,
+ `linkStories` varchar(255) NOT NULL,
+ `linkRequirements` varchar(255) NOT NULL,
+ `duplicateStory` mediumint(8) unsigned NOT NULL,
+ `version` smallint(6) NOT NULL DEFAULT '1',
+ `storyChanged` enum('0','1') NOT NULL DEFAULT '0',
+ `feedbackBy` varchar(100) NOT NULL,
+ `notifyEmail` varchar(100) NOT NULL,
+ `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=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_storyspec` (
+ `story` mediumint(9) NOT NULL,
+ `version` smallint(6) NOT NULL,
+ `title` varchar(255) NOT NULL,
+ `spec` mediumtext NOT NULL,
+ `verify` mediumtext NOT NULL,
+ UNIQUE KEY `story` (`story`,`version`)
+) ENGINE=InnoDB 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=InnoDB 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=InnoDB 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',
+ `fromIssue` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `feedback` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(20) NOT NULL,
+ `mode` varchar(10) 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,
+ `desc` mediumtext 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` datetime NOT NULL,
+ `order` mediumint(8) NOT NULL DEFAULT 0,
+ `repo` mediumint(8) unsigned NOT NULL,
+ `mr` 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,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ PRIMARY KEY (`id`),
+ KEY `execution` (`execution`),
+ KEY `story` (`story`),
+ KEY `parent` (`parent`),
+ KEY `assignedTo` (`assignedTo`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB 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,
+ PRIMARY KEY (`id`),
+ KEY `task` (`task`)
+) ENGINE=InnoDB 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=InnoDB 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 '',
+ `position` varchar(30) NOT NULL,
+ `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=InnoDB 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=InnoDB 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,
+ `deploy` mediumint(8) unsigned NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `case` (`case`),
+ KEY `version` (`version`),
+ KEY `run` (`run`)
+) ENGINE=InnoDB 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=InnoDB 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` mediumtext 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=InnoDB 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,
+ `desc` mediumtext 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 '',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `product` (`product`),
+ KEY `build` (`build`)
+) ENGINE=InnoDB 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,
+ `feedback` mediumint(8) unsigned NOT NULL,
+ `type` char(15) 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` mediumtext 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',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ PRIMARY KEY (`id`),
+ KEY `account` (`account`),
+ KEY `assignedTo` (`assignedTo`),
+ KEY `finishedBy` (`finishedBy`),
+ KEY `date` (`date`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_traincategory` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `name` char(30) NOT NULL DEFAULT '',
+ `parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `path` char(255) NOT NULL DEFAULT '',
+ `grade` tinyint(3) NOT NULL,
+ `order` mediumint(8) NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `parent` (`parent`),
+ KEY `path` (`path`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_traincontents` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `code` varchar(50) NOT NULL,
+ `course` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `name` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `parent` mediumint(8) unsigned NOT NULL DEFAULT '0',
+ `path` char(255) NOT NULL DEFAULT '',
+ `desc` text NOT NULL,
+ `order` mediumint(8) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `deleted` tinyint(1) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_traincourse` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `code` varchar(50) NOT NULL,
+ `category` mediumint(8) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `status` varchar(10) NOT NULL,
+ `teacher` varchar(30) NOT NULL DEFAULT '',
+ `desc` mediumtext NOT NULL,
+ `createdBy` varchar(255) NOT NULL,
+ `createdDate` date NOT NULL,
+ `editedBy` varchar(255) NOT NULL,
+ `editedDate` date NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_trainplan` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `place` varchar(255) NOT NULL,
+ `trainee` text NOT NULL,
+ `lecturer` varchar(20) NOT NULL,
+ `type` enum('inside','outside') NOT NULL DEFAULT 'inside',
+ `status` varchar(20) NOT NULL,
+ `summary` mediumtext NOT NULL,
+ `createdBy` char(30) DEFAULT 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_trainrecords` (
+ `user` char(30) NOT NULL,
+ `objectId` mediumint(8) unsigned NOT NULL,
+ `objectType` varchar(10) NOT NULL,
+ `status` varchar(10) NOT NULL,
+ PRIMARY KEY (`user`,`objectId`,`objectType`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_trip` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` enum('trip','egress') NOT NULL DEFAULT 'trip',
+ `customers` varchar(20) NOT NULL,
+ `name` char(30) NOT NULL,
+ `desc` text NOT NULL,
+ `year` char(4) NOT NULL,
+ `begin` date NOT NULL,
+ `end` date NOT NULL,
+ `start` time NOT NULL,
+ `finish` time NOT NULL,
+ `from` char(50) NOT NULL,
+ `to` char(50) NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `year` (`year`),
+ KEY `createdBy` (`createdBy`)
+) ENGINE=InnoDB 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 '',
+ `pinyin` varchar(255) 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',
+ `visions` varchar(20) NOT NULL DEFAULT 'rnd,lite',
+ `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',
+ `feedback` enum('0','1') NOT NULL DEFAULT '0',
+ `ranzhi` char(30) NOT NULL DEFAULT '',
+ `ldap` char(30) NOT NULL,
+ `score` int(11) NOT NULL DEFAULT '0',
+ `scoreLevel` int(11) NOT NULL DEFAULT '0',
+ `resetToken` varchar(50) NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ `clientStatus` enum('online','away','busy','offline','meeting') NOT NULL DEFAULT 'offline',
+ `clientLang` varchar(10) NOT NULL DEFAULT 'zh-cn',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `account` (`account`),
+ KEY `dept` (`dept`),
+ KEY `email` (`email`),
+ KEY `commiter` (`commiter`),
+ KEY `deleted` (`deleted`)
+) ENGINE=InnoDB AUTO_INCREMENT=2 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=InnoDB 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=InnoDB 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',
+ `common` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `account` (`account`),
+ KEY `module` (`module`)
+) ENGINE=InnoDB 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=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_vm` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `hostID` int(10) unsigned NOT NULL DEFAULT '0',
+ `name` varchar(255) NOT NULL DEFAULT '',
+ `osCategory` varchar(50) NOT NULL DEFAULT '',
+ `osType` varchar(50) NOT NULL DEFAULT '',
+ `osArch` varchar(50) NOT NULL DEFAULT '',
+ `osLang` varchar(50) NOT NULL DEFAULT '',
+ `osCpu` tinyint(2) NOT NULL DEFAULT 0,
+ `osMemory` smallint(6) NOT NULL DEFAULT 0,
+ `osDisk` smallint(6) NOT NULL DEFAULT 0,
+ `status` varchar(50) NOT NULL DEFAULT '',
+ `destroyAt` datetime DEFAULT NULL,
+ `macAddress` varchar(255) NOT NULL DEFAULT '',
+ `workspace` varchar(255) NOT NULL DEFAULT '',
+ `templateID` int(10) unsigned NOT NULL DEFAULT '0',
+ `baseImageID` int(10) unsigned NOT NULL DEFAULT '0',
+ `baseImagePath` varchar(255) NOT NULL DEFAULT '',
+ `desc` varchar(255) NOT NULL DEFAULT '',
+ `heatbeat` datetime DEFAULT NULL,
+ `vncPort` int(10) NOT NULL DEFAULT 0,
+ `instance` varchar(255) NOT NULL DEFAULT '',
+ `eip` varchar(255) NOT NULL DEFAULT '',
+ `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',
+ `public` varchar(50) NOT NULL DEFAULT '',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_vmtemplate` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `hostID` int(10) unsigned NOT NULL DEFAULT '0',
+ `templateName` varchar(255) NOT NULL DEFAULT '',
+ `osType` varchar(50) NOT NULL DEFAULT '',
+ `osCategory` varchar(50) NOT NULL DEFAULT '',
+ `osVersion` varchar(50) NOT NULL DEFAULT '',
+ `osLang` varchar(50) NOT NULL,
+ `cpuCoreNum` smallint(4) NOT NULL DEFAULT 0,
+ `memorySize` int NOT NULL DEFAULT 0,
+ `diskSize` int NOT NULL DEFAULT 0,
+ `osArch` varchar(50) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB 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=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_weeklyreport` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `weekStart` date NOT NULL,
+ `pv` float(9,2) NOT NULL,
+ `ev` float(9,2) NOT NULL,
+ `ac` float(9,2) NOT NULL,
+ `sv` float(9,2) NOT NULL,
+ `cv` float(9,2) NOT NULL,
+ `staff` smallint(5) unsigned NOT NULL,
+ `progress` varchar(255) NOT NULL,
+ `workload` varchar(255) NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `week` (`project`,`weekStart`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workestimation` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `project` mediumint(8) unsigned NOT NULL,
+ `scale` decimal(10,2) unsigned NOT NULL,
+ `productivity` decimal(10,2) unsigned NOT NULL,
+ `duration` decimal(10,2) unsigned NOT NULL,
+ `unitLaborCost` decimal(10,2) unsigned NOT NULL,
+ `totalLaborCost` decimal(10,2) unsigned NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `assignedTo` varchar(30) NOT NULL,
+ `assignedDate` datetime NOT NULL,
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ `dayHour` decimal(10,2) DEFAULT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflow` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `parent` varchar(30) NOT NULL,
+ `child` varchar(30) NOT NULL,
+ `type` varchar(10) NOT NULL DEFAULT 'flow',
+ `navigator` varchar(10) NOT NULL,
+ `app` varchar(20) NOT NULL,
+ `position` varchar(30) NOT NULL,
+ `module` varchar(30) NOT NULL,
+ `table` varchar(50) NOT NULL,
+ `name` varchar(30) NOT NULL,
+ `titleField` varchar(30) NOT NULL,
+ `contentField` text NOT NULL,
+ `flowchart` text NOT NULL,
+ `js` text NOT NULL,
+ `css` text NOT NULL,
+ `order` smallint(5) unsigned NOT NULL,
+ `buildin` tinyint(1) unsigned NOT NULL,
+ `administrator` text NOT NULL,
+ `desc` text NOT NULL,
+ `version` varchar(10) NOT NULL DEFAULT '1.0',
+ `status` varchar(10) NOT NULL DEFAULT 'wait',
+ `approval` enum('enabled', 'disabled') NOT NULL DEFAULT 'disabled',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `unique` (`app`,`module`,`vision`),
+ KEY `type` (`type`),
+ KEY `app` (`app`),
+ KEY `module` (`module`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowaction` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `action` varchar(50) NOT NULL,
+ `method` varchar(50) NOT NULL,
+ `name` varchar(50) NOT NULL,
+ `type` enum('single','batch') NOT NULL DEFAULT 'single',
+ `batchMode` enum('same','different') NOT NULL DEFAULT 'different',
+ `extensionType` varchar(10) NOT NULL DEFAULT 'override' COMMENT 'none | extend | override',
+ `open` varchar(20) NOT NULL,
+ `position` enum('menu','browseandview','browse','view') NOT NULL DEFAULT 'browseandview',
+ `layout` char(20) NOT NULL,
+ `show` enum('dropdownlist','direct') NOT NULL DEFAULT 'dropdownlist',
+ `order` smallint(5) unsigned NOT NULL,
+ `buildin` tinyint(1) unsigned NOT NULL,
+ `role` varchar(10) NOT NULL DEFAULT 'custom',
+ `virtual` tinyint(1) unsigned NOT NULL,
+ `conditions` text NOT NULL,
+ `verifications` text NOT NULL,
+ `hooks` text NOT NULL,
+ `linkages` text NOT NULL,
+ `js` text NOT NULL,
+ `css` text NOT NULL,
+ `toList` char(255) NOT NULL,
+ `blocks` text NOT NULL,
+ `desc` text NOT NULL,
+ `status` varchar(10) NOT NULL DEFAULT 'enable',
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `unique` (`module`,`action`,`vision`),
+ KEY `module` (`module`),
+ KEY `action` (`action`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB AUTO_INCREMENT=190 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowdatasource` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` enum('system','sql','func','option','lang','category') NOT NULL DEFAULT 'option',
+ `name` varchar(30) NOT NULL,
+ `code` varchar(30) NOT NULL,
+ `datasource` text NOT NULL,
+ `view` varchar(20) NOT NULL,
+ `keyField` varchar(50) NOT NULL,
+ `valueField` varchar(50) NOT NULL,
+ `buildin` tinyint(1) unsigned NOT NULL,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `type` (`type`)
+) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowfield` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `type` varchar(20) NOT NULL DEFAULT 'varchar',
+ `length` varchar(10) NOT NULL,
+ `name` varchar(50) NOT NULL,
+ `control` varchar(20) NOT NULL,
+ `expression` text NOT NULL,
+ `options` text NOT NULL,
+ `default` varchar(100) NOT NULL,
+ `rules` varchar(255) NOT NULL,
+ `placeholder` varchar(100) NOT NULL,
+ `order` smallint(5) unsigned NOT NULL,
+ `searchOrder` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `exportOrder` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `canExport` enum('0','1') NOT NULL DEFAULT '0',
+ `canSearch` enum('0','1') NOT NULL DEFAULT '0',
+ `isValue` enum('0','1') NOT NULL DEFAULT '0',
+ `readonly` enum('0','1') NOT NULL DEFAULT '0',
+ `buildin` tinyint(1) unsigned NOT NULL,
+ `role` varchar(10) NOT NULL DEFAULT 'custom',
+ `desc` text NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `unique` (`module`,`field`),
+ KEY `module` (`module`),
+ KEY `field` (`field`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB AUTO_INCREMENT=360 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowlabel` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `action` varchar(30) NOT NULL DEFAULT 'browse',
+ `code` varchar(30) NOT NULL,
+ `label` varchar(255) NOT NULL,
+ `params` text NOT NULL,
+ `orderBy` text NOT NULL,
+ `order` tinyint(3) NOT NULL,
+ `buildin` tinyint(1) unsigned NOT NULL,
+ `role` varchar(10) NOT NULL DEFAULT 'custom',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `module` (`module`)
+) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowlayout` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `action` varchar(50) NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `order` smallint(5) unsigned NOT NULL,
+ `width` smallint(5) NOT NULL,
+ `position` text NOT NULL,
+ `readonly` enum('0','1') NOT NULL DEFAULT '0',
+ `mobileShow` enum('0','1') NOT NULL DEFAULT '1',
+ `summary` varchar(20) NOT NULL,
+ `defaultValue` text NOT NULL,
+ `layoutRules` varchar(255) NOT NULL,
+ `vision` varchar(10) NOT NULL DEFAULT 'rnd',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `unique` (`module`,`action`,`field`,`vision`),
+ KEY `module` (`module`),
+ KEY `action` (`action`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB AUTO_INCREMENT=138 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowlinkdata` (
+ `objectType` varchar(30) NOT NULL,
+ `objectID` mediumint(8) unsigned NOT NULL,
+ `linkedType` varchar(30) NOT NULL,
+ `linkedID` mediumint(8) unsigned NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ UNIQUE KEY `unique` (`objectType`,`objectID`,`linkedType`,`linkedID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowrelation` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `prev` varchar(30) NOT NULL,
+ `next` varchar(30) NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `actions` varchar(20) NOT NULL,
+ `actionCodes` text NOT NULL,
+ `buildin` enum('0','1') NOT NULL DEFAULT '0',
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowrelationlayout` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `prev` varchar(30) NOT NULL,
+ `next` varchar(30) NOT NULL,
+ `action` varchar(50) NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `order` smallint(5) unsigned NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `unique` (`prev`,`next`,`action`,`field`),
+ KEY `prev` (`prev`),
+ KEY `next` (`next`),
+ KEY `action` (`action`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowreport` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL COMMENT 'module name',
+ `name` varchar(100) NOT NULL COMMENT 'report name',
+ `type` enum('pie','line','bar') NOT NULL DEFAULT 'pie' COMMENT 'report type',
+ `countType` enum('sum','count') NOT NULL DEFAULT 'sum' COMMENT 'report count method',
+ `displayType` enum('value','percent') NOT NULL DEFAULT 'value' COMMENT 'report display method',
+ `dimension` varchar(130) NOT NULL COMMENT 'dimension field code of zt_workflowfield',
+ `fields` text NOT NULL COMMENT 'count fileds code of zt_workflowfield,use comma split',
+ `order` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowrule` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `type` enum('system','regex','func') NOT NULL DEFAULT 'regex',
+ `name` varchar(30) NOT NULL,
+ `rule` text NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` char(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `type` (`type`)
+) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowsql` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `field` varchar(50) NOT NULL,
+ `action` varchar(50) NOT NULL,
+ `sql` text NOT NULL,
+ `vars` text NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `module` (`module`),
+ KEY `field` (`field`),
+ KEY `action` (`action`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_workflowversion` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `module` varchar(30) NOT NULL,
+ `version` varchar(10) NOT NULL,
+ `fields` text NOT NULL,
+ `actions` text NOT NULL,
+ `layouts` text NOT NULL,
+ `sqls` text NOT NULL,
+ `labels` text NOT NULL,
+ `table` text NOT NULL,
+ `datas` text NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `moduleversion` (`module`,`version`),
+ KEY `module` (`module`),
+ KEY `version` (`version`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_zoutput` (
+ `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
+ `activity` mediumint(8) NOT NULL,
+ `name` varchar(255) NOT NULL,
+ `content` mediumtext NOT NULL,
+ `optional` char(20) NOT NULL,
+ `tailorNorm` varchar(255) NOT NULL,
+ `status` varchar(30) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `editedBy` varchar(30) NOT NULL,
+ `editedDate` datetime NOT NULL,
+ `order` mediumint(8) DEFAULT '0',
+ `deleted` enum('0','1') NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=130 DEFAULT CHARSET=utf8;
+/*!40101 SET character_set_client = @saved_cs_client */;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_dayactions` AS SELECT
+ 1 AS `actions`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daybugopen` AS SELECT
+ 1 AS `bugopen`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daybugresolve` AS SELECT
+ 1 AS `bugresolve`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_dayeffort` AS SELECT
+ 1 AS `consumed`,
+ 1 AS `date`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daystoryclose` AS SELECT
+ 1 AS `storyclose`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daystoryopen` AS SELECT
+ 1 AS `storyopen`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daytaskfinish` AS SELECT
+ 1 AS `taskfinish`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_daytaskopen` AS SELECT
+ 1 AS `taskopen`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_dayuserlogin` AS SELECT
+ 1 AS `userlogin`,
+ 1 AS `day`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_executionsummary` AS SELECT
+ 1 AS `execution`,
+ 1 AS `estimate`,
+ 1 AS `consumed`,
+ 1 AS `left`,
+ 1 AS `number`,
+ 1 AS `undone`,
+ 1 AS `totalReal`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_productbugs` AS SELECT
+ 1 AS `product`,
+ 1 AS `bugs`,
+ 1 AS `resolutions`,
+ 1 AS `seriousBugs`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_productstories` AS SELECT
+ 1 AS `product`,
+ 1 AS `stories`,
+ 1 AS `undone`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_projectbugs` AS SELECT
+ 1 AS `execution`,
+ 1 AS `bugs`,
+ 1 AS `resolutions`,
+ 1 AS `seriousBugs`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_projectstories` AS SELECT
+ 1 AS `execution`,
+ 1 AS `stories`,
+ 1 AS `undone`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_projectsummary` AS SELECT
+ 1 AS `project`,
+ 1 AS `estimate`,
+ 1 AS `consumed`,
+ 1 AS `left`,
+ 1 AS `number`,
+ 1 AS `undone`,
+ 1 AS `totalReal`*/;
+SET character_set_client = @saved_cs_client;
+SET @saved_cs_client = @@character_set_client;
+SET character_set_client = utf8;
+/*!50001 CREATE VIEW `ztv_projectteams` AS SELECT
+ 1 AS `execution`,
+ 1 AS `teams`*/;
+SET character_set_client = @saved_cs_client;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_10`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_10` AS select `zt_build`.`id` AS `id`,`zt_build`.`name` AS `name` from `zt_build` where (`zt_build`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_11`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_11` AS select `zt_module`.`id` AS `id`,`zt_module`.`name` AS `name` from `zt_module` where (`zt_module`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_12`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_12` AS select `zt_productplan`.`id` AS `id`,`zt_productplan`.`title` AS `title` from `zt_productplan` where (`zt_productplan`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_4`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_4` AS select `zt_story`.`id` AS `id`,`zt_story`.`title` AS `title` from `zt_story` where (`zt_story`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_41`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_41` AS select `zt_case`.`id` AS `id`,`zt_case`.`title` AS `title` from `zt_case` where (`zt_case`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_46`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_46` AS select `zt_task`.`id` AS `id`,`zt_task`.`name` AS `name` from `zt_task` where ((`zt_task`.`deleted` = '0') and (`zt_task`.`vision` = 'lite')) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_5`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_5` AS select `zt_task`.`id` AS `id`,`zt_task`.`name` AS `name` from `zt_task` where ((`zt_task`.`deleted` = '0') and (`zt_task`.`vision` = 'rnd')) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `view_datasource_6`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `view_datasource_6` AS select `zt_bug`.`id` AS `id`,`zt_bug`.`title` AS `title` from `zt_bug` where (`zt_bug`.`deleted` = '0') */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_dayactions`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_dayactions` AS select count(0) AS `actions`,left(`zt_action`.`date`,10) AS `day` from `zt_action` group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daybugopen`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daybugopen` AS select count(0) AS `bugopen`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'bug') and (`zt_action`.`action` = 'opened')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daybugresolve`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daybugresolve` AS select count(0) AS `bugresolve`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'bug') and (`zt_action`.`action` = 'resolved')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_dayeffort`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_dayeffort` AS select round(sum(`zt_effort`.`consumed`),1) AS `consumed`,`zt_effort`.`date` AS `date` from `zt_effort` group by `zt_effort`.`date` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daystoryclose`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daystoryclose` AS select count(0) AS `storyclose`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'story') and (`zt_action`.`action` = 'closed')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daystoryopen`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daystoryopen` AS select count(0) AS `storyopen`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'story') and (`zt_action`.`action` = 'opened')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daytaskfinish`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daytaskfinish` AS select count(0) AS `taskfinish`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'task') and (`zt_action`.`action` = 'finished')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_daytaskopen`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_daytaskopen` AS select count(0) AS `taskopen`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'task') and (`zt_action`.`action` = 'opened')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_dayuserlogin`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_dayuserlogin` AS select count(0) AS `userlogin`,left(`zt_action`.`date`,10) AS `day` from `zt_action` where ((`zt_action`.`objectType` = 'user') and (`zt_action`.`action` = 'login')) group by left(`zt_action`.`date`,10) */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_executionsummary`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_executionsummary` AS select `zt_task`.`execution` AS `execution`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`estimate`,0)) AS `estimate`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0)) AS `consumed`,sum(if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0)) AS `left`,count(0) AS `number`,sum(if(((`zt_task`.`status` <> 'done') and (`zt_task`.`status` <> 'closed')),1,0)) AS `undone`,sum((if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0) + if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0))) AS `totalReal` from `zt_task` where (`zt_task`.`deleted` = '0') group by `zt_task`.`execution` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_productbugs`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_productbugs` AS select `zt_bug`.`product` AS `product`,count(0) AS `bugs`,sum(if((`zt_bug`.`resolution` = ''),0,1)) AS `resolutions`,sum(if((`zt_bug`.`severity` <= 2),1,0)) AS `seriousBugs` from `zt_bug` where (`zt_bug`.`deleted` = '0') group by `zt_bug`.`product` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_productstories`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_productstories` AS select `zt_story`.`product` AS `product`,count('*') AS `stories`,sum(if((`zt_story`.`status` = 'closed'),0,1)) AS `undone` from `zt_story` where (`zt_story`.`deleted` = '0') group by `zt_story`.`product` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_projectbugs`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_projectbugs` AS select `zt_bug`.`execution` AS `execution`,count(0) AS `bugs`,sum(if((`zt_bug`.`resolution` = ''),0,1)) AS `resolutions`,sum(if((`zt_bug`.`severity` <= 2),1,0)) AS `seriousBugs` from `zt_bug` where (`zt_bug`.`deleted` = '0') group by `zt_bug`.`execution` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_projectstories`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_projectstories` AS select `t1`.`project` AS `execution`,count('*') AS `stories`,sum(if((`t2`.`status` = 'closed'),0,1)) AS `undone` from ((`zt_projectstory` `t1` left join `zt_story` `t2` on((`t1`.`story` = `t2`.`id`))) left join `zt_project` `t3` on((`t1`.`project` = `t3`.`id`))) where ((`t2`.`deleted` = '0') and (`t3`.`type` in ('sprint','stage'))) group by `t1`.`project` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_projectsummary`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_projectsummary` AS select `zt_task`.`project` AS `project`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`estimate`,0)) AS `estimate`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0)) AS `consumed`,sum(if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0)) AS `left`,count(0) AS `number`,sum(if(((`zt_task`.`status` <> 'done') and (`zt_task`.`status` <> 'closed')),1,0)) AS `undone`,sum((if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0) + if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0))) AS `totalReal` from `zt_task` where (`zt_task`.`deleted` = '0') group by `zt_task`.`project` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
+/*!50001 DROP VIEW IF EXISTS `ztv_projectteams`*/;
+/*!50001 SET @saved_cs_client = @@character_set_client */;
+/*!50001 SET @saved_cs_results = @@character_set_results */;
+/*!50001 SET @saved_col_connection = @@collation_connection */;
+/*!50001 SET character_set_client = utf8 */;
+/*!50001 SET character_set_results = utf8 */;
+/*!50001 SET collation_connection = utf8_general_ci */;
+/*!50001 CREATE ALGORITHM=UNDEFINED */
+/*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
+/*!50001 VIEW `ztv_projectteams` AS select `zt_team`.`root` AS `execution`,count('*') AS `teams` from `zt_team` where (`zt_team`.`type` = 'execution') group by `zt_team`.`root` */;
+/*!50001 SET character_set_client = @saved_cs_client */;
+/*!50001 SET character_set_results = @saved_cs_results */;
+/*!50001 SET collation_connection = @saved_col_connection */;
diff --git a/db/update17.4.sql b/db/update17.4.sql
new file mode 100644
index 0000000000..746f691ab8
--- /dev/null
+++ b/db/update17.4.sql
@@ -0,0 +1,62 @@
+ALTER TABLE `zt_task` ADD `order` mediumint(8) NOT NULL DEFAULT 0 AFTER `activatedDate`;
+ALTER TABLE `zt_task` ADD INDEX `order` (`order`);
+ALTER TABLE `zt_story` ADD COLUMN `linkRequirements` varchar(255) NOT NULL AFTER `linkStories`;
+
+ALTER TABLE `zt_productplan` ADD `createdBy` varchar(30) NOT NULL AFTER `closedReason`;
+ALTER TABLE `zt_productplan` ADD `createdDate` datetime NOT NULL AFTER `createdBy`;
+
+ALTER TABLE `zt_release` ADD `createdBy` varchar(30) NOT NULL AFTER `subStatus`;
+ALTER TABLE `zt_release` ADD `createdDate` datetime NOT NULL AFTER `createdBy`;
+
+ALTER TABLE `zt_testtask` ADD `createdBy` varchar(30) NOT NULL AFTER `subStatus`;
+ALTER TABLE `zt_testtask` ADD `createdDate` datetime NOT NULL AFTER `createdBy`;
+
+ALTER TABLE `zt_build` ADD `createdBy` varchar(30) NOT NULL AFTER `desc`;
+ALTER TABLE `zt_build` ADD `createdDate` datetime NOT NULL AFTER `createdBy`;
+
+UPDATE `zt_workflowfield` SET `options`=(SELECT id FROM `zt_workflowdatasource` WHERE `code`='feedbackType' ORDER BY `id` DESC LIMIT 1) WHERE `module`='feedback' AND `field`='type';
+UPDATE `zt_workflowfield` SET `options`=(SELECT id FROM `zt_workflowdatasource` WHERE `code`='feedbackSolution' ORDER BY `id` DESC LIMIT 1) WHERE `module`='feedback' AND `field`='solution';
+UPDATE `zt_workflowfield` SET `options`=(SELECT id FROM `zt_workflowdatasource` WHERE `code`='feedbackclosedReason' ORDER BY `id` DESC LIMIT 1), `control`='select' WHERE `module`='feedback' AND `field`='closedReason';
+
+UPDATE `zt_project` SET `closedDate`='' AND `closedBy`='' WHERE `status` != 'closed';
+UPDATE `zt_grouppriv` SET `method`='exportTemplate' WHERE `method` = 'exportTemplet';
+
+INSERT INTO `zt_grouppriv` (SELECT `group`,`module`,'reply' FROM `zt_grouppriv` WHERE `module` = 'feedback' AND `method` = 'comment');
+INSERT INTO `zt_grouppriv` (SELECT `group`,`module`,'ask' FROM `zt_grouppriv` WHERE `module` = 'feedback' AND `method` = 'comment');
+
+CREATE TABLE `zt_chart` (
+ `id` mediumint NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `dataset` varchar(30) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `settings` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_dashboard` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `module` mediumint NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `layout` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+CREATE TABLE `zt_dataset` (
+ `id` mediumint unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(155) NOT NULL,
+ `sql` text NOT NULL,
+ `fields` mediumtext NOT NULL,
+ `objects` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
diff --git a/db/update17.5.sql b/db/update17.5.sql
new file mode 100644
index 0000000000..925889dfce
--- /dev/null
+++ b/db/update17.5.sql
@@ -0,0 +1,264 @@
+ALTER TABLE `zt_story` MODIFY `status` enum('','changed','active','draft','closed','reviewing') NOT NULL DEFAULT '' AFTER `estimate`;
+UPDATE `zt_story` SET `status` = 'reviewing' WHERE `status` = 'changed';
+ALTER TABLE `zt_story` MODIFY `status` enum('','changing','active','draft','closed','reviewing') NOT NULL DEFAULT '' AFTER `estimate`;
+
+ALTER TABLE `zt_feedback` ADD `repeatFeedback` mediumint(8) NOT NULL DEFAULT 0 AFTER `feedbackBy`;
+
+ALTER TABLE `zt_assetlib` ADD `order` SMALLINT UNSIGNED NOT NULL DEFAULT '0' AFTER `desc`;
+ALTER TABLE `zt_testsuite` ADD `order` SMALLINT UNSIGNED NOT NULL DEFAULT '0' AFTER `type`;
+
+ALTER TABLE `zt_bug` MODIFY COLUMN `os` varchar(255) NOT NULL default '';
+ALTER TABLE `zt_bug` MODIFY COLUMN `browser` varchar(255) NOT NULL default '';
+
+INSERT IGNORE INTO `zt_lang` (`lang`, `module`, `section`, `key`, `value`, `system`, `vision`) VALUES
+('zh-cn', 'bug', 'browserList', 'all', '全部', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'chrome', 'Chrome', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'edge', 'Edge', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie', 'IE系列', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie11', 'IE11', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie10', 'IE10', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie9', 'IE9', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie8', 'IE8', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie7', 'IE7', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'ie6', 'IE6', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'firefox', 'firefox系列', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'firefox4', 'firefox4', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'firefox3', 'firefox3', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'firefox2', 'firefox2', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'opera', 'Opera系列', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'opera11', 'opera11', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'opera10', 'opera10', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'opera9', 'opera9', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'safari', 'safari', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', '360', '360浏览器', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'qq', 'QQ浏览器', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'maxthon', '遨游', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'uc', 'UC', '1', 'rnd'),
+('zh-cn', 'bug', 'browserList', 'other', '其他', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'all', '全部', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'chrome', 'Chrome', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'edge', 'Edge', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie', 'IE系列', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie11', 'IE11', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie10', 'IE10', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie9', 'IE9', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie8', 'IE8', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie7', 'IE7', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'ie6', 'IE6', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'firefox', 'firefox系列', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'firefox4', 'firefox4', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'firefox3', 'firefox3', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'firefox2', 'firefox2', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'opera', 'Opera系列', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'opera11', 'opera11', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'opera10', 'opera10', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'opera9', 'opera9', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'safari', 'safari', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', '360', '360瀏覽器', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'qq', 'QQ瀏覽器', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'maxthon', '遨游', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'uc', 'UC', '1', 'rnd'),
+('zh-tw', 'bug', 'browserList', 'other', '其他', '1', 'rnd'),
+('en', 'bug', 'browserList', 'all', 'All', '1', 'rnd'),
+('en', 'bug', 'browserList', 'chrome', 'Chrome', '1', 'rnd'),
+('en', 'bug', 'browserList', 'edge', 'Edge', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie', 'IE series', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie11', 'IE11', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie10', 'IE10', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie9', 'IE9', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie8', 'IE8', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie7', 'IE7', '1', 'rnd'),
+('en', 'bug', 'browserList', 'ie6', 'IE6', '1', 'rnd'),
+('en', 'bug', 'browserList', 'firefox', 'Firefox series', '1', 'rnd'),
+('en', 'bug', 'browserList', 'firefox4', 'Firefox4', '1', 'rnd'),
+('en', 'bug', 'browserList', 'firefox3', 'Firefox3', '1', 'rnd'),
+('en', 'bug', 'browserList', 'firefox2', 'Firefox2', '1', 'rnd'),
+('en', 'bug', 'browserList', 'opera', 'Opera series', '1', 'rnd'),
+('en', 'bug', 'browserList', 'opera11', 'Opera11', '1', 'rnd'),
+('en', 'bug', 'browserList', 'opera10', 'Opera10', '1', 'rnd'),
+('en', 'bug', 'browserList', 'opera9', 'Opera9', '1', 'rnd'),
+('en', 'bug', 'browserList', 'safari', 'Safari', '1', 'rnd'),
+('en', 'bug', 'browserList', '360', '360', '1', 'rnd'),
+('en', 'bug', 'browserList', 'qq', 'QQ', '1', 'rnd'),
+('en', 'bug', 'browserList', 'maxthon', 'Maxthon', '1', 'rnd'),
+('en', 'bug', 'browserList', 'uc', 'UC', '1', 'rnd'),
+('en', 'bug', 'browserList', 'other', 'Others', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'all', 'Tous', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'chrome', 'Chrome', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'edge', 'Edge', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie', 'IE series', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie11', 'IE11', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie10', 'IE10', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie9', 'IE9', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie8', 'IE8', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie7', 'IE7', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'ie6', 'IE6', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'firefox', 'Firefox series', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'firefox4', 'Firefox4', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'firefox3', 'Firefox3', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'firefox2', 'Firefox2', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'opera', 'Opera series', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'opera11', 'Opera11', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'opera10', 'Opera10', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'opera9', 'Opera9', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'safari', 'Safari', '1', 'rnd'),
+('fr', 'bug', 'browserList', '360', '360', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'qq', 'QQ', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'maxthon', 'Maxthon', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'uc', 'UC', '1', 'rnd'),
+('fr', 'bug', 'browserList', 'other', 'Autres', '1', 'rnd'),
+('de', 'bug', 'browserList', 'all', 'Alle', '1', 'rnd'),
+('de', 'bug', 'browserList', 'chrome', 'Chrome', '1', 'rnd'),
+('de', 'bug', 'browserList', 'edge', 'Edge', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie', 'IE series', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie11', 'IE11', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie10', 'IE10', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie9', 'IE9', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie8', 'IE8', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie7', 'IE7', '1', 'rnd'),
+('de', 'bug', 'browserList', 'ie6', 'IE6', '1', 'rnd'),
+('de', 'bug', 'browserList', 'firefox', 'Firefox series', '1', 'rnd'),
+('de', 'bug', 'browserList', 'firefox4', 'Firefox4', '1', 'rnd'),
+('de', 'bug', 'browserList', 'firefox3', 'Firefox3', '1', 'rnd'),
+('de', 'bug', 'browserList', 'firefox2', 'Firefox2', '1', 'rnd'),
+('de', 'bug', 'browserList', 'opera', 'Opera series', '1', 'rnd'),
+('de', 'bug', 'browserList', 'opera11', 'Opera11', '1', 'rnd'),
+('de', 'bug', 'browserList', 'opera10', 'Opera10', '1', 'rnd'),
+('de', 'bug', 'browserList', 'opera9', 'Opera9', '1', 'rnd'),
+('de', 'bug', 'browserList', 'safari', 'Safari', '1', 'rnd'),
+('de', 'bug', 'browserList', '360', '360', '1', 'rnd'),
+('de', 'bug', 'browserList', 'qq', 'QQ', '1', 'rnd'),
+('de', 'bug', 'browserList', 'maxthon', 'Maxthon', '1', 'rnd'),
+('de', 'bug', 'browserList', 'uc', 'UC', '1', 'rnd'),
+('de', 'bug', 'browserList', 'other', 'Andere', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'all', '全部', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'windows', 'Windows', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win11', 'Windows 11', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win10', 'Windows 10', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win8', 'Windows 8', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win7', 'Windows 7', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'winxp', 'Windows XP', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'osx', 'Mac OS', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'android', 'Android', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'ios', 'IOS', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'linux', 'Linux', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'ubuntu', 'Ubuntu', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'chromeos', 'Chrome OS', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'fedora', 'Fedora', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'vista', 'Windows Vista', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win2012', 'Windows 2012', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win2008', 'Windows 2008', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win2003', 'Windows 2003', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'win2000', 'Windows 2000', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'wp8', 'WP8', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'wp7', 'WP7', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'symbian', 'Symbian', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'freebsd', 'FreeBSD', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'unix', 'Unix', '1', 'rnd'),
+('zh-cn', 'bug', 'osList', 'others', '其他', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'all', '全部', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'windows', 'Windows', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win11', 'Windows 11', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win10', 'Windows 10', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win8', 'Windows 8', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win7', 'Windows 7', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'winxp', 'Windows XP', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'osx', 'Mac OS', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'android', 'Android', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'ios', 'IOS', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'linux', 'Linux', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'ubuntu', 'Ubuntu', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'chromeos', 'Chrome OS', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'fedora', 'Fedora', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'vista', 'Windows Vista', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win2012', 'Windows 2012', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win2008', 'Windows 2008', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win2003', 'Windows 2003', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'win2000', 'Windows 2000', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'wp8', 'WP8', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'wp7', 'WP7', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'symbian', 'Symbian', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'freebsd', 'FreeBSD', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'unix', 'Unix', '1', 'rnd'),
+('zh-tw', 'bug', 'osList', 'others', '其他', '1', 'rnd'),
+('en', 'bug', 'osList', 'all', 'All', '1', 'rnd'),
+('en', 'bug', 'osList', 'windows', 'Windows', '1', 'rnd'),
+('en', 'bug', 'osList', 'win11', 'Windows 11', '1', 'rnd'),
+('en', 'bug', 'osList', 'win10', 'Windows 10', '1', 'rnd'),
+('en', 'bug', 'osList', 'win8', 'Windows 8', '1', 'rnd'),
+('en', 'bug', 'osList', 'win7', 'Windows 7', '1', 'rnd'),
+('en', 'bug', 'osList', 'winxp', 'Windows XP', '1', 'rnd'),
+('en', 'bug', 'osList', 'osx', 'Mac OS', '1', 'rnd'),
+('en', 'bug', 'osList', 'android', 'Android', '1', 'rnd'),
+('en', 'bug', 'osList', 'ios', 'IOS', '1', 'rnd'),
+('en', 'bug', 'osList', 'linux', 'Linux', '1', 'rnd'),
+('en', 'bug', 'osList', 'ubuntu', 'Ubuntu', '1', 'rnd'),
+('en', 'bug', 'osList', 'chromeos', 'Chrome OS', '1', 'rnd'),
+('en', 'bug', 'osList', 'fedora', 'Fedora', '1', 'rnd'),
+('en', 'bug', 'osList', 'vista', 'Windows Vista', '1', 'rnd'),
+('en', 'bug', 'osList', 'win2012', 'Windows 2012', '1', 'rnd'),
+('en', 'bug', 'osList', 'win2008', 'Windows 2008', '1', 'rnd'),
+('en', 'bug', 'osList', 'win2003', 'Windows 2003', '1', 'rnd'),
+('en', 'bug', 'osList', 'win2000', 'Windows 2000', '1', 'rnd'),
+('en', 'bug', 'osList', 'wp8', 'WP8', '1', 'rnd'),
+('en', 'bug', 'osList', 'wp7', 'WP7', '1', 'rnd'),
+('en', 'bug', 'osList', 'symbian', 'Symbian', '1', 'rnd'),
+('en', 'bug', 'osList', 'freebsd', 'FreeBSD', '1', 'rnd'),
+('en', 'bug', 'osList', 'unix', 'Unix', '1', 'rnd'),
+('en', 'bug', 'osList', 'others', 'Others', '1', 'rnd'),
+('fr', 'bug', 'osList', 'all', 'Tous', '1', 'rnd'),
+('fr', 'bug', 'osList', 'windows', 'Windows', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win11', 'Windows 11', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win10', 'Windows 10', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win8', 'Windows 8', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win7', 'Windows 7', '1', 'rnd'),
+('fr', 'bug', 'osList', 'winxp', 'Windows XP', '1', 'rnd'),
+('fr', 'bug', 'osList', 'osx', 'Mac OS', '1', 'rnd'),
+('fr', 'bug', 'osList', 'android', 'Android', '1', 'rnd'),
+('fr', 'bug', 'osList', 'ios', 'IOS', '1', 'rnd'),
+('fr', 'bug', 'osList', 'linux', 'Linux', '1', 'rnd'),
+('fr', 'bug', 'osList', 'ubuntu', 'Ubuntu', '1', 'rnd'),
+('fr', 'bug', 'osList', 'chromeos', 'Chrome OS', '1', 'rnd'),
+('fr', 'bug', 'osList', 'fedora', 'Fedora', '1', 'rnd'),
+('fr', 'bug', 'osList', 'vista', 'Windows Vista', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win2012', 'Windows 2012', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win2008', 'Windows 2008', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win2003', 'Windows 2003', '1', 'rnd'),
+('fr', 'bug', 'osList', 'win2000', 'Windows 2000', '1', 'rnd'),
+('fr', 'bug', 'osList', 'wp8', 'WP8', '1', 'rnd'),
+('fr', 'bug', 'osList', 'wp7', 'WP7', '1', 'rnd'),
+('fr', 'bug', 'osList', 'symbian', 'Symbian', '1', 'rnd'),
+('fr', 'bug', 'osList', 'freebsd', 'FreeBSD', '1', 'rnd'),
+('fr', 'bug', 'osList', 'unix', 'Unix', '1', 'rnd'),
+('fr', 'bug', 'osList', 'others', 'Autres', '1', 'rnd'),
+('de', 'bug', 'osList', 'all', 'Alle', '1', 'rnd'),
+('de', 'bug', 'osList', 'windows', 'Windows', '1', 'rnd'),
+('de', 'bug', 'osList', 'win11', 'Windows 11', '1', 'rnd'),
+('de', 'bug', 'osList', 'win10', 'Windows 10', '1', 'rnd'),
+('de', 'bug', 'osList', 'win8', 'Windows 8', '1', 'rnd'),
+('de', 'bug', 'osList', 'win7', 'Windows 7', '1', 'rnd'),
+('de', 'bug', 'osList', 'winxp', 'Windows XP', '1', 'rnd'),
+('de', 'bug', 'osList', 'osx', 'Mac OS', '1', 'rnd'),
+('de', 'bug', 'osList', 'android', 'Android', '1', 'rnd'),
+('de', 'bug', 'osList', 'ios', 'IOS', '1', 'rnd'),
+('de', 'bug', 'osList', 'linux', 'Linux', '1', 'rnd'),
+('de', 'bug', 'osList', 'ubuntu', 'Ubuntu', '1', 'rnd'),
+('de', 'bug', 'osList', 'chromeos', 'Chrome OS', '1', 'rnd'),
+('de', 'bug', 'osList', 'fedora', 'Fedora', '1', 'rnd'),
+('de', 'bug', 'osList', 'vista', 'Windows Vista', '1', 'rnd'),
+('de', 'bug', 'osList', 'win2012', 'Windows 2012', '1', 'rnd'),
+('de', 'bug', 'osList', 'win2008', 'Windows 2008', '1', 'rnd'),
+('de', 'bug', 'osList', 'win2003', 'Windows 2003', '1', 'rnd'),
+('de', 'bug', 'osList', 'win2000', 'Windows 2000', '1', 'rnd'),
+('de', 'bug', 'osList', 'wp8', 'WP8', '1', 'rnd'),
+('de', 'bug', 'osList', 'wp7', 'WP7', '1', 'rnd'),
+('de', 'bug', 'osList', 'symbian', 'Symbian', '1', 'rnd'),
+('de', 'bug', 'osList', 'freebsd', 'FreeBSD', '1', 'rnd'),
+('de', 'bug', 'osList', 'unix', 'Unix', '1', 'rnd'),
+('de', 'bug', 'osList', 'others', 'Andere', '1', 'rnd');
+
+UPDATE `zt_grouppriv` SET `module` = 'testcase' WHERE `module` = 'story' and `method` = 'zeroCase';
+UPDATE `zt_grouppriv` SET `module` = 'product' WHERE `module` = 'story' and `method` = 'track';
+
+ALTER TABLE `zt_job` ADD `lastSyncDate` datetime DEFAULT NULL AFTER `lastTag`;
+INSERT INTO `zt_cron` (`m`, `h`, `dom`, `mon`, `dow`, `command`, `remark`, `type`, `buildin`, `status`, `lastTime`) VALUES ('*/5', '*', '*', '*', '*', 'moduleName=compile&methodName=syncCompile', '定时同步构建记录', 'zentao', 1, 'normal', '0000-00-00 00:00:00');
diff --git a/db/zentao.sql b/db/zentao.sql
index c0af747c5d..ac6389009a 100755
--- a/db/zentao.sql
+++ b/db/zentao.sql
@@ -7,7 +7,7 @@ CREATE TABLE IF NOT EXISTS `zt_acl` (
`type` char(40) NOT NULL DEFAULT 'whitelist',
`source` char(30) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_action`;
CREATE TABLE IF NOT EXISTS `zt_action` (
`id` int(9) unsigned NOT NULL auto_increment,
@@ -29,9 +29,9 @@ CREATE TABLE IF NOT EXISTS `zt_action` (
KEY `project` (`project`),
KEY `action` (`action`),
KEY `objectID` (`objectID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_api_lib_release`;
-CREATE TABLE `zt_api_lib_release` (
+CREATE TABLE IF NOT EXISTS `zt_api_lib_release` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`lib` int UNSIGNED NOT NULL DEFAULT 0,
`desc` varchar(255) NOT NULL DEFAULT '',
@@ -40,9 +40,9 @@ CREATE TABLE `zt_api_lib_release` (
`addedBy` varchar(30) NOT NULL DEFAULT 0,
`addedDate` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_api`;
-CREATE TABLE `zt_api` (
+CREATE TABLE IF NOT EXISTS `zt_api` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`product` varchar(255) NOT NULL DEFAULT '',
`lib` int UNSIGNED NOT NULL DEFAULT 0,
@@ -68,9 +68,9 @@ CREATE TABLE `zt_api` (
`editedDate` datetime NOT NULL,
`deleted` enum ('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_apispec`;
-CREATE TABLE `zt_apispec` (
+CREATE TABLE IF NOT EXISTS `zt_apispec` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`doc` int UNSIGNED NOT NULL DEFAULT 0,
`module` int UNSIGNED NOT NULL DEFAULT 0,
@@ -91,9 +91,9 @@ CREATE TABLE `zt_apispec` (
`addedBy` varchar(30) NOT NULL DEFAULT 0,
`addedDate` datetime NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_apistruct`;
-CREATE TABLE `zt_apistruct` (
+CREATE TABLE IF NOT EXISTS `zt_apistruct` (
`id` int unsigned NOT NULL AUTO_INCREMENT,
`lib` int UNSIGNED NOT NULL DEFAULT 0,
`name` varchar(30) NOT NULL DEFAULT '',
@@ -107,9 +107,9 @@ CREATE TABLE `zt_apistruct` (
`editedDate` datetime NOT NULL,
`deleted` enum ('0', '1') NOT NULL DEFAULT '0',
primary key (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_apistruct_spec`;
-CREATE TABLE `zt_apistruct_spec` (
+CREATE TABLE IF NOT EXISTS `zt_apistruct_spec` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL DEFAULT '',
`type` varchar(50) NOT NULL DEFAULT '',
@@ -119,9 +119,9 @@ CREATE TABLE `zt_apistruct_spec` (
`addedBy` varchar(30) NOT NULL DEFAULT 0,
`addedDate` datetime NOT NULL,
primary key (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approval`;
-CREATE TABLE `zt_approval` (
+CREATE TABLE IF NOT EXISTS `zt_approval` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT,
`flow` mediumint(8) NOT NULL,
`objectType` varchar(30) NOT NULL,
@@ -134,9 +134,9 @@ CREATE TABLE `zt_approval` (
`createdDate` datetime NOT NULL,
`deleted` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalflow`;
-CREATE TABLE `zt_approvalflow` (
+CREATE TABLE IF NOT EXISTS `zt_approvalflow` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`code` varchar(100) NOT NULL,
@@ -147,9 +147,9 @@ CREATE TABLE `zt_approvalflow` (
`type` varchar(30) NOT NULL,
`deleted` tinyint(4) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalflowobject`;
-CREATE TABLE `zt_approvalflowobject` (
+CREATE TABLE IF NOT EXISTS `zt_approvalflowobject` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`root` int(8) NOT NULL,
`flow` int(8) NOT NULL,
@@ -157,9 +157,9 @@ CREATE TABLE `zt_approvalflowobject` (
`objectID` mediumint(9) NOT NULL,
`extra` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalflowspec`;
-CREATE TABLE `zt_approvalflowspec` (
+CREATE TABLE IF NOT EXISTS `zt_approvalflowspec` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT,
`flow` mediumint(8) NOT NULL,
`version` mediumint(8) NOT NULL,
@@ -167,9 +167,9 @@ CREATE TABLE `zt_approvalflowspec` (
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalnode`;
-CREATE TABLE `zt_approvalnode` (
+CREATE TABLE IF NOT EXISTS `zt_approvalnode` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT,
`approval` mediumint(8) NOT NULL,
`type` enum('review','cc') NOT NULL,
@@ -189,18 +189,18 @@ CREATE TABLE `zt_approvalnode` (
`reviewedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `idx_reviewed_date` (`reviewedDate`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalobject`;
-CREATE TABLE `zt_approvalobject` (
+CREATE TABLE IF NOT EXISTS `zt_approvalobject` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`approval` int(8) NOT NULL,
`objectType` char(30) NOT NULL,
`objectID` mediumint(8) NOT NULL,
`extra` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_approvalrole`;
-CREATE TABLE `zt_approvalrole` (
+CREATE TABLE IF NOT EXISTS `zt_approvalrole` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`code` char(30) NOT NULL,
`name` varchar(255) NOT NULL,
@@ -208,7 +208,7 @@ CREATE TABLE `zt_approvalrole` (
`users` longtext NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_block`;
CREATE TABLE IF NOT EXISTS `zt_block` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -227,7 +227,7 @@ CREATE TABLE IF NOT EXISTS `zt_block` (
PRIMARY KEY (`id`),
UNIQUE KEY `account_vision_module_type_order` (`account`,`vision`,`module`,`type`,`order`),
KEY `account` (`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_branch`;
CREATE TABLE IF NOT EXISTS `zt_branch` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -242,7 +242,7 @@ CREATE TABLE IF NOT EXISTS `zt_branch` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `product` (`product`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_bug`;
CREATE TABLE IF NOT EXISTS `zt_bug` (
`id` mediumint(8) NOT NULL auto_increment,
@@ -262,8 +262,8 @@ CREATE TABLE IF NOT EXISTS `zt_bug` (
`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 '',
+ `os` varchar(255) NOT NULL default '',
+ `browser` varchar(255) NOT NULL default '',
`hardware` varchar(30) NOT NULL,
`found` varchar(30) NOT NULL default '',
`steps` mediumtext NOT NULL,
@@ -315,7 +315,7 @@ CREATE TABLE IF NOT EXISTS `zt_bug` (
KEY `toStory` (`toStory`),
KEY `result` (`result`),
KEY `assignedTo` (`assignedTo`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_build`;
CREATE TABLE IF NOT EXISTS `zt_build` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -331,11 +331,13 @@ CREATE TABLE IF NOT EXISTS `zt_build` (
`bugs` text NOT NULL,
`builder` char(30) NOT NULL default '',
`desc` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `execution` (`execution`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_burn`;
CREATE TABLE IF NOT EXISTS `zt_burn` (
`execution` mediumint(8) unsigned NOT NULL,
@@ -347,7 +349,7 @@ CREATE TABLE IF NOT EXISTS `zt_burn` (
`consumed` float NOT NULL,
`storyPoint` float NOT NULL,
PRIMARY KEY (`execution`,`date`,`task`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_case`;
CREATE TABLE IF NOT EXISTS `zt_case` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -398,7 +400,7 @@ CREATE TABLE IF NOT EXISTS `zt_case` (
KEY `story` (`story`),
KEY `fromBug` (`fromBug`),
KEY `module` (`module`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_casestep`;
CREATE TABLE IF NOT EXISTS `zt_casestep` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -411,9 +413,9 @@ CREATE TABLE IF NOT EXISTS `zt_casestep` (
PRIMARY KEY (`id`),
KEY `case` (`case`),
KEY `version` (`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_cfd`;
-CREATE TABLE `zt_cfd` (
+CREATE TABLE IF NOT EXISTS `zt_cfd` (
`id` int(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
`execution` int(8) NOT NULL,
`type` char(30) NOT NULL,
@@ -421,7 +423,21 @@ CREATE TABLE `zt_cfd` (
`count` smallint NOT NULL,
`date` date NOT NULL,
UNIQUE KEY `execution_type_name_date` (`execution`,`type`,`name`,`date`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+-- DROP TABLE IF EXISTS `zt_chart`;
+CREATE TABLE `zt_chart` (
+ `id` mediumint NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `type` varchar(30) NOT NULL,
+ `dataset` varchar(30) NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `settings` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` char(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_company`;
CREATE TABLE IF NOT EXISTS `zt_company` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -436,7 +452,7 @@ CREATE TABLE IF NOT EXISTS `zt_company` (
`admins` char(255) default NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_compile`;
CREATE TABLE IF NOT EXISTS `zt_compile` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -454,7 +470,7 @@ CREATE TABLE IF NOT EXISTS `zt_compile` (
`updateDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_config`;
CREATE TABLE IF NOT EXISTS `zt_config` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -466,7 +482,7 @@ CREATE TABLE IF NOT EXISTS `zt_config` (
`value` longtext NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `unique` (`vision`,`owner`,`module`,`section`,`key`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_cron`;
CREATE TABLE IF NOT EXISTS `zt_cron` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -483,7 +499,32 @@ CREATE TABLE IF NOT EXISTS `zt_cron` (
`lastTime` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `lastTime` (`lastTime`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+-- DROP TABLE IF EXISTS `zt_dashboard`;
+CREATE TABLE `zt_dashboard` (
+ `id` mediumint(8) NOT NULL AUTO_INCREMENT,
+ `name` varchar(255) NOT NULL,
+ `module` mediumint NOT NULL,
+ `desc` mediumtext NOT NULL,
+ `layout` mediumtext NOT NULL,
+ `filters` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+-- DROP TABLE IF EXISTS `zt_dataset`;
+CREATE TABLE `zt_dataset` (
+ `id` mediumint unsigned NOT NULL AUTO_INCREMENT,
+ `name` varchar(155) NOT NULL,
+ `sql` text NOT NULL,
+ `fields` mediumtext NOT NULL,
+ `objects` mediumtext NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
+ `deleted` tinyint NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_dept`;
CREATE TABLE IF NOT EXISTS `zt_dept` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -498,7 +539,7 @@ CREATE TABLE IF NOT EXISTS `zt_dept` (
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
KEY `path` (`path`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_design`;
CREATE TABLE IF NOT EXISTS `zt_design` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -522,7 +563,7 @@ CREATE TABLE IF NOT EXISTS `zt_design` (
`version` smallint(6) NOT NULL,
`type` char(30) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_designspec`;
CREATE TABLE IF NOT EXISTS `zt_designspec` (
`design` mediumint(8) NOT NULL,
@@ -531,7 +572,7 @@ CREATE TABLE IF NOT EXISTS `zt_designspec` (
`desc` mediumtext NOT NULL,
`files` varchar(255) NOT NULL,
UNIQUE KEY `design` (`design`,`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_doc`;
CREATE TABLE IF NOT EXISTS `zt_doc` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -561,7 +602,7 @@ CREATE TABLE IF NOT EXISTS `zt_doc` (
KEY `product` (`product`),
KEY `execution` (`execution`),
KEY `lib` (`lib`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_doccontent`;
CREATE TABLE IF NOT EXISTS `zt_doccontent` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -574,7 +615,7 @@ CREATE TABLE IF NOT EXISTS `zt_doccontent` (
`version` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `doc_version` (`doc`,`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_doclib`;
CREATE TABLE IF NOT EXISTS `zt_doclib` (
`id` smallint(5) unsigned NOT NULL auto_increment,
@@ -596,7 +637,7 @@ CREATE TABLE IF NOT EXISTS `zt_doclib` (
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `execution` (`execution`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_effort`;
CREATE TABLE IF NOT EXISTS `zt_effort` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -613,7 +654,7 @@ CREATE TABLE IF NOT EXISTS `zt_effort` (
`status` enum('1','2','3') NOT NULL default '1',
PRIMARY KEY (`id`),
KEY `user` (`user`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_entry`;
CREATE TABLE IF NOT EXISTS `zt_entry` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -631,7 +672,7 @@ CREATE TABLE IF NOT EXISTS `zt_entry` (
`editedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY `id` (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_expect`;
CREATE TABLE IF NOT EXISTS `zt_expect` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
@@ -642,7 +683,7 @@ CREATE TABLE IF NOT EXISTS `zt_expect` (
`createdBy` char(30) NOT NULL,
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0'
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_extension`;
CREATE TABLE IF NOT EXISTS `zt_extension` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -664,7 +705,7 @@ CREATE TABLE IF NOT EXISTS `zt_extension` (
UNIQUE KEY `code` (`code`),
KEY `name` (`name`),
KEY `installedTime` (`installedTime`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_file`;
CREATE TABLE IF NOT EXISTS `zt_file` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -682,7 +723,7 @@ CREATE TABLE IF NOT EXISTS `zt_file` (
PRIMARY KEY (`id`),
KEY `objectType` (`objectType`),
KEY `objectID` (`objectID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_group`;
CREATE TABLE IF NOT EXISTS `zt_group` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -693,14 +734,14 @@ CREATE TABLE IF NOT EXISTS `zt_group` (
`desc` char(255) NOT NULL default '',
`acl` text,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_grouppriv`;
CREATE TABLE IF NOT EXISTS `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;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_holiday`;
CREATE TABLE IF NOT EXISTS `zt_holiday` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -713,7 +754,7 @@ CREATE TABLE IF NOT EXISTS `zt_holiday` (
PRIMARY KEY (`id`),
KEY `year` (`year`),
KEY `name` (`name`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_history`;
CREATE TABLE IF NOT EXISTS `zt_history` (
`id` int(9) unsigned NOT NULL auto_increment,
@@ -724,7 +765,7 @@ CREATE TABLE IF NOT EXISTS `zt_history` (
`diff` mediumtext NOT NULL,
PRIMARY KEY (`id`),
KEY `action` (`action`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_job`;
CREATE TABLE IF NOT EXISTS `zt_job` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -750,11 +791,12 @@ CREATE TABLE IF NOT EXISTS `zt_job` (
`lastExec` datetime DEFAULT NULL,
`lastStatus` varchar(255) DEFAULT NULL,
`lastTag` varchar(255) DEFAULT NULL,
+ `lastSyncDate` datetime DEFAULT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbanspace`;
-CREATE TABLE `zt_kanbanspace` (
+CREATE TABLE IF NOT EXISTS `zt_kanbanspace` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`type` varchar(50) NOT NULL,
@@ -775,9 +817,9 @@ CREATE TABLE `zt_kanbanspace` (
`activatedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanban`;
-CREATE TABLE `zt_kanban` (
+CREATE TABLE IF NOT EXISTS `zt_kanban` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`space` mediumint(8) unsigned NOT NULL,
`name` varchar(255) NOT NULL,
@@ -805,9 +847,9 @@ CREATE TABLE `zt_kanban` (
`activatedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbanregion`;
-CREATE TABLE `zt_kanbanregion` (
+CREATE TABLE IF NOT EXISTS `zt_kanbanregion` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`space` mediumint(8) unsigned NOT NULL,
`kanban` mediumint(8) unsigned NOT NULL,
@@ -819,9 +861,9 @@ CREATE TABLE `zt_kanbanregion` (
`lastEditedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbancard`;
-CREATE TABLE `zt_kanbancard` (
+CREATE TABLE IF NOT EXISTS `zt_kanbancard` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`kanban` mediumint(8) unsigned NOT NULL,
`region` mediumint(8) unsigned NOT NULL,
@@ -852,9 +894,9 @@ CREATE TABLE `zt_kanbancard` (
`assignedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbancell`;
-CREATE TABLE `zt_kanbancell` (
+CREATE TABLE IF NOT EXISTS `zt_kanbancell` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`kanban` mediumint(8) NOT NULL,
`lane` mediumint(8) NOT NULL,
@@ -863,15 +905,15 @@ CREATE TABLE `zt_kanbancell` (
`cards` text NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `card_group` (`kanban`,`type`,`lane`,`column`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbangroup`;
-CREATE TABLE `zt_kanbangroup` (
+CREATE TABLE IF NOT EXISTS `zt_kanbangroup` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`kanban` mediumint(8) unsigned NOT NULL,
`region` mediumint(8) unsigned NOT NULL,
`order` smallint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbanlane`;
CREATE TABLE IF NOT EXISTS `zt_kanbanlane` (
`id` int(8) NOT NULL AUTO_INCREMENT,
@@ -887,7 +929,7 @@ CREATE TABLE IF NOT EXISTS `zt_kanbanlane` (
`lastEditedTime` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_kanbancolumn`;
CREATE TABLE IF NOT EXISTS `zt_kanbancolumn` (
`id` int(8) NOT NULL AUTO_INCREMENT,
@@ -902,7 +944,7 @@ CREATE TABLE IF NOT EXISTS `zt_kanbancolumn` (
`archived` enum('0', '1') NOT NULL DEFAULT '0',
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_lang`;
CREATE TABLE IF NOT EXISTS `zt_lang` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -915,7 +957,7 @@ CREATE TABLE IF NOT EXISTS `zt_lang` (
`vision` varchar(10) NOT NULL DEFAULT 'rnd',
PRIMARY KEY (`id`),
UNIQUE KEY `lang` (`lang`,`module`,`section`,`key`,`vision`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_log`;
CREATE TABLE IF NOT EXISTS `zt_log` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -930,7 +972,7 @@ CREATE TABLE IF NOT EXISTS `zt_log` (
PRIMARY KEY `id` (`id`),
KEY `objectType` (`objectType`),
KEY `obejctID` (`objectID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_module`;
CREATE TABLE IF NOT EXISTS `zt_module` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -951,7 +993,7 @@ CREATE TABLE IF NOT EXISTS `zt_module` (
KEY `root` (`root`),
KEY `type` (`type`),
KEY `path` (`path`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_mr`;
CREATE TABLE IF NOT EXISTS `zt_mr` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -987,7 +1029,7 @@ CREATE TABLE IF NOT EXISTS `zt_mr` (
`hasNoConflict` enum('0','1') COLLATE 'utf8_general_ci' NOT NULL DEFAULT '0',
`diffs` longtext COLLATE 'utf8_general_ci' NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_mrapproval`;
CREATE TABLE IF NOT EXISTS `zt_mrapproval` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -997,7 +1039,7 @@ CREATE TABLE IF NOT EXISTS `zt_mrapproval` (
`action` char(30) NOT NULL,
`comment` text NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_notify`;
CREATE TABLE IF NOT EXISTS `zt_notify` (
`id` mediumint unsigned NOT NULL AUTO_INCREMENT,
@@ -1015,7 +1057,7 @@ CREATE TABLE IF NOT EXISTS `zt_notify` (
`failReason` text NOT NULL,
PRIMARY KEY (`id`),
KEY `objectType_toList_status` (`objectType`,`toList`,`status`)
-) ENGINE='MyISAM' COLLATE 'utf8_general_ci';
+) ENGINE='InnoDB' COLLATE 'utf8_general_ci';
-- DROP TABLE IF EXISTS `zt_oauth`;
CREATE TABLE IF NOT EXISTS `zt_oauth` (
`account` varchar(30) NOT NULL,
@@ -1025,7 +1067,7 @@ CREATE TABLE IF NOT EXISTS `zt_oauth` (
KEY `account` (`account`),
KEY `providerType` (`providerType`),
KEY `providerID` (`providerID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_pipeline`;
CREATE TABLE IF NOT EXISTS `zt_pipeline` (
`id` smallint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1042,14 +1084,14 @@ CREATE TABLE IF NOT EXISTS `zt_pipeline` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_planstory`;
CREATE TABLE IF NOT EXISTS `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;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_product`;
CREATE TABLE IF NOT EXISTS `zt_product` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1077,7 +1119,7 @@ CREATE TABLE IF NOT EXISTS `zt_product` (
PRIMARY KEY (`id`),
KEY `acl` (`acl`),
KEY `order` (`order`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_productplan`;
CREATE TABLE IF NOT EXISTS `zt_productplan` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1091,11 +1133,13 @@ CREATE TABLE IF NOT EXISTS `zt_productplan` (
`end` date NOT NULL,
`order` text NOT NULL,
`closedReason` varchar(20) NOT NULL,
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `end` (`end`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_project`;
CREATE TABLE IF NOT EXISTS `zt_project` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1157,9 +1201,9 @@ CREATE TABLE IF NOT EXISTS `zt_project` (
KEY `status` (`status`),
KEY `acl` (`acl`),
KEY `order` (`order`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_projectadmin`;
-CREATE TABLE `zt_projectadmin` (
+CREATE TABLE IF NOT EXISTS `zt_projectadmin` (
`group` smallint(6) NOT NULL,
`account` char(30) NOT NULL,
`programs` text NOT NULL,
@@ -1167,7 +1211,7 @@ CREATE TABLE `zt_projectadmin` (
`products` text NOT NULL,
`executions` text NOT NULL,
UNIQUE KEY `group_account` (`group`, `account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_projectcase`;
CREATE TABLE IF NOT EXISTS `zt_projectcase` (
`project` mediumint(8) unsigned NOT NULL DEFAULT '0',
@@ -1177,7 +1221,7 @@ CREATE TABLE IF NOT EXISTS `zt_projectcase` (
`version` smallint(6) NOT NULL DEFAULT '1',
`order` smallint(6) unsigned NOT NULL,
UNIQUE KEY `project` (`project`,`case`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_projectproduct`;
CREATE TABLE IF NOT EXISTS `zt_projectproduct` (
`project` mediumint(8) unsigned NOT NULL,
@@ -1185,7 +1229,7 @@ CREATE TABLE IF NOT EXISTS `zt_projectproduct` (
`branch` mediumint(8) unsigned NOT NULL,
`plan` varchar(255) NOT NULL,
PRIMARY KEY (`project`, `product`, `branch`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_projectspec`;
CREATE TABLE IF NOT EXISTS `zt_projectspec` (
`project` mediumint(8) NOT NULL,
@@ -1195,7 +1239,7 @@ CREATE TABLE IF NOT EXISTS `zt_projectspec` (
`begin` date NOT NULL,
`end` date NOT NULL,
UNIQUE KEY `project` (`project`,`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_projectstory`;
CREATE TABLE IF NOT EXISTS `zt_projectstory` (
`project` mediumint(8) unsigned NOT NULL default '0',
@@ -1206,7 +1250,7 @@ CREATE TABLE IF NOT EXISTS `zt_projectstory` (
`order` smallint(6) unsigned NOT NULL,
UNIQUE KEY `project` (`project`,`story`),
KEY `story` (`story`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_relation`;
CREATE TABLE IF NOT EXISTS `zt_relation` (
`id` int(8) NOT NULL AUTO_INCREMENT,
@@ -1223,7 +1267,7 @@ CREATE TABLE IF NOT EXISTS `zt_relation` (
`extra` char(30) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `relation` (`product`,`relation`,`AType`,`BType`, `AID`, `BID`)
-) ENGINE='MyISAM' DEFAULT CHARSET=utf8;
+) ENGINE='InnoDB' DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_release`;
CREATE TABLE IF NOT EXISTS `zt_release` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1242,11 +1286,13 @@ CREATE TABLE IF NOT EXISTS `zt_release` (
`notify` varchar(255),
`status` varchar(20) NOT NULL default 'normal',
`subStatus` varchar(30) NOT NULL default '',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `build` (`build`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_repo`;
CREATE TABLE IF NOT EXISTS `zt_repo` (
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
@@ -1275,7 +1321,7 @@ CREATE TABLE IF NOT EXISTS `zt_repo` (
`fileServerPassword` varchar(100) NOT NULL default '',
`deleted` tinyint(1) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_repobranch`;
CREATE TABLE IF NOT EXISTS `zt_repobranch` (
`repo` mediumint(8) unsigned NOT NULL,
@@ -1284,7 +1330,7 @@ CREATE TABLE IF NOT EXISTS `zt_repobranch` (
UNIQUE KEY `repo_revision_branch` (`repo`,`revision`,`branch`),
KEY `branch` (`branch`),
KEY `revision` (`revision`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_repofiles`;
CREATE TABLE IF NOT EXISTS `zt_repofiles` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -1299,7 +1345,7 @@ CREATE TABLE IF NOT EXISTS `zt_repofiles` (
KEY `parent` (`parent`),
KEY `repo` (`repo`),
KEY `revision` (`revision`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_repohistory`;
CREATE TABLE IF NOT EXISTS `zt_repohistory` (
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
@@ -1312,7 +1358,7 @@ CREATE TABLE IF NOT EXISTS `zt_repohistory` (
PRIMARY KEY (`id`),
KEY `repo` (`repo`),
KEY `revision` (`revision`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_score`;
CREATE TABLE IF NOT EXISTS `zt_score` (
`id` bigint(12) unsigned NOT NULL AUTO_INCREMENT,
@@ -1328,13 +1374,13 @@ CREATE TABLE IF NOT EXISTS `zt_score` (
KEY `account` (`account`),
KEY `model` (`module`),
KEY `method` (`method`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_searchdict`;
CREATE TABLE IF NOT EXISTS `zt_searchdict` (
`key` smallint(5) unsigned NOT NULL,
`value` char(3) NOT NULL,
PRIMARY KEY (`key`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_searchindex`;
CREATE TABLE IF NOT EXISTS `zt_searchindex` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -1348,9 +1394,8 @@ CREATE TABLE IF NOT EXISTS `zt_searchindex` (
PRIMARY KEY (`id`),
UNIQUE KEY `object` (`objectType`,`objectID`),
KEY `addedDate` (`addedDate`),
- FULLTEXT KEY `content` (`content`),
- FULLTEXT KEY `title` (`title`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+ FULLTEXT KEY `title_content` (`title`, `content`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_stage`;
CREATE TABLE IF NOT EXISTS `zt_stage` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1363,7 +1408,7 @@ CREATE TABLE IF NOT EXISTS `zt_stage` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_stakeholder`;
CREATE TABLE IF NOT EXISTS `zt_stakeholder` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
@@ -1379,7 +1424,7 @@ CREATE TABLE IF NOT EXISTS `zt_stakeholder` (
`editedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL,
KEY `objectID` (`objectID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_story`;
CREATE TABLE IF NOT EXISTS `zt_story` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1398,7 +1443,7 @@ CREATE TABLE IF NOT EXISTS `zt_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 '',
+ `status` enum('','changing','active','draft', 'reviewing', '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',
@@ -1421,6 +1466,7 @@ CREATE TABLE IF NOT EXISTS `zt_story` (
`toBug` mediumint(8) unsigned NOT NULL,
`childStories` varchar(255) NOT NULL,
`linkStories` varchar(255) NOT NULL,
+ `linkRequirements` varchar(255) NOT NULL,
`duplicateStory` mediumint(8) unsigned NOT NULL,
`version` smallint(6) NOT NULL default '1',
`feedbackBy` varchar(100) NOT NULL,
@@ -1431,7 +1477,7 @@ CREATE TABLE IF NOT EXISTS `zt_story` (
KEY `product` (`product`),
KEY `status` (`status`),
KEY `assignedTo` (`assignedTo`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_storyreview`;
CREATE TABLE IF NOT EXISTS `zt_storyreview` (
`story` mediumint(9) NOT NULL,
@@ -1440,7 +1486,7 @@ CREATE TABLE IF NOT EXISTS `zt_storyreview` (
`result` varchar(30) NOT NULL,
`reviewDate` datetime NOT NULL,
UNIQUE KEY `story` (`story`,`version`,`reviewer`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_storyestimate`;
CREATE TABLE IF NOT EXISTS `zt_storyestimate` (
`story` mediumint(9) NOT NULL,
@@ -1450,7 +1496,7 @@ CREATE TABLE IF NOT EXISTS `zt_storyestimate` (
`openedBy` varchar(30) NOT NULL,
`openedDate` datetime NOT NULL,
UNIQUE KEY `story` (`story`,`round`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_storyspec`;
CREATE TABLE IF NOT EXISTS `zt_storyspec` (
`story` mediumint(9) NOT NULL,
@@ -1459,7 +1505,7 @@ CREATE TABLE IF NOT EXISTS `zt_storyspec` (
`spec` mediumtext NOT NULL,
`verify` mediumtext NOT NULL,
UNIQUE KEY `story` (`story`,`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_storystage`;
CREATE TABLE IF NOT EXISTS `zt_storystage` (
`story` mediumint(8) unsigned NOT NULL,
@@ -1468,7 +1514,7 @@ CREATE TABLE IF NOT EXISTS `zt_storystage` (
`stagedBy` char(30) NOT NULL,
UNIQUE KEY `story_branch` (`story`,`branch`),
KEY `story` (`story`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_suitecase`;
CREATE TABLE IF NOT EXISTS `zt_suitecase` (
`suite` mediumint(8) unsigned NOT NULL,
@@ -1476,7 +1522,7 @@ CREATE TABLE IF NOT EXISTS `zt_suitecase` (
`case` mediumint(8) unsigned NOT NULL,
`version` smallint(5) unsigned NOT NULL,
UNIQUE KEY `suitecase` (`suite`,`case`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_task`;
CREATE TABLE IF NOT EXISTS `zt_task` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1523,6 +1569,7 @@ CREATE TABLE IF NOT EXISTS `zt_task` (
`lastEditedBy` varchar(30) NOT NULL,
`lastEditedDate` datetime NOT NULL,
`activatedDate` datetime NOT NULL,
+ `order` mediumint(8) unsigned NOT NULL,
`repo` mediumint(8) unsigned NOT NULL,
`mr` mediumint(8) unsigned NOT NULL,
`entry` varchar(255) NOT NULL,
@@ -1535,8 +1582,9 @@ CREATE TABLE IF NOT EXISTS `zt_task` (
KEY `execution` (`execution`),
KEY `story` (`story`),
KEY `parent` (`parent`),
- KEY `assignedTo` (`assignedTo`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+ KEY `assignedTo` (`assignedTo`),
+ KEY `order` (`order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_taskestimate`;
CREATE TABLE IF NOT EXISTS `zt_taskestimate` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1548,7 +1596,7 @@ CREATE TABLE IF NOT EXISTS `zt_taskestimate` (
`work` text,
PRIMARY KEY (`id`),
KEY `task` (`task`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_taskspec`;
CREATE TABLE IF NOT EXISTS `zt_taskspec` (
`task` mediumint(8) NOT NULL,
@@ -1557,7 +1605,7 @@ CREATE TABLE IF NOT EXISTS `zt_taskspec` (
`estStarted` date NOT NULL,
`deadline` date NOT NULL,
UNIQUE KEY `task` (`task`,`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_team`;
CREATE TABLE IF NOT EXISTS `zt_team` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1575,7 +1623,7 @@ CREATE TABLE IF NOT EXISTS `zt_team` (
`order` TINYINT(3) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `team` (`root`,`type`,`account`)
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_testreport`;
CREATE TABLE IF NOT EXISTS `zt_testreport` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1599,7 +1647,7 @@ CREATE TABLE IF NOT EXISTS `zt_testreport` (
`createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_testresult`;
CREATE TABLE IF NOT EXISTS `zt_testresult` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1618,7 +1666,7 @@ CREATE TABLE IF NOT EXISTS `zt_testresult` (
KEY `case` (`case`),
KEY `version` (`version`),
KEY `run` (`run`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_testrun`;
CREATE TABLE IF NOT EXISTS `zt_testrun` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1632,7 +1680,7 @@ CREATE TABLE IF NOT EXISTS `zt_testrun` (
`status` char(30) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `task` (`task`,`case`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_testsuite`;
CREATE TABLE IF NOT EXISTS `zt_testsuite` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1641,6 +1689,7 @@ CREATE TABLE IF NOT EXISTS `zt_testsuite` (
`name` varchar(255) NOT NULL,
`desc` mediumtext NOT NULL,
`type` varchar(20) NOT NULL,
+ `order` smallint unsigned NOT NULL DEFAULT '0',
`addedBy` char(30) NOT NULL,
`addedDate` datetime NOT NULL,
`lastEditedBy` char(30) NOT NULL,
@@ -1648,7 +1697,7 @@ CREATE TABLE IF NOT EXISTS `zt_testsuite` (
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`),
KEY `product` (`product`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_testtask`;
CREATE TABLE IF NOT EXISTS `zt_testtask` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1670,11 +1719,13 @@ CREATE TABLE IF NOT EXISTS `zt_testtask` (
`testreport` mediumint(8) unsigned NOT NULL,
`auto` varchar(10) NOT NULL DEFAULT 'no',
`subStatus` varchar(30) NOT NULL default '',
+ `createdBy` varchar(30) NOT NULL,
+ `createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `product` (`product`),
KEY `build` (`build`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_todo`;
CREATE TABLE IF NOT EXISTS `zt_todo` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1705,7 +1756,7 @@ CREATE TABLE IF NOT EXISTS `zt_todo` (
KEY `assignedTo` (`assignedTo`),
KEY `finishedBy` (`finishedBy`),
KEY `date` (`date`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_user`;
CREATE TABLE IF NOT EXISTS `zt_user` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1753,7 +1804,7 @@ CREATE TABLE IF NOT EXISTS `zt_user` (
KEY `email` (`email`),
KEY `commiter` (`commiter`),
KEY `deleted` (`deleted`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_usercontact`;
CREATE TABLE IF NOT EXISTS `zt_usercontact` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1762,14 +1813,14 @@ CREATE TABLE IF NOT EXISTS `zt_usercontact` (
`userList` text NOT NULL,
PRIMARY KEY (`id`),
KEY `account` (`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_usergroup`;
CREATE TABLE IF NOT EXISTS `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;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_userquery`;
CREATE TABLE IF NOT EXISTS `zt_userquery` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1783,7 +1834,7 @@ CREATE TABLE IF NOT EXISTS `zt_userquery` (
PRIMARY KEY (`id`),
KEY `account` (`account`),
KEY `module` (`module`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_usertpl`;
CREATE TABLE IF NOT EXISTS `zt_usertpl` (
`id` mediumint(8) unsigned NOT NULL auto_increment,
@@ -1794,7 +1845,7 @@ CREATE TABLE IF NOT EXISTS `zt_usertpl` (
`public` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `account` (`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_userview`;
CREATE TABLE IF NOT EXISTS `zt_userview` (
`account` char(30) NOT NULL,
@@ -1803,7 +1854,7 @@ CREATE TABLE IF NOT EXISTS `zt_userview` (
`projects` mediumtext NOT NULL,
`sprints` mediumtext NOT NULL,
UNIQUE KEY `account` (`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_weeklyreport`;
CREATE TABLE IF NOT EXISTS `zt_weeklyreport`(
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1819,7 +1870,7 @@ CREATE TABLE IF NOT EXISTS `zt_weeklyreport`(
`workload` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `week` (`project`,`weekStart`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_webhook`;
CREATE TABLE IF NOT EXISTS `zt_webhook` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -1841,7 +1892,7 @@ CREATE TABLE IF NOT EXISTS `zt_webhook` (
`editedDate` datetime NOT NULL,
`deleted` enum('0', '1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `zt_cron` (`m`, `h`, `dom`, `mon`, `dow`, `command`, `remark`, `type`, `buildin`, `status`, `lastTime`) VALUES
('*', '*', '*', '*', '*', '', '监控定时任务', 'zentao', 1, 'normal', '0000-00-00 00:00:00'),
@@ -1858,7 +1909,8 @@ INSERT INTO `zt_cron` (`m`, `h`, `dom`, `mon`, `dow`, `command`, `remark`, `type
('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=mr&methodName=syncMR', '定时同步GitLab合并数据到禅道数据库', 'zentao', 1, 'normal', '0000-00-00 00:00:00');
+('*/5', '*', '*', '*', '*', 'moduleName=mr&methodName=syncMR', '定时同步GitLab合并数据到禅道数据库', 'zentao', 1, 'normal', '0000-00-00 00:00:00'),
+('*/5', '*', '*', '*', '*', 'moduleName=compile&methodName=syncCompile', '定时同步构建记录', 'zentao', 1, 'normal', '0000-00-00 00:00:00');
INSERT INTO `zt_group` (`id`, `vision`, `name`, `role`, `desc`) VALUES
(1, 'rnd', 'ADMIN', 'admin', 'for administrator'),
@@ -2358,9 +2410,28 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(1,'story','report'),
(1,'story','review'),
(1,'story','tasks'),
-(1,'story','track'),
+(1,'product','track'),
(1,'story','view'),
-(1,'story','zeroCase'),
+(1,'testcase','zeroCase'),
+(1,'requirement','activate'),
+(1,'requirement','assignTo'),
+(1,'requirement','batchAssignTo'),
+(1,'requirement','batchChangeBranch'),
+(1,'requirement','batchChangeModule'),
+(1,'requirement','batchClose'),
+(1,'requirement','batchCreate'),
+(1,'requirement','batchEdit'),
+(1,'requirement','batchReview'),
+(1,'requirement','change'),
+(1,'requirement','close'),
+(1,'requirement','create'),
+(1,'requirement','delete'),
+(1,'requirement','edit'),
+(1,'requirement','export'),
+(1,'requirement','recall'),
+(1,'requirement','report'),
+(1,'requirement','review'),
+(1,'requirement','view'),
(1,'svn','apiSync'),
(1,'svn','cat'),
(1,'svn','diff'),
@@ -2729,8 +2800,10 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(2,'story','cases'),
(2,'story','report'),
(2,'story','tasks'),
-(2,'story','track'),
+(2,'product','track'),
(2,'story','view'),
+(2,'requirement','report'),
+(2,'requirement','view'),
(2,'svn','apiSync'),
(2,'svn','cat'),
(2,'svn','diff'),
@@ -3025,9 +3098,12 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(3,'story','processStoryChange'),
(3,'story','report'),
(3,'story','tasks'),
-(3,'story','track'),
+(3,'product','track'),
(3,'story','view'),
-(3,'story','zeroCase'),
+(3,'testcase','zeroCase'),
+(3,'requirement','export'),
+(3,'requirement','report'),
+(3,'requirement','view'),
(3,'svn','apiSync'),
(3,'svn','cat'),
(3,'svn','diff'),
@@ -3519,9 +3595,28 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(4,'story','report'),
(4,'story','review'),
(4,'story','tasks'),
-(4,'story','track'),
+(4,'product','track'),
(4,'story','view'),
-(4,'story','zeroCase'),
+(4,'testcase','zeroCase'),
+(4,'requirement','activate'),
+(4,'requirement','assignTo'),
+(4,'requirement','batchAssignTo'),
+(4,'requirement','batchChangeBranch'),
+(4,'requirement','batchChangeModule'),
+(4,'requirement','batchClose'),
+(4,'requirement','batchCreate'),
+(4,'requirement','batchEdit'),
+(4,'requirement','batchReview'),
+(4,'requirement','change'),
+(4,'requirement','close'),
+(4,'requirement','create'),
+(4,'requirement','delete'),
+(4,'requirement','edit'),
+(4,'requirement','export'),
+(4,'requirement','recall'),
+(4,'requirement','report'),
+(4,'requirement','review'),
+(4,'requirement','view'),
(4,'svn','apiSync'),
(4,'svn','cat'),
(4,'svn','diff'),
@@ -4019,9 +4114,28 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(5,'story','report'),
(5,'story','review'),
(5,'story','tasks'),
-(5,'story','track'),
+(5,'product','track'),
(5,'story','view'),
-(5,'story','zeroCase'),
+(5,'testcase','zeroCase'),
+(5,'requirement','activate'),
+(5,'requirement','assignTo'),
+(5,'requirement','batchAssignTo'),
+(5,'requirement','batchChangeBranch'),
+(5,'requirement','batchChangeModule'),
+(5,'requirement','batchClose'),
+(5,'requirement','batchCreate'),
+(5,'requirement','batchEdit'),
+(5,'requirement','batchReview'),
+(5,'requirement','change'),
+(5,'requirement','close'),
+(5,'requirement','create'),
+(5,'requirement','delete'),
+(5,'requirement','edit'),
+(5,'requirement','export'),
+(5,'requirement','recall'),
+(5,'requirement','report'),
+(5,'requirement','review'),
+(5,'requirement','view'),
(5,'svn','apiSync'),
(5,'svn','cat'),
(5,'svn','diff'),
@@ -4393,9 +4507,12 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(6,'story','processStoryChange'),
(6,'story','report'),
(6,'story','tasks'),
-(6,'story','track'),
+(6,'product','track'),
(6,'story','view'),
-(6,'story','zeroCase'),
+(6,'testcase','zeroCase'),
+(6,'requirement','export'),
+(6,'requirement','report'),
+(6,'requirement','view'),
(6,'svn','apiSync'),
(6,'svn','cat'),
(6,'svn','diff'),
@@ -4798,9 +4915,28 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(7,'story','report'),
(7,'story','review'),
(7,'story','tasks'),
-(7,'story','track'),
+(7,'product','track'),
(7,'story','view'),
-(7,'story','zeroCase'),
+(7,'testcase','zeroCase'),
+(7,'requirement','activate'),
+(7,'requirement','assignTo'),
+(7,'requirement','batchAssignTo'),
+(7,'requirement','batchChangeBranch'),
+(7,'requirement','batchChangeModule'),
+(7,'requirement','batchClose'),
+(7,'requirement','batchCreate'),
+(7,'requirement','batchEdit'),
+(7,'requirement','batchReview'),
+(7,'requirement','change'),
+(7,'requirement','close'),
+(7,'requirement','create'),
+(7,'requirement','delete'),
+(7,'requirement','edit'),
+(7,'requirement','export'),
+(7,'requirement','recall'),
+(7,'requirement','report'),
+(7,'requirement','review'),
+(7,'requirement','view'),
(7,'svn','apiSync'),
(7,'svn','cat'),
(7,'svn','diff'),
@@ -5143,9 +5279,12 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(8,'story','processStoryChange'),
(8,'story','report'),
(8,'story','tasks'),
-(8,'story','track'),
+(8,'product','track'),
(8,'story','view'),
-(8,'story','zeroCase'),
+(8,'testcase','zeroCase'),
+(8,'requirement','export'),
+(8,'requirement','report'),
+(8,'requirement','view'),
(8,'svn','apiSync'),
(8,'svn','cat'),
(8,'svn','diff'),
@@ -5529,9 +5668,13 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(9,'story','report'),
(9,'story','review'),
(9,'story','tasks'),
-(9,'story','track'),
+(9,'product','track'),
(9,'story','view'),
-(9,'story','zeroCase'),
+(9,'testcase','zeroCase'),
+(9,'requirement','export'),
+(9,'requirement','report'),
+(9,'requirement','review'),
+(9,'requirement','view'),
(9,'svn','apiSync'),
(9,'svn','cat'),
(9,'svn','diff'),
@@ -5780,8 +5923,11 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(10,'story','processStoryChange'),
(10,'story','report'),
(10,'story','tasks'),
-(10,'story','track'),
+(10,'product','track'),
(10,'story','view'),
+(10,'requirement','export'),
+(10,'requirement','report'),
+(10,'requirement','view'),
(10,'svn','apiSync'),
(10,'svn','cat'),
(10,'svn','diff'),
@@ -6030,9 +6176,12 @@ INSERT INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(11,'story','export'),
(11,'story','report'),
(11,'story','tasks'),
-(11,'story','track'),
+(11,'product','track'),
(11,'story','view'),
-(11,'story','zeroCase'),
+(11,'testcase','zeroCase'),
+(11,'requirement','export'),
+(11,'requirement','report'),
+(11,'requirement','view'),
(11,'svn','apiSync'),
(11,'svn','cat'),
(11,'svn','diff'),
@@ -6160,6 +6309,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_chat` (
`dismissDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`pinnedMessages` text NOT NULL DEFAULT '',
`mergedChats` text NOT NULL DEFAULT '',
+ `adminInvite` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `gid` (`gid`),
KEY `name` (`name`),
@@ -6167,7 +6317,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_chat` (
KEY `public` (`public`),
KEY `createdBy` (`createdBy`),
KEY `editedBy` (`editedBy`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_chatuser`;
CREATE TABLE IF NOT EXISTS `zt_im_chatuser` (
@@ -6191,7 +6341,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_chatuser` (
KEY `star` (`star`),
KEY `hide` (`hide`),
UNIQUE KEY `chatuser` (`cgid`, `user`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_client`;
CREATE TABLE IF NOT EXISTS `zt_im_client` (
@@ -6207,7 +6357,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_client` (
`editedBy` varchar(30) NOT NULL DEFAULT '',
`status` enum('released','wait') NOT NULL DEFAULT 'wait',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_message`;
CREATE TABLE IF NOT EXISTS `zt_im_message` (
@@ -6227,7 +6377,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_message` (
KEY `mcgid` (`cgid`),
KEY `muser` (`user`),
KEY `mtype` (`type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_message_backup`;
CREATE TABLE IF NOT EXISTS `zt_im_message_backup` (
@@ -6242,7 +6392,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_message_backup` (
`contentType` enum('text', 'plain', 'emotion', 'image', 'file', 'object', 'code') NOT NULL DEFAULT 'text',
`data` text NOT NULL DEFAULT '',
`deleted` enum('0','1') NOT NULL DEFAULT '0'
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_message_index`;
CREATE TABLE IF NOT EXISTS `zt_im_message_index` (
@@ -6259,7 +6409,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_message_index` (
KEY `end` (`end`),
KEY `startDate` (`startDate`),
KEY `endDate` (`endDate`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_chat_message_index`;
CREATE TABLE IF NOT EXISTS `zt_im_chat_message_index` (
@@ -6281,7 +6431,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_chat_message_index` (
KEY `endDate` (`endDate`),
KEY `chatstartindex` (`gid`,`startIndex`),
KEY `chatendindex` (`gid`,`endIndex`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_messagestatus`;
CREATE TABLE IF NOT EXISTS `zt_im_messagestatus` (
@@ -6289,7 +6439,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_messagestatus` (
`message` int(11) unsigned NOT NULL,
`status` enum('waiting','sent','readed','deleted') NOT NULL DEFAULT 'waiting',
UNIQUE KEY `user` (`user`,`message`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_queue`;
CREATE TABLE IF NOT EXISTS `zt_im_queue` (
@@ -6301,7 +6451,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_queue` (
`result` text NOT NULL,
`status` char(30) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_conference`;
CREATE TABLE IF NOT EXISTS `zt_im_conference` (
@@ -6314,7 +6464,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_conference` (
`openedBy` mediumint(8) NOT NULL DEFAULT 0,
`openedDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_conferenceaction`;
CREATE TABLE IF NOT EXISTS `zt_im_conferenceaction` (
@@ -6326,7 +6476,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_conferenceaction` (
`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`device` char(40) NOT NULL DEFAULT 'default',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_im_userdevice`;
CREATE TABLE IF NOT EXISTS `zt_im_userdevice` (
@@ -6343,7 +6493,7 @@ CREATE TABLE IF NOT EXISTS `zt_im_userdevice` (
KEY `lastLogin` (`lastLogin`),
KEY `lastLogout` (`lastLogout`),
UNIQUE KEY `userdevice` (`user`, `device`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_file` CHANGE `pathname` `pathname` char(100) NOT NULL;
ALTER TABLE `zt_user` ADD `clientStatus` enum('online', 'away', 'busy', 'offline', 'meeting') NOT NULL DEFAULT 'offline';
@@ -6637,7 +6787,7 @@ CREATE TABLE IF NOT EXISTS `zt_relationoftasks` (
`action` ENUM( 'begin', 'end' ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
PRIMARY KEY (`id`),
KEY `relationoftasks` (`execution`,`task`)
-) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci;
+) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
REPLACE INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES
(1,'execution','gantt'),
(1,'execution','relation'),
@@ -6820,7 +6970,7 @@ CREATE TABLE IF NOT EXISTS `zt_report` (
`addedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE OR REPLACE VIEW `ztv_executionsummary` AS select `zt_task`.`execution` AS `execution`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`estimate`,0)) AS `estimate`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0)) AS `consumed`,sum(if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0)) AS `left`,count(0) AS `number`,sum(if(((`zt_task`.`status` <> 'done') and (`zt_task`.`status` <> 'closed')),1,0)) AS `undone`,sum((if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0) + if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0))) AS `totalReal` from `zt_task` where (`zt_task`.`deleted` = '0') group by `zt_task`.`execution`;
CREATE OR REPLACE VIEW `ztv_projectsummary` AS select `zt_task`.`project` AS `project`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`estimate`,0)) AS `estimate`,sum(if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0)) AS `consumed`,sum(if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0)) AS `left`,count(0) AS `number`,sum(if(((`zt_task`.`status` <> 'done') and (`zt_task`.`status` <> 'closed')),1,0)) AS `undone`,sum((if((`zt_task`.`parent` >= '0'),`zt_task`.`consumed`,0) + if(((`zt_task`.`status` <> 'cancel') and (`zt_task`.`status` <> 'closed') and (`zt_task`.`parent` >= '0')),`zt_task`.`left`,0))) AS `totalReal` from `zt_task` where (`zt_task`.`deleted` = '0') group by `zt_task`.`project`;
@@ -6941,10 +7091,11 @@ CREATE TABLE IF NOT EXISTS `zt_feedback` (
`assignedTo` varchar(255) NOT NULL,
`assignedDate` datetime NOT NULL,
`feedbackBy` varchar(100) NOT NULL,
+ `repeatFeedback` mediumint(8) NOT NULL DEFAULT 0,
`mailto` varchar(255) NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_bug` ADD `feedback` mediumint(8) unsigned NOT NULL DEFAULT '0' AFTER `caseVersion`;
ALTER TABLE `zt_story` ADD `feedback` mediumint(8) unsigned NOT NULL DEFAULT '0' AFTER `fromBug`;
@@ -6956,7 +7107,7 @@ CREATE TABLE IF NOT EXISTS `zt_feedbackview` (
`account` char(30) NOT NULL,
`product` mediumint(8) unsigned NOT NULL,
UNIQUE KEY `account_product` (`account`,`product`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_serverroom`;
CREATE TABLE IF NOT EXISTS `zt_serverroom` (
@@ -6973,7 +7124,7 @@ CREATE TABLE IF NOT EXISTS `zt_serverroom` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_account`;
CREATE TABLE IF NOT EXISTS `zt_account` (
@@ -6997,7 +7148,7 @@ CREATE TABLE IF NOT EXISTS `zt_account` (
key `name` (`name`),
key `provider` (`provider`),
key `status` (`status`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_asset`;
CREATE TABLE IF NOT EXISTS `zt_asset` (
@@ -7012,7 +7163,7 @@ CREATE TABLE IF NOT EXISTS `zt_asset` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_host`;
CREATE TABLE IF NOT EXISTS `zt_host` (
@@ -7059,7 +7210,7 @@ CREATE TABLE IF NOT EXISTS `zt_host` (
`cloudPassword` varchar(255) NOT NULL DEFAULT '',
`couldVPC` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_service`;
CREATE TABLE IF NOT EXISTS `zt_service` (
@@ -7090,7 +7241,7 @@ CREATE TABLE IF NOT EXISTS `zt_service` (
`order` smallint(5) unsigned NOT NULL default '0',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
REPLACE INTO `zt_grouppriv` (`group`, `module`, `method`) VALUES (1, 'tree', 'editHost');
@@ -7120,7 +7271,7 @@ CREATE TABLE IF NOT EXISTS `zt_attend` (
KEY `reviewStatus` (`reviewStatus`),
KEY `reviewedBy` (`reviewedBy`),
UNIQUE KEY `attend` (`date`,`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_attendstat`;
CREATE TABLE IF NOT EXISTS `zt_attendstat` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7146,7 +7297,7 @@ CREATE TABLE IF NOT EXISTS `zt_attendstat` (
KEY `month` (`month`),
KEY `status` (`status`),
UNIQUE KEY `attend` (`month`,`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_overtime`;
CREATE TABLE IF NOT EXISTS `zt_overtime` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7170,7 +7321,7 @@ CREATE TABLE IF NOT EXISTS `zt_overtime` (
KEY `type` (`type`),
KEY `status` (`status`),
KEY `createdBy` (`createdBy`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_holiday`;
CREATE TABLE IF NOT EXISTS `zt_holiday` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7183,7 +7334,7 @@ CREATE TABLE IF NOT EXISTS `zt_holiday` (
PRIMARY KEY (`id`),
KEY `year` (`year`),
KEY `name` (`name`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_leave`;
CREATE TABLE IF NOT EXISTS `zt_leave` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7206,7 +7357,7 @@ CREATE TABLE IF NOT EXISTS `zt_leave` (
KEY `type` (`type`),
KEY `status` (`status`),
KEY `createdBy` (`createdBy`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_lieu`;
CREATE TABLE IF NOT EXISTS `zt_lieu` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7228,7 +7379,7 @@ CREATE TABLE IF NOT EXISTS `zt_lieu` (
KEY `year` (`year`),
KEY `status` (`status`),
KEY `createdBy` (`createdBy`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_trip`;
CREATE TABLE IF NOT EXISTS `zt_trip` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7248,7 +7399,7 @@ CREATE TABLE IF NOT EXISTS `zt_trip` (
PRIMARY KEY (`id`),
KEY `year` (`year`),
KEY `createdBy` (`createdBy`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_deploy`;
CREATE TABLE IF NOT EXISTS `zt_deploy` (
@@ -7267,7 +7418,7 @@ CREATE TABLE IF NOT EXISTS `zt_deploy` (
`result` varchar(20) NOT NULL,
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_deployproduct`;
CREATE TABLE IF NOT EXISTS `zt_deployproduct` (
`deploy` mediumint(8) unsigned NOT NULL,
@@ -7275,7 +7426,7 @@ CREATE TABLE IF NOT EXISTS `zt_deployproduct` (
`release` mediumint(8) unsigned NOT NULL,
`package` varchar(255) NOT NULL,
UNIQUE KEY `deploy_product_release` (`deploy`,`product`,`release`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_deploystep`;
CREATE TABLE IF NOT EXISTS `zt_deploystep` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
@@ -7294,7 +7445,7 @@ CREATE TABLE IF NOT EXISTS `zt_deploystep` (
`createdDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_testresult` ADD `deploy` mediumint(8) unsigned NOT NULL;
-- DROP TABLE IF EXISTS `zt_deployscope`;
CREATE TABLE IF NOT EXISTS `zt_deployscope` (
@@ -7303,7 +7454,7 @@ CREATE TABLE IF NOT EXISTS `zt_deployscope` (
`hosts` text NOT NULL,
`remove` text NOT NULL,
`add` text NOT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_vm`;
CREATE TABLE IF NOT EXISTS `zt_vm` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -7335,7 +7486,7 @@ CREATE TABLE IF NOT EXISTS `zt_vm` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
`public` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_baseimage`;
CREATE TABLE IF NOT EXISTS `zt_baseimage` (
`id` SMALLINT(7) unsigned NOT NULL AUTO_INCREMENT,
@@ -7350,7 +7501,7 @@ CREATE TABLE IF NOT EXISTS `zt_baseimage` (
`suggestMemory` mediumint(6) unsigned NOT NULL DEFAULT 0,
`suggestVolume` mediumint(6) unsigned NOT NULL DEFAULT 0,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_vmtemplate`;
CREATE TABLE IF NOT EXISTS `zt_vmtemplate` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -7366,7 +7517,7 @@ CREATE TABLE IF NOT EXISTS `zt_vmtemplate` (
`diskSize` int NOT NULL DEFAULT 0,
`osArch` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_browser`;
CREATE TABLE IF NOT EXISTS `zt_browser` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -7377,16 +7528,16 @@ CREATE TABLE IF NOT EXISTS `zt_browser` (
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_baseimagebrowser`;
CREATE TABLE IF NOT EXISTS `zt_baseimagebrowser` (
`vmBackingID` int(10) NOT NULL,
`browserID` int(10) NOT NULL,
PRIMARY KEY (`vmBackingID`, `browserID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_traincourse`;
-CREATE TABLE `zt_traincourse` (
+CREATE TABLE IF NOT EXISTS `zt_traincourse` (
`id` mediumint(8) NOT NULL AUTO_INCREMENT,
`code` varchar(50) NOT NULL,
`category` mediumint(8) NOT NULL,
@@ -7400,7 +7551,7 @@ CREATE TABLE `zt_traincourse` (
`editedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_traincontents`;
CREATE TABLE IF NOT EXISTS `zt_traincontents` (
@@ -7419,7 +7570,7 @@ CREATE TABLE IF NOT EXISTS `zt_traincontents` (
`editedDate` datetime NOT NULL,
`deleted` tinyint(1) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_traincategory`;
CREATE TABLE IF NOT EXISTS `zt_traincategory` (
@@ -7433,7 +7584,7 @@ CREATE TABLE IF NOT EXISTS `zt_traincategory` (
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
KEY `path` (`path`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_trainrecords`;
CREATE TABLE IF NOT EXISTS `zt_trainrecords` (
@@ -7442,7 +7593,7 @@ CREATE TABLE IF NOT EXISTS `zt_trainrecords` (
`objectType` varchar(10) NOT NULL,
`status` varchar(10) NOT NULL,
PRIMARY KEY (`user`, `objectId`, `objectType`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_doc`
ADD `parent` smallint(5) unsigned NOT NULL DEFAULT '0' AFTER `type`,
@@ -7472,7 +7623,7 @@ CREATE TABLE IF NOT EXISTS `zt_faq` (
`answer` text NOT NULL,
`addedtime` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_task` ADD `feedback` mediumint(8) unsigned NOT NULL AFTER `fromBug`;
ALTER TABLE `zt_todo` ADD `feedback` mediumint(8) unsigned NOT NULL AFTER `end`;
@@ -7494,7 +7645,7 @@ CREATE TABLE IF NOT EXISTS `zt_domain`(
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
key `domain` (`domain`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
DROP VIEW IF EXISTS `view_datasource_5`;
CREATE VIEW `view_datasource_5` AS select `id`,`name` from `zt_task` where `deleted` = '0' and vision = 'rnd';
@@ -8530,7 +8681,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflow` (
KEY `module` (`module`),
KEY `order` (`order`),
UNIQUE KEY `unique` (`app`, `module`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowaction`;
CREATE TABLE IF NOT EXISTS `zt_workflowaction` (
@@ -8569,7 +8720,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowaction` (
KEY `action` (`action`),
KEY `order` (`order`),
UNIQUE KEY `unique` (`module`, `action`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowdatasource`;
CREATE TABLE IF NOT EXISTS `zt_workflowdatasource` (
@@ -8588,7 +8739,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowdatasource` (
`editedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `type` (`type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowfield`;
CREATE TABLE IF NOT EXISTS `zt_workflowfield` (
@@ -8623,7 +8774,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowfield` (
KEY `field` (`field`),
KEY `order` (`order`),
UNIQUE KEY `unique` (`module`, `field`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowlayout`;
CREATE TABLE IF NOT EXISTS `zt_workflowlayout` (
@@ -8644,7 +8795,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowlayout` (
KEY `action` (`action`),
KEY `order` (`order`),
UNIQUE KEY `unique` (`module`, `action`, `field`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowlabel`;
CREATE TABLE IF NOT EXISTS `zt_workflowlabel` (
@@ -8664,7 +8815,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowlabel` (
`editedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `module` (`module`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowlinkdata`;
CREATE TABLE IF NOT EXISTS `zt_workflowlinkdata` (
@@ -8675,7 +8826,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowlinkdata` (
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
UNIQUE KEY `unique` (`objectType`, `objectID`, `linkedType`, `linkedID`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowrelation`;
CREATE TABLE IF NOT EXISTS `zt_workflowrelation` (
@@ -8689,7 +8840,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowrelation` (
`createdBy` char(30) NOT NULL,
`createdDate` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowrelationlayout`;
CREATE TABLE IF NOT EXISTS `zt_workflowrelationlayout` (
@@ -8705,7 +8856,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowrelationlayout` (
KEY `action` (`action`),
KEY `order` (`order`),
UNIQUE KEY `unique` (`prev`, `next`, `action`, `field`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowrule`;
CREATE TABLE IF NOT EXISTS `zt_workflowrule` (
@@ -8719,7 +8870,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowrule` (
`editedDate` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `type` (`type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowsql`;
CREATE TABLE IF NOT EXISTS `zt_workflowsql` (
@@ -8737,7 +8888,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowsql` (
KEY `module` (`module`),
KEY `field` (`field`),
KEY `action` (`action`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowversion`;
CREATE TABLE IF NOT EXISTS `zt_workflowversion` (
@@ -8755,7 +8906,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowversion` (
UNIQUE KEY `moduleversion` (`module`, `version`),
KEY `module` (`module`),
KEY `version` (`version`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workflowreport`;
CREATE TABLE IF NOT EXISTS `zt_workflowreport` (
@@ -8771,7 +8922,7 @@ CREATE TABLE IF NOT EXISTS `zt_workflowreport` (
`createdBy` varchar(30) NOT NULL,
`createdDate` datetime NOT NULL,
PRIMARY KEY `id` (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_action` CHANGE `action` `action` varchar(80) NOT NULL DEFAULT '';
ALTER TABLE `zt_action` CHANGE `extra` `extra` text;
@@ -8994,7 +9145,7 @@ CREATE TABLE IF NOT EXISTS `zt_durationestimation` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_workestimation`;
CREATE TABLE IF NOT EXISTS `zt_workestimation` (
@@ -9014,7 +9165,7 @@ CREATE TABLE IF NOT EXISTS `zt_workestimation` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
`dayHour` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_intervention`;
CREATE TABLE IF NOT EXISTS `zt_intervention` (
@@ -9031,7 +9182,7 @@ CREATE TABLE IF NOT EXISTS `zt_intervention` (
`deleted` enum('0','1') NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `project` (`project`,`activity`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_activity`;
CREATE TABLE IF NOT EXISTS `zt_activity` (
@@ -9052,7 +9203,7 @@ CREATE TABLE IF NOT EXISTS `zt_activity` (
`order` mediumint(8) DEFAULT '0',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_auditcl`;
CREATE TABLE IF NOT EXISTS `zt_auditcl` (
@@ -9073,7 +9224,7 @@ CREATE TABLE IF NOT EXISTS `zt_auditcl` (
`assignedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_auditplan`;
CREATE TABLE IF NOT EXISTS `zt_auditplan` (
@@ -9101,7 +9252,7 @@ CREATE TABLE IF NOT EXISTS `zt_auditplan` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
`checkBy` varchar(30) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_auditresult`;
CREATE TABLE IF NOT EXISTS `zt_auditresult` (
@@ -9122,7 +9273,7 @@ CREATE TABLE IF NOT EXISTS `zt_auditresult` (
`assignedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_nc`;
CREATE TABLE IF NOT EXISTS `zt_nc` (
@@ -9151,7 +9302,7 @@ CREATE TABLE IF NOT EXISTS `zt_nc` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_zoutput`;
CREATE TABLE IF NOT EXISTS `zt_zoutput` (
@@ -9169,7 +9320,7 @@ CREATE TABLE IF NOT EXISTS `zt_zoutput` (
`order` mediumint(8) DEFAULT '0',
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_process`;
CREATE TABLE IF NOT EXISTS `zt_process` (
@@ -9190,7 +9341,7 @@ CREATE TABLE IF NOT EXISTS `zt_process` (
`assignedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_programactivity`;
CREATE TABLE IF NOT EXISTS `zt_programactivity` (
@@ -9208,7 +9359,7 @@ CREATE TABLE IF NOT EXISTS `zt_programactivity` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_programoutput`;
CREATE TABLE IF NOT EXISTS `zt_programoutput` (
@@ -9227,7 +9378,7 @@ CREATE TABLE IF NOT EXISTS `zt_programoutput` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_programprocess`;
CREATE TABLE IF NOT EXISTS `zt_programprocess` (
@@ -9244,7 +9395,7 @@ CREATE TABLE IF NOT EXISTS `zt_programprocess` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_basicmeas`;
CREATE TABLE IF NOT EXISTS `zt_basicmeas` (
@@ -9271,7 +9422,7 @@ CREATE TABLE IF NOT EXISTS `zt_basicmeas` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `code` (`code`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_budget`;
CREATE TABLE IF NOT EXISTS `zt_budget` (
@@ -9288,7 +9439,7 @@ CREATE TABLE IF NOT EXISTS `zt_budget` (
`lastEditedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_researchplan`;
CREATE TABLE IF NOT EXISTS `zt_researchplan` (
@@ -9311,7 +9462,7 @@ CREATE TABLE IF NOT EXISTS `zt_researchplan` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_researchreport`;
CREATE TABLE IF NOT EXISTS `zt_researchreport` (
@@ -9333,7 +9484,7 @@ CREATE TABLE IF NOT EXISTS `zt_researchreport` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_meeting`;
CREATE TABLE IF NOT EXISTS `zt_meeting` (
@@ -9361,7 +9512,7 @@ CREATE TABLE IF NOT EXISTS `zt_meeting` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM CHARSET=utf8;
+) ENGINE=InnoDB CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_meetingroom`;
CREATE TABLE IF NOT EXISTS `zt_meetingroom` (
@@ -9377,7 +9528,7 @@ CREATE TABLE IF NOT EXISTS `zt_meetingroom` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM CHARSET=utf8;
+) ENGINE=InnoDB CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_assetlib`;
CREATE TABLE IF NOT EXISTS `zt_assetlib` (
@@ -9385,13 +9536,14 @@ CREATE TABLE IF NOT EXISTS `zt_assetlib` (
`name` varchar(255) NOT NULL,
`type` varchar(255) NOT NULL,
`desc` mediumtext NOT NULL,
+ `order` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
`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 CHARSET=utf8;
+) ENGINE=InnoDB CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_meastemplate`;
CREATE TABLE IF NOT EXISTS `zt_meastemplate` (
@@ -9403,7 +9555,7 @@ CREATE TABLE IF NOT EXISTS `zt_meastemplate` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_programreport`;
CREATE TABLE IF NOT EXISTS `zt_programreport` (
@@ -9417,7 +9569,7 @@ CREATE TABLE IF NOT EXISTS `zt_programreport` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_measrecords`;
CREATE TABLE IF NOT EXISTS `zt_measrecords` (
@@ -9439,7 +9591,7 @@ CREATE TABLE IF NOT EXISTS `zt_measrecords` (
KEY `product` (`product`),
KEY `project` (`project`),
KEY `time` (`year`, `month`, `day`, `week`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_object`;
CREATE TABLE IF NOT EXISTS `zt_object` (
@@ -9462,7 +9614,7 @@ CREATE TABLE IF NOT EXISTS `zt_object` (
`createdBy` char(30) NOT NULL,
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0'
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_review`;
CREATE TABLE IF NOT EXISTS `zt_review` (
@@ -9489,7 +9641,7 @@ CREATE TABLE IF NOT EXISTS `zt_review` (
`auditResult` char(30) NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=39 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_reviewcl`;
CREATE TABLE IF NOT EXISTS `zt_reviewcl` (
@@ -9508,7 +9660,7 @@ CREATE TABLE IF NOT EXISTS `zt_reviewcl` (
`assignedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_reviewresult`;
CREATE TABLE IF NOT EXISTS `zt_reviewresult` (
@@ -9522,7 +9674,7 @@ CREATE TABLE IF NOT EXISTS `zt_reviewresult` (
`createdDate` date NOT NULL,
`consumed` float NOT NULL,
UNIQUE KEY `reviewer` (`review`,`reviewer`,`type`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_reviewissue`;
CREATE TABLE IF NOT EXISTS `zt_reviewissue` (
@@ -9545,7 +9697,7 @@ CREATE TABLE IF NOT EXISTS `zt_reviewissue` (
`createdDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_reviewlist`;
CREATE TABLE IF NOT EXISTS `zt_reviewlist` (
@@ -9562,7 +9714,7 @@ CREATE TABLE IF NOT EXISTS `zt_reviewlist` (
`assignedBy` varchar(30) NOT NULL,
`assignedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0'
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_cmcl`;
CREATE TABLE IF NOT EXISTS `zt_cmcl` (
@@ -9579,7 +9731,7 @@ CREATE TABLE IF NOT EXISTS `zt_cmcl` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_solutions`;
CREATE TABLE IF NOT EXISTS `zt_solutions` (
@@ -9596,7 +9748,7 @@ CREATE TABLE IF NOT EXISTS `zt_solutions` (
`editedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_measqueue`;
CREATE TABLE IF NOT EXISTS `zt_measqueue` (
@@ -9612,7 +9764,7 @@ CREATE TABLE IF NOT EXISTS `zt_measqueue` (
`updateDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_issue`;
CREATE TABLE IF NOT EXISTS `zt_issue` (
@@ -9650,7 +9802,7 @@ CREATE TABLE IF NOT EXISTS `zt_issue` (
`approvedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_risk`;
CREATE TABLE IF NOT EXISTS `zt_risk` (
@@ -9696,14 +9848,14 @@ CREATE TABLE IF NOT EXISTS `zt_risk` (
`approvedDate` date NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_riskissue`;
CREATE TABLE IF NOT EXISTS `zt_riskissue` (
`risk` mediumint(8) unsigned NOT NULL,
`issue` mediumint(8) unsigned NOT NULL,
UNIQUE KEY `risk_issue` (`risk`,`issue`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_opportunity`;
CREATE TABLE IF NOT EXISTS `zt_opportunity` (
@@ -9749,7 +9901,7 @@ CREATE TABLE IF NOT EXISTS `zt_opportunity` (
`lastCheckedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_trainplan`;
CREATE TABLE IF NOT EXISTS `zt_trainplan` (
@@ -9770,7 +9922,7 @@ CREATE TABLE IF NOT EXISTS `zt_trainplan` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- DROP TABLE IF EXISTS `zt_gapanalysis`;
CREATE TABLE IF NOT EXISTS `zt_gapanalysis` (
@@ -9787,7 +9939,7 @@ CREATE TABLE IF NOT EXISTS `zt_gapanalysis` (
`deleted` enum('0','1') NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `project_account` (`project`,`account`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE `zt_bug`
ADD `injection` mediumint(8) unsigned NOT NULL AFTER `product`,
@@ -13570,7 +13722,7 @@ CREATE TABLE IF NOT EXISTS `zt_sqlview` (
`editedDate` datetime NOT NULL,
`deleted` enum('0','1') NOT NULL default '0',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET global log_bin_trust_function_creators = 1;
SET global sql_mode = '';
USE `__TABLE__`;
diff --git a/doc/CHANGELOG b/doc/CHANGELOG
index 19bd0cad7b..eacaf00de5 100644
--- a/doc/CHANGELOG
+++ b/doc/CHANGELOG
@@ -1,3 +1,277 @@
+2022-08-25 17.6
+完成的需求
+开源版:
+30520 用户需求和研发需求权限区分
+30718 我的地盘软件需求列表区块软件需求列表中将草稿状态调整为评审中,新增草稿状态的需求展示
+30721 贡献列表中用户需求和软件需求列表中将草稿状态调整为评审中
+30722 提软件需求和提用户需求页面中增加存为草稿按钮
+30724 草稿状态的需求详情中增加提交评审操作
+30725 软件需求和用户需求列表筛选标签中将草稿标签调整为评审中
+30726 软件需求和用户需求列表筛选标签中增加草稿标签
+30727 计划关联需求时搜索列表中将草稿调整为评审中
+30729 需求报表中按状态进行统计表中将草稿调整为评审中,新增草稿状态的统计
+30730 release关联需求时过滤掉草稿和评审中状态的需求
+30731 项目关联需求时过滤掉草稿和评审中状态的需求
+30732 项目需求列表中通过新增需求,可以展示草稿和评审中的需求
+30733 执行关联需求时过滤掉草稿和评审中状态的需求
+30734 执行需求列表中通过新增需求后可以展示草稿和评审中状态的需求
+30735 Scrum看板的需求类泳道中通过新增需求可以展示草稿和评审中状态的需求
+30736 专业研发看板的需求类泳道中通过新增需求可以展示草稿和评审中状态的需求
+30737 build关联需求时过滤掉草稿和评审中状态的需求
+30738 年度总结报表中需求状态分布中将草稿状态调整为评审中,新增草稿状态
+30739 产品统计报表中产品汇总表中将草稿状态调整为评审中,新增草稿状态
+30740 产品统计报表中产品需求状态分布表中将草稿状态调整为评审中,新增草稿状态
+30741 项目统计报表中项目需求状态分布表中将草稿状态调整为评审中,新增草稿状态
+30743 草稿状态对应需求阶段的规则
+31134 新增的草稿状态需求不受强制评审流程控制
+31251 实现草稿状态需求的提交评审功能
+34650 产品列表中用户需求和研发需求增加评审中状态
+34651 产品概况中其他信息模块软需维度优化
+34896 软件需求状态“已变更”调整为“变更中”
+34897 用户需求状态“已变更”调整为“变更中”
+34898 已关闭的软件需求激活后状态可以选择“激活”或者关闭前的状态
+34899 已关闭的用户需求激活后状态可以选择“激活”或者关闭前的状态
+34900 软需从草稿提交评审,根据不同评审结果进行后续处理
+34901 用需从草稿提交评审,根据不同评审结果进行后续处理
+34902 软件需求草稿状态时按钮调整
+34903 软件需求评审中状态时按钮调整
+34904 软件需求变更中状态时按钮调整
+34922 软件需求激活状态时按钮调整
+34924 用户需求草稿状态时按钮调整
+34925 用户需求评审中状态时按钮调整
+34926 用户需求变更中状态时按钮调整
+34927 用户需求激活状态时按钮调整
+34931 Bug转需求时可以保存为草稿
+34933 已关闭的需求激活后指派人不能选择closed
+34934 需求变更评审时,系统根据需求不同评审结果进行后续处理
+34935 草稿需求评审时,评审人可选择确认通过、有待明确、拒绝
+35080 创建bug页面操作系统、浏览器支持多选
+35278 执行中转入任务页面增加分页展示
+35301 回收站的执行列表中增加所属项目字段
+35320 需求草稿状态时可以修改草稿内容
+35321 发起人对变更流程提交至”评审中“的需求选择撤销后需求根据状态回溯到不同内容
+35356 父阶段状态跟随子阶段状态自动更改
+35413 文档切换所属文档库时需要同步附件
+35821 回收站的任务列表中增加所属执行字段
+35887 关闭的bug指派人显示closed,不可编辑
+35908 在搜索表单中通过日期字段检索时去掉00:00:00的格式
+35935 修改零用例软需和矩阵的权限位置
+35998 更新bug中操作系统码值
+35999 更新bug中浏览器码值
+36111 bug编辑页面可以关联用例
+36184 测试单列表增加项目信息展示
+36188 需求按照优先级排序时,空值放最后
+36189 Bug按照优先级或严重程度排序时,空值放最后
+36190 用例关联bug和用例页增加分页
+36522 注册系统管理员的密码规则同系统中中级密码强度
+企业版:
+28045 反馈关闭原因为重复时,增加重复反馈输入的选项
+30523 反馈转Bug时取消选择项目弹窗直接进入提Bug页面
+30912 地盘日志列表新建日志时可以搜索该用户参与的所有执行
+31984 反馈增加批量导入功能
+33940 反馈增加导出模板功能
+34296 提交反馈默认公开
+34844 组织日志菜单下增加增加未填写日志成员的选项
+34998 反馈导出时的时间支持精确到分秒
+35024 用户需求和研发需求的导出数据增加类别字段
+35083 执行甘特图支持在图上用连接的方式维护任务关系
+35861 甘特图全屏样式优化
+36185 执行甘特图查看任务关系维护按钮、设置按钮、甘特图按钮优化
+36581 任务工时明细表的横向滚动条置顶显示
+36618 有编辑他人反馈权限,可以批量编辑他人反馈
+旗舰版:
+30432 瀑布项目设计功能类型支持自定义功能
+34682 资产库可以排序
+修复的Bug
+26232 执行软件需求列表简单表格下横向滚动条显示遮挡
+26272 地盘待处理/贡献研发需求列表中,子需求的名称和所属产品未显示title
+26380 复制项目时项目计划起止日期还是受项目集计划起止日期限制
+26448 列表设置弹窗界面高度需要优化
+26614 编辑项目页面计划起止日期/预算提示文案样式优化
+26618 创建测试任务时可以选择到已创建测试任务的需求
+26644 超出项目集计划起止日期提示换行
+26645 鼠标悬浮在附上时页面抖动
+25925 执行信息确认页面,日期选择后控件没有自动收起
+25929 敏捷项目和迭代设置中的白名单列表没有被复制
+25969 阶段信息确认页面没有显示已有的阶段负责人和阶段类型
+25974 阶段信息确认页面修改负责人后,没有按照修改后的负责人进行显示
+25989 英文下迭代信息确认页面表头显示优化
+25996 复制项目时,执行信息确认页面执行的状态默认设置应该为未开始
+25999 复制项目时,执行信息确认页面没有校验计划开始结束时间的先后
+26032 项目中发起评审,弹窗字段未居中
+26034 英文下项目中发起审批,文本换行
+26054 英德法下甘特图页面报错
+26057 英德法下甘特图页面没有显示分组选项
+26303 复制迭代时间控件一直显示
+26326 甘特图阶段工期计算错误
+26327 阶段甘特图中任务工期计算错误
+26365 项目计划评审页面自定义表单设置样式问题
+26580 评审项目计划页面甘特图切换为按指派给分组跳转到了阶段甘特图页面
+26638 甘特图拖动排序历史记录没有写中文语言项
+26655 瀑布项目设计三级导航不高亮了
+25961 迅捷页面用户授权异常
+26200 自定义库目录修改所属文档库到wiki库不能查看
+26221 导出数据的excel中,“抄送给”显示成了用户名
+26265 导入大数据测试用例页面有报错
+26278 导入文件超出PHP最大上传大小时没有提示
+26364 编辑项目页面有代码报错
+26371 导出的需求,用户名的显示不一致
+26424 导入用例页面无影响,提示PHPExcel原因
+26657 不能批量编辑他人反馈
+
+2022-08-11 17.5
+完成的需求
+开源版:
+15665 可以设置用户查看的团队范围
+15666 增加部门维度查看团队
+31754 Scrum看板中任务看板按需求分组时需求列支持按条件排序
+34360 修改会议详情页面附件重命名样式
+34928 代理原因登录失败时,提醒用户检查代理服务
+34994 面板客户端下载菜单中增加移动端的下载功能
+35050 项目执行列表的筛选标签右侧增加编辑执行的设置
+35057 需求通过编辑或批量设置调整计划后,计划历史记录中增加关联或移除的记录
+35058 Bug通过编辑调整计划后,计划历史记录中增加关联或移除的记录
+35169 需求编辑页面增加关联相关需求功能
+35172 需求详情页面展示关联的相关需求
+35173 用户需求编辑页面增加关联相关用户需求功能
+35175 用户需求详情页面展示关联的相关用户需求
+35189 批量创建测试类型任务后子任务所属模块默认取需求所属模块
+35255 创建测试单页面中描述编辑器支持保存模板和应用模板功能
+35270 创建/编辑项目集时项目集同名提示优化
+35279 执行列表增加搜索功能
+35295 后台权限中将选择项目模板权限合并到创建项目权限中
+35357 LDAP原因登录失败时,提醒用户检查LDAP服务
+35362 用例搜索表单中搜索结果条件增加“未执行”选项
+35373 地盘待处理的任务列表中过滤掉已取消、已暂停、已关闭、已删除状态的任务
+35410 在文档库下创建文档时,第一步不默认创建空白文档,第二步保存后才创建成功
+35411 文档编辑页面中编辑基本信息后不保存,信息不保存
+35412 文档编辑页面中附件编辑后局部刷新
+35414 创建/编辑产品时产品同名提示优化
+35415 创建/编辑项目时项目同名提示优化
+35416 创建/编辑执行时执行同名提示优化
+35441 通用看板导入的执行卡片同步展示执行进度
+35442 通用看板导入的计划、发布、版本卡片不展示进度
+35444 Bug列表中所属执行、所属计划、创建者字段鼠标悬浮时支持显示全称
+35451 创建/编辑执行时执行同代号提示优化
+35453 创建/编辑项目时项目同代号提示优化
+35455 创建/编辑产品时产品同代号提示优化
+35468 文档创建页面中基本信息的抄送给用户列表维护弹窗样式优化
+35473 编辑项目时,允许项目预算超过父项目集
+35474 创建项目时,允许项目预算超过父项目集
+35476 编辑子项目集时,预算允许超过父项目集
+35477 创建子项目集时,预算允许超过父项目集的金额
+35478 创建项目时,计划开始日期允许小于父项目集
+35479 创建子项目集时,计划开始日期允许小于父项目集
+35480 编辑项目时,项目集的计划开始日期允许小于父项目集
+35481 编辑子项目集时,允许修改子项目集的计划开始时间小于父项目集的计划开始时间
+35482 创建项目时,项目的计划完成时间允许大于父项目集的计划完成时间
+35483 创建子项目集时,子项目集的计划完成时间允许大于父项目集的计划完成时间
+35484 编辑项目时,允许修改项目的计划完成时间大于父项目集的计划完成时间
+35485 编辑子项目集时,允许修改子项目集的计划完成时间大于父项目集的计划完成时间
+35490 优化修改密码的密码提示语
+35491 优化邮箱修改密码的密码提示语
+35493 全局搜索的搜索项优化排序
+35599 批量编辑项目时,允许修改项目的时间范围超出所属项目集的时间范围
+35600 创建和编辑项目时,计划起止日期超出父项目集日期范围,增加提示信息
+35601 创建和编辑项目时,预算金额超出父项目集时增加提示信息
+35602 创建和编辑子项目集时,计划起止日期超出父项目集的日期范围时,增加提示信息
+35603 创建和编辑子项目集时,预算金超出父项目集时,增加提示信息
+35624 累积流图时间周期优化
+35706 执行需求列表批量转任务时增加必填项判断
+35737 产品列表筛选标签的数量统计逻辑优化
+35771 编辑父项目集时,计划起止日期不包含子项目集的日期范围时,增加提示信息
+35799 地盘执行列表中角色字段修改为“我的角色”,鼠标悬浮展示全称
+35800 地盘贡献研发需求列表中,名称和所属产品字段支持鼠标悬浮显示全部内容
+35801 产品研发需求列表中版本号居中显示
+35816 用例关联多个测试单时,用例列表展示多条用例,分别对应不同测试单
+35817 修改发布中研发需求列表的子需求图标的圆角和颜色
+35818 发布中解决bug列表的解决日期没有定义时,显示为空
+35819 发布中研发需求列表预计字段的右侧内间距修改为16px
+35826 修改项目集列表预算字段表头右侧内边距为16px
+35834 产品研发需求列表中日期字段不定义时,显示为空
+35835 用例列表中最后修改者字段的宽度调整为92px
+35863 项目度量的统计项目汇总表的负责人、计划开始、计划完成和任务数量字段居中显示
+35865 执行列表中执行状态字段居中显示
+35867 项目发布列表中日期类字段居中显示
+35937 产品发布通知邮件中直接展示完成的需求、解决的Bug、遗留的Bug
+35939 密码难度规则优化
+企业版:
+6130 甘特图支持拖拽设置任务的起止日期
+7742 反馈模块动作设计增加回复和追问动作
+8252 动作界面只读字段设置默认值,创建的时候写入到数据库
+9004 数据校验取消校验按钮交互优化
+33993 甘特图样式优化
+34482 新增反馈编辑他人反馈的权限
+35082 执行甘特图,增加任务顺序的拖动排序功能
+35857 反馈列表转用户需求icon更换
+35933 执行甘特图的持续天数改成工期
+35236 在执行需求列表的搜索条件中可以搜索工作流的需求流程中新增的字段
+35699 bug模块动作设计增加批量激活的动作
+35802 工作流自定义流程,保存成功的提示交互优化
+旗舰版:
+35836 项目问题列表中优先级字段居中显示
+35837 项目问题列表“优先级”字段修改为“P”
+35838 项目风险列表中风险系数和优先级字段居中显示
+35868 瀑布项目培训能力差距分析列表各字段宽度调整
+35997 项目度量的项目工作量报表的右侧标题加粗显示
+32555 瀑布项目甘特图支持拖动调整起止日期
+33995 甘特图样式优化
+34893 项目计划甘特图,增加阶段/任务顺序的拖动排序功能
+34895 增加按指派分组功能
+35061 甘特图编辑权限
+35382 复制项目交互样式优化
+35393 甘特图升级到最近版本
+34372 新建项目增加复制项目信息入口
+34723 项目复制选择项目
+34724 项目复制信息
+34725 项目复制项目信息确认
+34726 项目复制阶段信息确认
+34727 项目复制迭代信息确认
+34728 项目复制弹窗提示
+35217 复制项目,阶段信息确认页面增加阶段选择弹窗
+35218 复制项目的交互样式优化
+35310 复制项目增加团队成员与权限复制
+36036 关闭审批后停用发起动作,再次开启审批未自动启用动作
+禅道客户端:
+34119 一键包集成喧喧网页端
+34460 优化会话中禅道链接卡片的跳转交互
+34667 完善XXD命令行应用给出的提示
+34668 修改docker入口脚本,确保owt中的rabbitmq正常启动
+34669 服务器地址不正确导致客户端登录失败后,尝试去掉路径后进行重试
+34670 完善音视频服务器端口配置和提示
+34671 优化音视频服务配置中“是否启用HTTPS”的设置
+34672 设计并增加离线部署SRS音视频的方案
+34673 没有麦克风时允许加入会议
+34848 解决服务器时间和客户端时间不一样的问题
+35087 研究喧喧和其他应用系统的多页面集成
+35088 删除服务器聊天记录的功能
+35268 通过服务端下载客户端后,登录时带入服务端地址
+35280 实现自动清理解散90天以上群数据的功能
+35294 后台检查XXC是否有新版时去掉XXB的版本判断
+35297 网络诊断时给出具体提示以引导用户
+修复的Bug
+22662 执行任务列表父子任务显示错乱
+24608 英文下批量编辑执行页面执行状态名称显示不全
+24743 测试单下所有用例页面执行状态排序按钮部分遮挡
+25416 产品列表分页逻辑问题
+25563 已设置颜色的任务名称,阶段列表显示任务名称的颜色
+25837 产品-计划的需求列表没有展示需求标题颜色
+25851 导入任务相关研发需求详情弹窗中样式问题
+25282 导入用户时,左右滚动条必须拖动到底部才显示
+25019 需要测试再进行详细确认:xxd以windows服务的形式启动(注意是在windows管理的服务里面点击启动),日志会存在C:\Windows\System32\log下
+25273 禅道卡片中的弹窗不展示
+25390 一张图片发送多人再撤回其中一张图,在其他窗口中图片显示已撤回
+25402 sendChatMessage返回值有问题
+25427 提示升级页面不显示了
+25526 后台没有被禁用的用户登录客户端时提示“账号被禁用”
+25603 喧喧一键安装包安装xxd错误
+25605 独立消息记录窗口中链接打不开
+25622 连续发送消息不给提示
+25628 客户端链接转任务跳转到地盘
+25630 消息记录点击两次喧喧直接崩溃了
+25644 产品计划卡片没显示内容
+25646 禅道客户端一、口、x遮挡成员按钮
+
2022-07-27 17.4
完成的需求
开源版:
@@ -82,6 +356,19 @@
33530 资产机会库机会列表页面审批字段居左显示
33823 问题指派页面增加备注
34097 修改执行QA不符合项详情页面中解决图标
+34729 QA质量保证计划可以批量编辑
+30071 项目甘特图中增加任务名称的显示
+28556 瀑布项目中计划的甘特图支持按日/周/月维度查看
+29700 项目甘特图中的任务支持点击查看详情
+29944 项目甘特图中支持显示阶段和任务的负责人
+34795 项目甘特图可以在阶段或任务前增加图标显示状态
+34742 项目甘特图中没有起止日期的任务的时间显示为所属阶段时间
+34729 QA质量保证计划可以批量编辑
+35424 产品计划增加审批设置
+35437 内置模块显示审批进度。
+35438 内置模块增加待我审批标签
+35596 产品发布增加审批设置
+35597 测试单增加审批设置
禅道客户端:
34124 XXD可以从XXB主动拉取配置
34123 喧喧增加禅道的checktable.php以便自动修复数据库
@@ -107,6 +394,7 @@
23200 多人任务串行,可以操作出负的消耗工时
24357 多人任务填写日志后把日志删除对应的消耗工时仍然存在
25185 内置报表里,执行状态的下拉框里都没有已完成
+25603 修复新版一键安装包中XXD服务可能安装失败的问题。
2022-07-13 17.3
完成的需求
diff --git a/extension/lite/block/ext/view/printassigntomeblock.lite.html.hook.php b/extension/lite/block/ext/view/printassigntomeblock.lite.html.hook.php
index ddfa6fcaa1..e69de29bb2 100644
--- a/extension/lite/block/ext/view/printassigntomeblock.lite.html.hook.php
+++ b/extension/lite/block/ext/view/printassigntomeblock.lite.html.hook.php
@@ -1,3 +0,0 @@
-
diff --git a/extension/lite/common/ext/lang/de/lite.php b/extension/lite/common/ext/lang/de/lite.php
index 6146068c76..5096451099 100644
--- a/extension/lite/common/ext/lang/de/lite.php
+++ b/extension/lite/common/ext/lang/de/lite.php
@@ -51,6 +51,7 @@ else
}
$lang->task->common = 'Task';
+$lang->dashboard = isset($lang->dashboard->common) ? $lang->dashboard->common : $lang->dashboard;
/* My menu. */
$lang->my->menu = new stdclass();
diff --git a/extension/lite/common/ext/lang/en/lite.php b/extension/lite/common/ext/lang/en/lite.php
index 6146068c76..5096451099 100644
--- a/extension/lite/common/ext/lang/en/lite.php
+++ b/extension/lite/common/ext/lang/en/lite.php
@@ -51,6 +51,7 @@ else
}
$lang->task->common = 'Task';
+$lang->dashboard = isset($lang->dashboard->common) ? $lang->dashboard->common : $lang->dashboard;
/* My menu. */
$lang->my->menu = new stdclass();
diff --git a/extension/lite/common/ext/lang/fr/lite.php b/extension/lite/common/ext/lang/fr/lite.php
index 6146068c76..5096451099 100644
--- a/extension/lite/common/ext/lang/fr/lite.php
+++ b/extension/lite/common/ext/lang/fr/lite.php
@@ -51,6 +51,7 @@ else
}
$lang->task->common = 'Task';
+$lang->dashboard = isset($lang->dashboard->common) ? $lang->dashboard->common : $lang->dashboard;
/* My menu. */
$lang->my->menu = new stdclass();
diff --git a/extension/lite/common/ext/lang/zh-cn/lite.php b/extension/lite/common/ext/lang/zh-cn/lite.php
index edf2a0267d..c74deb3e3f 100644
--- a/extension/lite/common/ext/lang/zh-cn/lite.php
+++ b/extension/lite/common/ext/lang/zh-cn/lite.php
@@ -51,6 +51,7 @@ else
}
$lang->task->common = '任务';
+$lang->dashboard = isset($lang->dashboard->common) ? $lang->dashboard->common : $lang->dashboard;
/* My menu. */
$lang->my->menu = new stdclass();
@@ -197,7 +198,8 @@ $lang->admin->menu->dev['menuOrder'][15] = 'editor';
$lang->admin->menu->dev['menuOrder'][20] = 'entry';
$lang->admin->menu->system['subMenu'] = new stdclass();
-$lang->admin->menu->system['subMenu']->data = array('link' => "{$lang->admin->data}|backup|index", 'subModule' => 'action');
+$lang->admin->menu->system['subMenu']->backup = array('link' => "{$lang->backup->common}|backup|index");
+$lang->admin->menu->system['subMenu']->trash = array('link' => "{$lang->action->trash}|action|trash");
$lang->admin->menu->system['subMenu']->safe = array('link' => "$lang->security|admin|safe", 'alias' => 'checkweak');
$lang->admin->menu->system['subMenu']->cron = array('link' => "{$lang->admin->cron}|cron|index", 'subModule' => 'cron');
$lang->admin->menu->system['subMenu']->timezone = array('link' => "$lang->timezone|custom|timezone");
diff --git a/extension/lite/feedback/ext/view/view.lite.html.hook.php b/extension/lite/feedback/ext/view/view.lite.html.hook.php
index d4ee0a9836..b6d5647aaa 100644
--- a/extension/lite/feedback/ext/view/view.lite.html.hook.php
+++ b/extension/lite/feedback/ext/view/view.lite.html.hook.php
@@ -1,8 +1,4 @@
diff --git a/extension/lite/group/ext/lang/resource.php b/extension/lite/group/ext/lang/resource.php
index ec5c6714a9..45d77bcd6f 100644
--- a/extension/lite/group/ext/lang/resource.php
+++ b/extension/lite/group/ext/lang/resource.php
@@ -261,6 +261,7 @@ $lang->resource->story->delete = 'deleteAction';
$lang->resource->story->view = 'view';
$lang->resource->story->change = 'changeAction';
$lang->resource->story->review = 'reviewAction';
+$lang->resource->story->submitReview = 'submitReview';
$lang->resource->story->batchReview = 'batchReview';
$lang->resource->story->recall = 'recall';
$lang->resource->story->assignTo = 'assignAction';
@@ -289,6 +290,7 @@ $lang->story->methodOrder[25] = 'delete';
$lang->story->methodOrder[30] = 'view';
$lang->story->methodOrder[35] = 'change';
$lang->story->methodOrder[40] = 'review';
+$lang->story->methodOrder[44] = 'submitReview';
$lang->story->methodOrder[45] = 'batchReview';
$lang->story->methodOrder[50] = 'recall';
$lang->story->methodOrder[55] = 'close';
@@ -551,7 +553,7 @@ $lang->resource->task->recordEstimate = 'recordEstimateAction';
$lang->resource->task->editEstimate = 'editEstimate';
$lang->resource->task->deleteEstimate = 'deleteEstimate';
$lang->resource->task->report = 'reportChart';
-if($config->edition != 'open') $lang->resource->task->exportTemplet = 'exportTemplet';
+if($config->edition != 'open') $lang->resource->task->exportTemplate = 'exportTemplate';
if($config->edition != 'open') $lang->resource->task->import = 'import';
$lang->task->methodOrder[5] = 'create';
@@ -577,7 +579,7 @@ $lang->task->methodOrder[100] = 'editEstimate';
$lang->task->methodOrder[105] = 'deleteEstimate';
$lang->task->methodOrder[110] = 'report';
$lang->task->methodOrder[115] = 'batchChangeModule';
-$lang->task->methodOrder[120] = 'exportTemplet';
+$lang->task->methodOrder[120] = 'exportTemplate';
$lang->task->methodOrder[125] = 'import';
/* Doc. */
@@ -974,6 +976,7 @@ if($config->edition == 'biz' or $config->edition == 'max')
$lang->resource->feedback->delete = 'delete';
$lang->resource->feedback->close = 'closeAction';
$lang->resource->feedback->export = 'exportAction';
+ $lang->resource->feedback->assignTo = 'assignAction';
if($config->visions == ',lite,') unset($lang->resource->feedback);
diff --git a/extension/lite/my/ext/view/task.html.php b/extension/lite/my/ext/view/task.html.php
index f4679b24d8..01f53c561d 100644
--- a/extension/lite/my/ext/view/task.html.php
+++ b/extension/lite/my/ext/view/task.html.php
@@ -95,7 +95,9 @@
}
else
{
- echo html::a($this->createLink('task', 'view', "taskID=$task->id", '', '', $task->project), $task->name, null, "style='color: $task->color'");
+ $onlybody = $task->executionType == 'kanban' ? true : '';
+ $class = $task->executionType == 'kanban' ? 'iframe' : '';
+ echo html::a($this->createLink('task', 'view', "taskID=$task->id", '', $onlybody, $task->project), $task->name, null, "class='$class' data-width='80%' style='color: $task->color'");
}
?>
children)) echo '';?>
diff --git a/extension/lite/project/ext/view/execution.html.php b/extension/lite/project/ext/view/execution.html.php
index a11aaf3846..8961898aad 100644
--- a/extension/lite/project/ext/view/execution.html.php
+++ b/extension/lite/project/ext/view/execution.html.php
@@ -14,7 +14,7 @@