import { MigrationInterface, QueryRunner } from 'typeorm'

export class AddOrderAndReservationIdInMessageEntity1706818676768 implements MigrationInterface {
	name = 'AddOrderAndReservationIdInMessageEntity1706818676768'

	public async up(queryRunner: QueryRunner): Promise<void> {
		await queryRunner.query(`ALTER TABLE "message" ADD "orderId" uuid NOT NULL`)
		await queryRunner.query(`ALTER TABLE "message" ADD "reservationId" uuid`)
		await queryRunner.query(
			`ALTER TABLE "table_token" ALTER COLUMN "token" SET DEFAULT substr(md5(''||now()::text||random()::text), 0, 16)`,
		)
	}

	public async down(queryRunner: QueryRunner): Promise<void> {
		await queryRunner.query(
			`ALTER TABLE "table_token" ALTER COLUMN "token" SET DEFAULT substr(md5(((''|| (now())) || (random()))), 0, 16)`,
		)
		await queryRunner.query(`ALTER TABLE "message" DROP COLUMN "reservationId"`)
		await queryRunner.query(`ALTER TABLE "message" DROP COLUMN "orderId"`)
	}
}
