init push
This commit is contained in:
22
migrations/20260507_base_contact_roles.sql
Normal file
22
migrations/20260507_base_contact_roles.sql
Normal file
@@ -0,0 +1,22 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE IF NOT EXISTS base_contact_roles (
|
||||
id BINARY(16) NOT NULL,
|
||||
base_id BINARY(16) NOT NULL,
|
||||
contact_id BINARY(16) NOT NULL,
|
||||
role_code VARCHAR(64) NOT NULL,
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
created_by BINARY(16) NULL,
|
||||
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
updated_by BINARY(16) NULL,
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY uq_base_contact_roles_base_contact_role (base_id, contact_id, role_code),
|
||||
KEY idx_base_contact_roles_base_id (base_id),
|
||||
KEY idx_base_contact_roles_contact_id (contact_id),
|
||||
KEY idx_base_contact_roles_role_code (role_code),
|
||||
CONSTRAINT fk_base_contact_roles_base FOREIGN KEY (base_id) REFERENCES bases(id) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_base_contact_roles_contact FOREIGN KEY (contact_id) REFERENCES users(id) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT chk_base_contact_roles_role_code CHECK (role_code IN ('responsible_flight_rescuer', 'chief_physician_in_charge'))
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE IF EXISTS base_contact_roles;
|
||||
Reference in New Issue
Block a user