From 8ff1a81b3f03becb73a9da68ce4b800262683be7 Mon Sep 17 00:00:00 2001 From: "13621160019@163.com" <13621160019@163.com> Date: Thu, 17 Mar 2022 10:23:06 +0800 Subject: [PATCH] added myems_production_db to database --- database/install/myems_production_db.sql | 82 +++++++++++++----------- database/install/myems_system_db.sql | 2 +- database/upgrade/upgrade1.9.0.sql | 68 +++++++++++++++++++- 3 files changed, 110 insertions(+), 42 deletions(-) diff --git a/database/install/myems_production_db.sql b/database/install/myems_production_db.sql index 13852b36..a7d2b518 100644 --- a/database/install/myems_production_db.sql +++ b/database/install/myems_production_db.sql @@ -3,15 +3,8 @@ -- --------------------------------------------------------------------------------------------------------------------- -- Schema myems_production_db -- --------------------------------------------------------------------------------------------------------------------- --- MyEMS Production Database DROP DATABASE IF EXISTS `myems_production_db` ; - --- --------------------------------------------------------------------------------------------------------------------- --- Database myems_production_db --- --- MyEMS Production Database --- --------------------------------------------------------------------------------------------------------------------- -CREATE DATABASE IF NOT EXISTS `myems_production_db` ; +CREATE DATABASE IF NOT EXISTS `myems_production_db` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci' ; USE `myems_production_db` ; -- --------------------------------------------------------------------------------------------------------------------- @@ -25,16 +18,16 @@ CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products` ( `uuid` CHAR(36) NOT NULL, `unit_of_measure` VARCHAR(32) NOT NULL, `tag` VARCHAR(128) NOT NULL, - `coefficient_standard_product` DECIMAL(18, 3) NOT NULL DEFAULT 1.0, + `standard_product_coefficient` DECIMAL(18, 3) NOT NULL DEFAULT 1.0, PRIMARY KEY (`id`)); CREATE INDEX `tbl_products_index_1` ON `myems_production_db`.`tbl_products` (`name`); -- -------------------------------------------------------------------------------------------------------------------------------------------------------- --- Table `myems_production_db`.`tbl_products_shifts` +-- Table `myems_production_db`.`tbl_shifts` -- --------------------------------------------------------------------------------------------------------------------- -DROP TABLE IF EXISTS `myems_production_db`.`tbl_products_shifts` ; +DROP TABLE IF EXISTS `myems_production_db`.`tbl_shifts` ; -CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products_shifts` ( +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shifts` ( `id` BIGINT NOT NULL AUTO_INCREMENT, `shopfloor_id` BIGINT NOT NULL, `team_id` BIGINT NOT NULL, @@ -42,34 +35,12 @@ CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products_shifts` ( `product_count` INT NOT NULL, `start_datetime_utc` DATETIME NOT NULL, `end_datetime_utc` DATETIME NOT NULL, - `timestamp` DATETIME NOT NULL, + `reference_timestamp` DATETIME NOT NULL, PRIMARY KEY (`id`)); -CREATE INDEX `tbl_products_shifts_index_1` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `product_id`, `end_datetime_utc` ); -CREATE INDEX `tbl_products_shifts_index_2` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `product_id`, `start_datetime_utc`, `end_datetime_utc` ); -CREATE INDEX `tbl_products_shifts_index_3` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `timestamp`); - --- --------------------------------------------------------------------------------------------------------------------- --- Table `myems_production_db`.`tbl_shopfloors_products` --- --------------------------------------------------------------------------------------------------------------------- -DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloors_products` ; - -CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_products` ( - `id` BIGINT NOT NULL AUTO_INCREMENT, - `shopfloor_id` BIGINT NOT NULL, - `product_id` BIGINT NOT NULL, - PRIMARY KEY (`id`)); - --- --------------------------------------------------------------------------------------------------------------------- --- Table `myems_production_db`.`tbl_shopfloor_working_days` --- --------------------------------------------------------------------------------------------------------------------- -DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ; - -CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ( - `id` BIGINT NOT NULL AUTO_INCREMENT, - `shopfloor_id` BIGINT NOT NULL, - `date_local` DATE NOT NULL, - PRIMARY KEY (`id`)); -CREATE INDEX `tbl_shopfloor_working_days_index_1` ON `myems_production_db`.`tbl_shopfloor_working_days` (`shopfloor_id`, `date_local`); +CREATE INDEX `tbl_shifts_index_1` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `product_id`, `end_datetime_utc` ); +CREATE INDEX `tbl_shifts_index_2` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `product_id`, `start_datetime_utc`, `end_datetime_utc` ); +CREATE INDEX `tbl_shifts_index_3` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `reference_timestamp`); +CREATE INDEX `tbl_shifts_index_4` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `team_id`); -- --------------------------------------------------------------------------------------------------------------------- -- Table `myems_production_db`.`tbl_shopfloor_hourly` @@ -85,6 +56,39 @@ CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_hourly` ( PRIMARY KEY (`id`)); CREATE INDEX `tbl_shopfloor_hourly_index_1` ON `myems_production_db`.`tbl_shopfloor_hourly` (`shopfloor_id`, `product_id`, `start_datetime_utc`); +-- --------------------------------------------------------------------------------------------------------------------- +-- Table `myems_production_db`.`tbl_shopfloor_working_days` +-- --------------------------------------------------------------------------------------------------------------------- +DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ; + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `date_local` DATE NOT NULL, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_shopfloor_working_days_index_1` ON `myems_production_db`.`tbl_shopfloor_working_days` (`shopfloor_id`, `date_local`); + +-- --------------------------------------------------------------------------------------------------------------------- +-- Table `myems_production_db`.`tbl_shopfloors_products` +-- --------------------------------------------------------------------------------------------------------------------- +DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloors_products` ; + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_products` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `product_id` BIGINT NOT NULL, + PRIMARY KEY (`id`)); + +-- --------------------------------------------------------------------------------------------------------------------- +-- Table `myems_production_db`.`tbl_shopfloors_teams` +-- --------------------------------------------------------------------------------------------------------------------- +DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloors_teams` ; + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_teams` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `team_id` BIGINT NOT NULL, + PRIMARY KEY (`id`)); -- --------------------------------------------------------------------------------------------------------------------- -- Table `myems_production_db`.`tbl_teams` diff --git a/database/install/myems_system_db.sql b/database/install/myems_system_db.sql index 22c93a7f..49067b98 100644 --- a/database/install/myems_system_db.sql +++ b/database/install/myems_system_db.sql @@ -1248,6 +1248,6 @@ USE `myems_system_db`; INSERT INTO `myems_system_db`.`tbl_versions` (`id`, `version`, `release_date`) VALUES -(1, '1.8.2', '2022-03-16'); +(1, '1.9.0', '2022-03-28'); COMMIT; diff --git a/database/upgrade/upgrade1.9.0.sql b/database/upgrade/upgrade1.9.0.sql index b92b829e..4338f5e5 100644 --- a/database/upgrade/upgrade1.9.0.sql +++ b/database/upgrade/upgrade1.9.0.sql @@ -1,12 +1,76 @@ -- --------------------------------------------------------------------------------------------------------------------- -- WARNING: BACKUP YOUR DATABASE BEFORE UPGRADING --- THIS SCRIPT IS ONLY FOR UPGRADING 1.8.1 TO 1.8.2 +-- THIS SCRIPT IS ONLY FOR UPGRADING 1.8.2 TO 1.9.0 -- THE CURRENT VERSION CAN BE FOUND AT `myems_system_db`.`tbl_versions` -- --------------------------------------------------------------------------------------------------------------------- START TRANSACTION; +CREATE DATABASE IF NOT EXISTS `myems_production_db` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci' ; +USE `myems_production_db` ; + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `name` VARCHAR(128) NOT NULL, + `uuid` CHAR(36) NOT NULL, + `unit_of_measure` VARCHAR(32) NOT NULL, + `tag` VARCHAR(128) NOT NULL, + `standard_product_coefficient` DECIMAL(18, 3) NOT NULL DEFAULT 1.0, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_products_index_1` ON `myems_production_db`.`tbl_products` (`name`); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shifts` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `team_id` BIGINT NOT NULL, + `product_id` BIGINT NOT NULL, + `product_count` INT NOT NULL, + `start_datetime_utc` DATETIME NOT NULL, + `end_datetime_utc` DATETIME NOT NULL, + `reference_timestamp` DATETIME NOT NULL, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_shifts_index_1` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `product_id`, `end_datetime_utc` ); +CREATE INDEX `tbl_shifts_index_2` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `product_id`, `start_datetime_utc`, `end_datetime_utc` ); +CREATE INDEX `tbl_shifts_index_3` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `reference_timestamp`); +CREATE INDEX `tbl_shifts_index_4` ON `myems_production_db`.`tbl_shifts` (`shopfloor_id`, `team_id`); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_hourly` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `start_datetime_utc` DATETIME NOT NULL, + `product_id` BIGINT NOT NULL, + `product_count` DECIMAL(18, 3) NOT NULL, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_shopfloor_hourly_index_1` ON `myems_production_db`.`tbl_shopfloor_hourly` (`shopfloor_id`, `product_id`, `start_datetime_utc`); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `date_local` DATE NOT NULL, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_shopfloor_working_days_index_1` ON `myems_production_db`.`tbl_shopfloor_working_days` (`shopfloor_id`, `date_local`); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_products` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `product_id` BIGINT NOT NULL, + PRIMARY KEY (`id`)); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_teams` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `shopfloor_id` BIGINT NOT NULL, + `team_id` BIGINT NOT NULL, + PRIMARY KEY (`id`)); + +CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_teams` ( + `id` BIGINT NOT NULL AUTO_INCREMENT, + `name` VARCHAR(128) NOT NULL, + `uuid` CHAR(36) NOT NULL, + PRIMARY KEY (`id`)); +CREATE INDEX `tbl_teams_index_1` ON `myems_production_db`.`tbl_teams` (`name`); + -- UPDATE VERSION NUMBER -UPDATE `myems_system_db`.`tbl_versions` SET version='1.9.0', release_date='2022-03-20' WHERE id=1; +USE `myems_system_db` ; +UPDATE `myems_system_db`.`tbl_versions` SET version='1.9.0', release_date='2022-03-28' WHERE id=1; COMMIT;