Files
dpage-api/database/migrations/Migration20260607123000_addDesignRequests.ts
2026-06-07 12:25:35 +03:30

19 lines
1.4 KiB
TypeScript

import { Migration } from '@mikro-orm/migrations';
export class Migration20260607123000_addDesignRequests extends Migration {
override async up(): Promise<void> {
this.addSql(`create table "design_requests" ("id" char(26) not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, "title" varchar(255) not null, "count" int not null default 1, "desc" text null, "expected_date" timestamptz null, "attachments" jsonb not null default '[]', "invoice_id" uuid not null, "paid_at" timestamptz null, "business_id" char(26) not null, constraint "design_requests_pkey" primary key ("id"));`);
this.addSql(`create index "design_requests_created_at_index" on "design_requests" ("created_at");`);
this.addSql(`create index "design_requests_deleted_at_index" on "design_requests" ("deleted_at");`);
this.addSql(`create index "design_requests_business_id_id_index" on "design_requests" ("business_id");`);
this.addSql(`create index "design_requests_invoice_id_index" on "design_requests" ("invoice_id");`);
this.addSql(`alter table "design_requests" add constraint "design_requests_business_id_foreign" foreign key ("business_id") references "business" ("id") on update cascade on delete restrict;`);
}
override async down(): Promise<void> {
this.addSql(`drop table if exists "design_requests" cascade;`);
}
}