34 lines
1.9 KiB
TypeScript
34 lines
1.9 KiB
TypeScript
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
|
|
export class ItemQueues1729570177597 implements MigrationInterface {
|
|
name = 'ItemQueues1729570177597';
|
|
|
|
public async up(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(
|
|
`CREATE TYPE "public"."item_queues_status_enum" AS ENUM('active', 'cancel', 'confirmed', 'draft', 'expired', 'inactive', 'partial refund', 'pending', 'proses refund', 'refunded', 'rejected', 'settled', 'waiting')`,
|
|
);
|
|
await queryRunner.query(
|
|
`CREATE TYPE "public"."item_queues_item_type_enum" AS ENUM('tiket masuk', 'wahana', 'bundling', 'free gift', 'other')`,
|
|
);
|
|
await queryRunner.query(
|
|
`CREATE TABLE "item_queues" ("id" uuid NOT NULL DEFAULT uuid_generate_v4(), "creator_id" character varying(36), "creator_name" character varying(125), "editor_id" character varying(36), "editor_name" character varying(125), "created_at" bigint NOT NULL, "updated_at" bigint NOT NULL, "status" "public"."item_queues_status_enum" NOT NULL DEFAULT 'draft', "name" character varying NOT NULL, "item_type" "public"."item_queues_item_type_enum" NOT NULL DEFAULT 'tiket masuk', CONSTRAINT "PK_e19adb0b99d995e8f10c189985f" PRIMARY KEY ("id"))`,
|
|
);
|
|
await queryRunner.query(`ALTER TABLE "items" ADD "item_queue_id" uuid`);
|
|
|
|
await queryRunner.query(
|
|
`ALTER TABLE "items" ADD CONSTRAINT "FK_2cbbeb03e176addcf60d65f7c9c" FOREIGN KEY ("item_queue_id") REFERENCES "item_queues"("id") ON DELETE CASCADE ON UPDATE CASCADE`,
|
|
);
|
|
}
|
|
|
|
public async down(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(
|
|
`ALTER TABLE "items" DROP CONSTRAINT "FK_2cbbeb03e176addcf60d65f7c9c"`,
|
|
);
|
|
|
|
await queryRunner.query(`ALTER TABLE "items" DROP COLUMN "item_queue_id"`);
|
|
await queryRunner.query(`DROP TABLE "item_queues"`);
|
|
await queryRunner.query(`DROP TYPE "public"."item_queues_item_type_enum"`);
|
|
await queryRunner.query(`DROP TYPE "public"."item_queues_status_enum"`);
|
|
}
|
|
}
|