users group

This commit is contained in:
2026-07-01 15:42:53 +03:30
parent ab3394a703
commit 91b67e0377
9 changed files with 213 additions and 4 deletions
@@ -0,0 +1,40 @@
import { Migration } from '@mikro-orm/migrations';
export class Migration20260701160000_addUserGroupUsersTable extends Migration {
override async up(): Promise<void> {
this.addSql(`
create table "user_group_users" (
"id" char(26) not null,
"created_at" timestamptz not null default now(),
"updated_at" timestamptz not null default now(),
"deleted_at" timestamptz null,
"user_id" char(26) not null,
"user_group_id" char(26) not null,
constraint "user_group_users_pkey" primary key ("id")
);
`);
this.addSql(`create index "user_group_users_created_at_index" on "user_group_users" ("created_at");`);
this.addSql(`create index "user_group_users_deleted_at_index" on "user_group_users" ("deleted_at");`);
this.addSql(`create index "user_group_users_user_group_id_index" on "user_group_users" ("user_group_id");`);
this.addSql(`create index "user_group_users_user_id_index" on "user_group_users" ("user_id");`);
this.addSql(`alter table "user_group_users" add constraint "user_group_users_user_id_user_group_id_unique" unique ("user_id", "user_group_id");`);
this.addSql(`
alter table "user_group_users"
add constraint "user_group_users_user_id_foreign"
foreign key ("user_id") references "users" ("id") on update cascade;
`);
this.addSql(`
alter table "user_group_users"
add constraint "user_group_users_user_group_id_foreign"
foreign key ("user_group_id") references "user_groups" ("id") on update cascade;
`);
}
override async down(): Promise<void> {
this.addSql(`alter table "user_group_users" drop constraint if exists "user_group_users_user_group_id_foreign";`);
this.addSql(`alter table "user_group_users" drop constraint if exists "user_group_users_user_id_foreign";`);
this.addSql(`drop table if exists "user_group_users" cascade;`);
}
}