From 5e8cf20253a19dae71ecee9f4040d4bc405799a6 Mon Sep 17 00:00:00 2001 From: ItsMalma Date: Wed, 10 Dec 2025 11:56:28 +0700 Subject: [PATCH] fix tour hotel schedule on package detail --- .../migrations/Migration20251210045156.ts | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/database/migrations/Migration20251210045156.ts diff --git a/src/database/migrations/Migration20251210045156.ts b/src/database/migrations/Migration20251210045156.ts new file mode 100644 index 0000000..88e2687 --- /dev/null +++ b/src/database/migrations/Migration20251210045156.ts @@ -0,0 +1,40 @@ +import { Migration } from "@mikro-orm/migrations"; + +export class Migration20251210045156 extends Migration { + override async up(): Promise { + const knex = this.getKnex(); + + await knex.schema.alterTable("package_detail_tour_hotels", (table) => { + table.dropColumn("hotel_id"); + }); + + await knex.schema.alterTable("package_detail_tour_hotels", (table) => { + table.string("hotel_schedule_id", 30).notNullable(); + table + .foreign( + "hotel_schedule_id", + "package_detail_tour_hotels_hotel_schedule_id_foreign", + ) + .references("hotel_schedule.id") + .onUpdate("NO ACTION") + .onDelete("CASCADE"); + }); + } + + override async down(): Promise { + const knex = this.getKnex(); + + await knex.schema.alterTable("package_detail_tour_hotels", (table) => { + table.dropColumn("hotel_schedule_id"); + }); + + await knex.schema.alterTable("package_detail_tour_hotels", (table) => { + table.string("hotel_id", 30).notNullable(); + table + .foreign("hotel_id", "package_detail_tour_hotels_hotel_id_foreign") + .references("hotel_schedule.id") + .onUpdate("NO ACTION") + .onDelete("CASCADE"); + }); + } +}