X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=mysql.sql;h=fb2ebe174a58a2896d343dbdd7345249916a005d;hb=d74142948db5d27a3bf144a8ee485318cc1330c3;hp=d5dbe410069bab1f12dc8f2d4464c6105d69c9b4;hpb=3510da81df216bb117f197dc69366fc564902754;p=timetracker.git diff --git a/mysql.sql b/mysql.sql index d5dbe410..fb2ebe17 100644 --- a/mysql.sql +++ b/mysql.sql @@ -17,6 +17,7 @@ CREATE TABLE `tt_groups` ( `parent_id` int(11) default NULL, # parent group id `org_id` int(11) default NULL, # organization id (id of top group) `name` varchar(80) default NULL, # group name + `description` varchar(255) default NULL, # group description `currency` varchar(7) default NULL, # currency symbol `decimal_mark` char(1) NOT NULL default '.', # separator in decimals `lang` varchar(10) NOT NULL default 'en', # language @@ -90,6 +91,7 @@ CREATE TABLE `tt_users` ( `role_id` int(11) default NULL, # role id `client_id` int(11) default NULL, # client id for "client" user role `rate` float(6,2) NOT NULL default '0.00', # default hourly rate + `quota_percent` float(6,2) default NULL, # percent of time quota `email` varchar(100) default NULL, # user email `created` datetime default NULL, # creation timestamp `created_ip` varchar(45) default NULL, # creator ip @@ -296,6 +298,7 @@ CREATE TABLE `tt_fav_reports` ( CREATE TABLE `tt_cron` ( `id` int(11) NOT NULL auto_increment, # entry id `group_id` int(11) NOT NULL, # group id + `org_id` int(11) default NULL, # organization id `cron_spec` varchar(255) NOT NULL, # cron specification, "0 1 * * *" for "daily at 01:00" `last` int(11) default NULL, # UNIX timestamp of when job was last run `next` int(11) default NULL, # UNIX timestamp of when to run next job @@ -332,13 +335,16 @@ create unique index client_name_idx on tt_clients(group_id, name, status); # Structure for table tt_client_project_binds. This table maps clients to assigned projects. # CREATE TABLE `tt_client_project_binds` ( - `client_id` int(11) NOT NULL, # client id - `project_id` int(11) NOT NULL # project id + `client_id` int(11) NOT NULL, # client id + `project_id` int(11) NOT NULL, # project id + `group_id` int(11) default NULL, # group id + `org_id` int(11) default NULL # organization id ); # Indexes for tt_client_project_binds. create index client_idx on tt_client_project_binds(client_id); create index project_idx on tt_client_project_binds(project_id); +create unique index client_project_idx on tt_client_project_binds(client_id, project_id); # @@ -347,6 +353,8 @@ create index project_idx on tt_client_project_binds(project_id); # CREATE TABLE `tt_config` ( `user_id` int(11) NOT NULL, # user id + `group_id` int(11) default NULL, # group id + `org_id` int(11) default NULL, # organization id `param_name` varchar(32) NOT NULL, # parameter name `param_value` varchar(80) default NULL # parameter value ); @@ -363,6 +371,7 @@ create unique index param_idx on tt_config(user_id, param_name); CREATE TABLE `tt_custom_fields` ( `id` int(11) NOT NULL auto_increment, # custom field id `group_id` int(11) NOT NULL, # group id + `org_id` int(11) default NULL, # organization id `type` tinyint(4) NOT NULL default 0, # custom field type (text or dropdown) `label` varchar(32) NOT NULL default '', # custom field label `required` tinyint(4) default 0, # whether this custom field is mandatory for time records @@ -376,8 +385,11 @@ CREATE TABLE `tt_custom_fields` ( # CREATE TABLE `tt_custom_field_options` ( `id` int(11) NOT NULL auto_increment, # option id + `group_id` int(11) default NULL, # group id + `org_id` int(11) default NULL, # organization id `field_id` int(11) NOT NULL, # custom field id `value` varchar(32) NOT NULL default '', # option value + `status` tinyint(4) default 1, # option status PRIMARY KEY (`id`) ); @@ -388,6 +400,8 @@ CREATE TABLE `tt_custom_field_options` ( # CREATE TABLE `tt_custom_field_log` ( `id` bigint NOT NULL auto_increment, # custom field log id + `group_id` int(11) default NULL, # group id + `org_id` int(11) default NULL, # organization id `log_id` bigint NOT NULL, # id of a record in tt_log this record corresponds to `field_id` int(11) NOT NULL, # custom field id `option_id` int(11) default NULL, # Option id. Used for dropdown custom fields. @@ -475,4 +489,4 @@ CREATE TABLE `tt_site_config` ( PRIMARY KEY (`param_name`) ); -INSERT INTO `tt_site_config` (`param_name`, `param_value`, `created`) VALUES ('version_db', '1.18.19', now()); # TODO: change when structure changes. +INSERT INTO `tt_site_config` (`param_name`, `param_value`, `created`) VALUES ('version_db', '1.18.34', now()); # TODO: change when structure changes.