Files
dmenu-api/database/migrations/Migration20260715083002_task.ts
morteza 4abc2ae6e5
deploy to danak / build_and_deploy (push) Has been cancelled
fix review table migration
2026-07-15 12:39:53 +03:30

27 lines
1.3 KiB
TypeScript

import { Migration } from '@mikro-orm/migrations';
export class Migration20260715083002_task extends Migration {
override async up(): Promise<void> {
this.addSql(`alter table "reviews" drop constraint "reviews_order_id_foreign";`);
this.addSql(`drop index "reviews_order_id_index";`);
this.addSql(`alter table "reviews" drop constraint "reviews_order_id_food_id_user_id_unique";`);
this.addSql(`alter table "reviews" drop column "order_id";`);
this.addSql(`alter table "reviews" add column "is_buyer" boolean not null default false;`);
this.addSql(`alter table "reviews" add constraint "reviews_food_id_user_id_unique" unique ("food_id", "user_id");`);
}
override async down(): Promise<void> {
this.addSql(`alter table "reviews" drop constraint "reviews_food_id_user_id_unique";`);
this.addSql(`alter table "reviews" add column "order_id" char(26) not null;`);
this.addSql(`alter table "reviews" add constraint "reviews_order_id_foreign" foreign key ("order_id") references "orders" ("id") on update cascade;`);
this.addSql(`create index "reviews_order_id_index" on "reviews" ("order_id");`);
this.addSql(`alter table "reviews" add constraint "reviews_order_id_food_id_user_id_unique" unique ("order_id", "food_id", "user_id");`);
}
}