import { MigrationInterface, QueryRunner } from "typeorm"

export class AddEscortTable1752146748647 implements MigrationInterface {
  name = "AddEscortTable1752146748647"

  public async up(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `CREATE TABLE "escort" ("id" SERIAL NOT NULL, "customer_id" integer NOT NULL, "name" character varying, "relation" character varying, "gender" character varying, "date_of_birth" character varying, "passport_number" character varying, "country_code" character varying, "phone_number" character varying, "email" character varying, "visa_start_date" character varying, "visa_end_date" character varying, "is_sponsered" boolean NOT NULL DEFAULT false, "created_at" TIMESTAMP NOT NULL DEFAULT NOW(), "updated_at" TIMESTAMP NOT NULL DEFAULT NOW(), "deleted_at" TIMESTAMP, CONSTRAINT "PK_f38747846ed6f0a981c6fe7e306" PRIMARY KEY ("id"))`,
    )
    await queryRunner.query(
      `ALTER TABLE "escort" ADD CONSTRAINT "FK_dd4e5d3f5f9cc182acfdb1dd3e7" FOREIGN KEY ("customer_id") REFERENCES "customers"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`,
    )
  }

  public async down(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query(
      `ALTER TABLE "escort" DROP CONSTRAINT "FK_dd4e5d3f5f9cc182acfdb1dd3e7"`,
    )
    await queryRunner.query(`DROP TABLE "escort"`)
  }
}
