diff --git a/dictation_server/db/migrations/010-create_user_group.sql b/dictation_server/db/migrations/010-create_user_group.sql new file mode 100644 index 0000000..094a66b --- /dev/null +++ b/dictation_server/db/migrations/010-create_user_group.sql @@ -0,0 +1,14 @@ +-- +migrate Up +CREATE TABLE IF NOT EXISTS `user_group` ( + `id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT 'ユーザーグループID', + `account_id` BIGINT UNSIGNED NOT NULL COMMENT 'アカウントID', + `name` VARCHAR(255) NOT NULL COMMENT 'ユーザーグループ名', + `deleted_at` TIMESTAMP COMMENT '削除時刻', + `created_by` VARCHAR(255) COMMENT '作成者', + `created_at` TIMESTAMP DEFAULT now() COMMENT '作成時刻', + `updated_by` VARCHAR(255) COMMENT '更新者', + `updated_at` TIMESTAMP DEFAULT now() COMMENT '更新時刻' +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci; + +-- +migrate Down +DROP TABLE `user_group`; \ No newline at end of file diff --git a/dictation_server/db/migrations/011-create_user_group_member.sql b/dictation_server/db/migrations/011-create_user_group_member.sql new file mode 100644 index 0000000..f44a982 --- /dev/null +++ b/dictation_server/db/migrations/011-create_user_group_member.sql @@ -0,0 +1,14 @@ +-- +migrate Up +CREATE TABLE IF NOT EXISTS `user_group_member` ( + `id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT '所属ID', + `user_group_id` BIGINT UNSIGNED NOT NULL COMMENT 'ユーザーグループID', + `user_id` BIGINT UNSIGNED NOT NULL COMMENT 'ユーザーID', + `deleted_at` TIMESTAMP COMMENT '削除時刻', + `created_by` VARCHAR(255) COMMENT '作成者', + `created_at` TIMESTAMP DEFAULT now() COMMENT '作成時刻', + `updated_by` VARCHAR(255) COMMENT '更新者', + `updated_at` TIMESTAMP DEFAULT now() COMMENT '更新時刻' +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci; + +-- +migrate Down +DROP TABLE `user_group_member`; \ No newline at end of file diff --git a/dictation_server/db/migrations/012-create_sort_criteria.sql b/dictation_server/db/migrations/012-create_sort_criteria.sql new file mode 100644 index 0000000..5bcc4a3 --- /dev/null +++ b/dictation_server/db/migrations/012-create_sort_criteria.sql @@ -0,0 +1,15 @@ +-- +migrate Up +CREATE TABLE IF NOT EXISTS `sort_criteria` ( + `id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT 'ソート条件ID', + `user_id` BIGINT UNSIGNED NOT NULL COMMENT 'ユーザーID', + `parameter` VARCHAR(255) NOT NULL COMMENT 'ソート条件の項目', + `direction` VARCHAR(255) NOT NULL COMMENT '昇順・降順', + `deleted_at` TIMESTAMP COMMENT '削除時刻', + `created_by` VARCHAR(255) COMMENT '作成者', + `created_at` TIMESTAMP DEFAULT now() COMMENT '作成時刻', + `updated_by` VARCHAR(255) COMMENT '更新者', + `updated_at` TIMESTAMP DEFAULT now() COMMENT '更新時刻' +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci; + +-- +migrate Down +DROP TABLE `sort_criteria`; \ No newline at end of file diff --git a/dictation_server/db/migrations/013-create_checkout_permission.sql b/dictation_server/db/migrations/013-create_checkout_permission.sql new file mode 100644 index 0000000..8232a12 --- /dev/null +++ b/dictation_server/db/migrations/013-create_checkout_permission.sql @@ -0,0 +1,25 @@ +-- +migrate Up +CREATE TABLE IF NOT EXISTS `checkout_permission` ( + `id` BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT 'チェックアウト権限ID', + `task_id`BIGINT UNSIGNED NOT NULL COMMENT 'タスクID', + `user_id` BIGINT UNSIGNED COMMENT 'タイピストユーザーID', + `user_group_id` BIGINT UNSIGNED COMMENT 'タイピストユーザーグループID', + `deleted_at` TIMESTAMP COMMENT '削除時刻', + `created_by` VARCHAR(255) COMMENT '作成者', + `created_at` TIMESTAMP DEFAULT now() COMMENT '作成時刻', + `updated_by` VARCHAR(255) COMMENT '更新者', + `updated_at` TIMESTAMP DEFAULT now() COMMENT '更新時刻', + CONSTRAINT CHK_OnlyOneValue CHECK ( + ( + `user_id` IS NULL + AND `user_group_id` IS NOT NULL + ) + OR ( + `user_id` IS NOT NULL + AND `user_group_id` IS NULL + ) +) +) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci; + +-- +migrate Down +DROP TABLE `checkout_permission`; \ No newline at end of file