mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-27 00:52:50 +00:00
fix
This commit is contained in:
@@ -2,6 +2,19 @@ import { MigrationInterface, QueryRunner } from 'typeorm';
|
||||
|
||||
export class FixOrphanedBookings1718549600000 implements MigrationInterface {
|
||||
public async up(queryRunner: QueryRunner): Promise<void> {
|
||||
// First, delete orphaned unloading_registrations that reference bookings with invalid yards
|
||||
await queryRunner.query(`
|
||||
DELETE FROM "freight"."unloading_registrations"
|
||||
WHERE "booking_id" IN (
|
||||
SELECT b."id" FROM "freight"."bookings" b
|
||||
WHERE (
|
||||
("origin_yard_id" IS NOT NULL AND "origin_yard_id" NOT IN (SELECT "id" FROM "freight"."yards"))
|
||||
OR
|
||||
("destination_yard_id" IS NOT NULL AND "destination_yard_id" NOT IN (SELECT "id" FROM "freight"."yards"))
|
||||
)
|
||||
)
|
||||
`);
|
||||
|
||||
// Delete orphaned bookings records with invalid origin_yard_id
|
||||
await queryRunner.query(`
|
||||
DELETE FROM "freight"."bookings"
|
||||
@@ -16,7 +29,7 @@ export class FixOrphanedBookings1718549600000 implements MigrationInterface {
|
||||
AND "destination_yard_id" NOT IN (SELECT "id" FROM "freight"."yards")
|
||||
`);
|
||||
|
||||
console.log('✅ Deleted orphaned bookings records');
|
||||
console.log('✅ Deleted orphaned unloading_registrations and bookings records');
|
||||
}
|
||||
|
||||
public async down(_queryRunner: QueryRunner): Promise<void> {
|
||||
|
||||
Reference in New Issue
Block a user