`plugins` varchar(255) default NULL, # a list of enabled plugins for team
`lock_spec` varchar(255) default NULL, # Cron specification for record locking,
# for example: "0 10 * * 1" for "weekly on Mon at 10:00".
+ `workday_hours` smallint(6) DEFAULT '8', # number of work hours in a regular day
`custom_logo` tinyint(4) default '0', # whether to use a custom logo or not
`status` tinyint(4) default '1', # team status
PRIMARY KEY (`id`)
create index project_idx on tt_expense_items(project_id);
create index invoice_idx on tt_expense_items(invoice_id);
+
#
-# Structure for table tt_monthly_quota.
-# This table lists expense items.
+# Structure for table tt_monthly_quotas.
+# This table keeps monthly work hour quotas for teams.
#
-
-CREATE TABLE `tt_monthly_quota` (
- `year` SMALLINT UNSIGNED NOT NULL , # year we'setting monthly quota for
- `month` TINYINT UNSIGNED NOT NULL , # month we're settng monthly quota for
- `quota` SMALLINT UNSIGNED NOT NULL , # the monthly quota
- PRIMARY KEY (`year`, `month`)
+CREATE TABLE `tt_monthly_quotas` (
+ `team_id` int(11) NOT NULL, # team id
+ `year` smallint(5) UNSIGNED NOT NULL, # quota year
+ `month` tinyint(3) UNSIGNED NOT NULL, # quota month
+ `quota` smallint(5) UNSIGNED NOT NULL, # number of work hours in specified month and year
+ PRIMARY KEY (`team_id`,`year`,`month`)
);
+
+ALTER TABLE `tt_monthly_quotas`
+ ADD CONSTRAINT `FK_TT_TEAM_CONSTRAING` FOREIGN KEY (`team_id`) REFERENCES `tt_teams` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;
+