Initial commit: Full Crawl API implementation
This commit is contained in:
21
crates/db/migrations/003_teams.sql
Normal file
21
crates/db/migrations/003_teams.sql
Normal file
@@ -0,0 +1,21 @@
|
||||
CREATE TABLE teams (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
name VARCHAR(255) NOT NULL,
|
||||
slug VARCHAR(255) UNIQUE NOT NULL,
|
||||
owner_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE TABLE team_members (
|
||||
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
team_id UUID NOT NULL REFERENCES teams(id) ON DELETE CASCADE,
|
||||
user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
role VARCHAR(50) NOT NULL DEFAULT 'member',
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
UNIQUE(team_id, user_id)
|
||||
);
|
||||
|
||||
CREATE INDEX idx_teams_owner ON teams(owner_id);
|
||||
CREATE INDEX idx_team_members_team ON team_members(team_id);
|
||||
CREATE INDEX idx_team_members_user ON team_members(user_id);
|
||||
Reference in New Issue
Block a user