initial commit of plugin just filling the tables with data for the playtime display
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
|
||||
CREATE TABLE `playtime_display_map_history` (
|
||||
`map_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`map_name` varchar(64) NOT NULL,
|
||||
`map_start_dt` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`map_end_dt` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`map_id`),
|
||||
KEY `idx_map_name` (`map_name`,`map_start_dt`),
|
||||
KEY `idx_start` (`map_start_dt`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
CREATE TABLE `playtime_display_map_vote_events` (
|
||||
`vote_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`map_id` bigint(20) unsigned DEFAULT NULL,
|
||||
`vote_time` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`current_map` varchar(64) DEFAULT NULL,
|
||||
`result` varchar(64) DEFAULT NULL,
|
||||
PRIMARY KEY (`vote_id`),
|
||||
KEY `idx_map_id` (`map_id`),
|
||||
CONSTRAINT `fk_voteevent_map` FOREIGN KEY (`map_id`) REFERENCES `playtime_display_map_history` (`map_id`) ON DELETE SET NULL
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
CREATE TABLE `playtime_display_players` (
|
||||
`steamid` varchar(64) NOT NULL,
|
||||
`current_name` varchar(128) NOT NULL,
|
||||
`current_country` char(2) DEFAULT NULL,
|
||||
`first_seen` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`last_seen` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`steamid`),
|
||||
KEY `idx_country` (`current_country`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
|
||||
|
||||
CREATE TABLE `playtime_display_name_history` (
|
||||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`steamid` varchar(64) NOT NULL,
|
||||
`player_name` varchar(128) NOT NULL,
|
||||
`first_seen` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`last_seen` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uq_steamid_name` (`steamid`,`player_name`),
|
||||
KEY `idx_player_name` (`player_name`),
|
||||
CONSTRAINT `fk_namehist_steamid` FOREIGN KEY (`steamid`) REFERENCES `playtime_display_players` (`steamid`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=197 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
CREATE TABLE `playtime_display_map_vote_choices` (
|
||||
`vote_id` int(10) unsigned NOT NULL,
|
||||
`steamid` varchar(64) NOT NULL,
|
||||
`vote_choice` varchar(64) NOT NULL,
|
||||
`vote_weight` int(11) NOT NULL DEFAULT 1,
|
||||
PRIMARY KEY (`vote_id`,`steamid`),
|
||||
KEY `idx_vote_choice` (`vote_choice`),
|
||||
KEY `fk_votechoice_steamid` (`steamid`),
|
||||
CONSTRAINT `fk_votechoice_event` FOREIGN KEY (`vote_id`) REFERENCES `playtime_display_map_vote_events` (`vote_id`) ON DELETE CASCADE,
|
||||
CONSTRAINT `fk_votechoice_steamid` FOREIGN KEY (`steamid`) REFERENCES `playtime_display_players` (`steamid`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- unloze_playtimestats.playtime_display_sessions definition
|
||||
|
||||
CREATE TABLE `playtime_display_sessions` (
|
||||
`session_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`steamid` varchar(64) NOT NULL,
|
||||
`country_code` char(2) DEFAULT NULL,
|
||||
`player_name` varchar(128) NOT NULL,
|
||||
`session_start_playtime_minutes` bigint(20) NOT NULL,
|
||||
`session_end_playtime_minutes` bigint(20) DEFAULT NULL,
|
||||
`session_start_dt` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`session_end_dt` datetime DEFAULT NULL,
|
||||
`session_active_minutes` bigint(20) GENERATED ALWAYS AS (`session_end_playtime_minutes` - `session_start_playtime_minutes`) STORED,
|
||||
`session_start_dow` tinyint(4) GENERATED ALWAYS AS (dayofweek(`session_start_dt`)) STORED,
|
||||
`session_start_tod` time GENERATED ALWAYS AS (cast(`session_start_dt` as time)) STORED,
|
||||
PRIMARY KEY (`session_id`),
|
||||
KEY `idx_steamid_start` (`steamid`,`session_start_dt`),
|
||||
KEY `idx_interval` (`session_start_dt`,`session_end_dt`),
|
||||
KEY `idx_dow_tod` (`session_start_dow`,`session_start_tod`),
|
||||
KEY `idx_country` (`country_code`),
|
||||
CONSTRAINT `fk_session_steamid` FOREIGN KEY (`steamid`) REFERENCES `playtime_display_players` (`steamid`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=215 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
Reference in New Issue
Block a user