Merged PR 127: Task1856: DBマイグレーション(タスク一覧取得)
## 概要 [Task1856: DBマイグレーション(タスク一覧取得)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_sprints/taskboard/OMDSDictation%20%E3%83%81%E3%83%BC%E3%83%A0/OMDSDictation/%E3%82%B9%E3%83%97%E3%83%AA%E3%83%B3%E3%83%88%2010-1?workitem=1856) - 必要なテーブルを作成 - ユーザーグループテーブル - ユーザーグループ所属テーブル - ソート条件テーブル - チェックアウト権限テーブル ## レビューポイント - テーブル名は妥当か - 各カラムの型や制約、コメントは妥当か - ユーザーグループ名はNOT NULLでよい? - ソート条件のカラム名はNOT NULLでよい? - チェック制約を追加したが問題なさそうか ## UIの変更 - Before/Afterのスクショなど - スクショ置き場 ## 動作確認状況 - ローカルで確認 - Migrate up /Migrate downでテーブル追加・削除を確認 - チェック制約で片方のカラムのみ値が入ることを確認(両方値がある or 両方NULLではNG) ## 補足
This commit is contained in:
parent
1ced5ef66d
commit
0ca766f309
14
dictation_server/db/migrations/010-create_user_group.sql
Normal file
14
dictation_server/db/migrations/010-create_user_group.sql
Normal file
@ -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`;
|
||||
@ -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`;
|
||||
15
dictation_server/db/migrations/012-create_sort_criteria.sql
Normal file
15
dictation_server/db/migrations/012-create_sort_criteria.sql
Normal file
@ -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`;
|
||||
@ -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`;
|
||||
Loading…
x
Reference in New Issue
Block a user