UNPKG

@medusajs/order

Version:
371 lines (293 loc) • 12.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Migration20240604100512 = void 0; const migrations_1 = require("@mikro-orm/migrations"); class Migration20240604100512 extends migrations_1.Migration { async up() { const sql = ` ALTER TABLE "order_change" ADD COLUMN if NOT exists "change_type" TEXT NULL; ALTER TABLE "order_change" ADD COLUMN if NOT exists "deleted_at" timestamptz NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_change_type" ON "order_change" ( change_type ); CREATE INDEX IF NOT EXISTS "IDX_order_change_deleted_at" ON "order_change" ( deleted_at ); ALTER TABLE "order_transaction" ADD COLUMN if NOT exists "return_id" TEXT NULL; ALTER TABLE "order_transaction" ADD COLUMN if NOT exists "claim_id" TEXT NULL; ALTER TABLE "order_transaction" ADD COLUMN if NOT exists "exchange_id" TEXT NULL; CREATE INDEX IF NOT EXISTS "IDX_order_transaction_return_id" ON "order_transaction" ( return_id ) WHERE return_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_transaction_claim_id" ON "order_transaction" ( claim_id ) WHERE claim_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_transaction_exchange_id" ON "order_transaction" ( exchange_id ) WHERE exchange_id IS NOT NULL AND deleted_at IS NULL; ALTER TABLE "order_shipping" ADD COLUMN if NOT exists "return_id" TEXT NULL; ALTER TABLE "order_shipping" ADD COLUMN if NOT exists "claim_id" TEXT NULL; ALTER TABLE "order_shipping" ADD COLUMN if NOT exists "exchange_id" TEXT NULL; CREATE INDEX IF NOT EXISTS "IDX_order_shipping_return_id" ON "order_shipping" ( return_id ) WHERE return_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_shipping_claim_id" ON "order_shipping" ( claim_id ) WHERE claim_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_shipping_exchange_id" ON "order_shipping" ( exchange_id ) WHERE exchange_id IS NOT NULL AND deleted_at IS NULL; ALTER TABLE "order_change" ADD COLUMN if NOT exists "return_id" TEXT NULL; ALTER TABLE "order_change" ADD COLUMN if NOT exists "claim_id" TEXT NULL; ALTER TABLE "order_change" ADD COLUMN if NOT exists "exchange_id" TEXT NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_return_id" ON "order_change" ( return_id ) WHERE return_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_claim_id" ON "order_change" ( claim_id ) WHERE claim_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_exchange_id" ON "order_change" ( exchange_id ) WHERE exchange_id IS NOT NULL AND deleted_at IS NULL; ALTER TABLE "order_change_action" ADD COLUMN if NOT exists "deleted_at" timestamptz NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_action_deleted_at" ON "order_change_action" ( deleted_at ); ALTER TABLE "order_change_action" ADD COLUMN if NOT exists "return_id" TEXT NULL; ALTER TABLE "order_change_action" ADD COLUMN if NOT exists "claim_id" TEXT NULL; ALTER TABLE "order_change_action" ADD COLUMN if NOT exists "exchange_id" TEXT NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_action_return_id" ON "order_change_action" ( return_id ) WHERE return_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_action_claim_id" ON "order_change_action" ( claim_id ) WHERE claim_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_change_action_exchange_id" ON "order_change_action" ( exchange_id ) WHERE exchange_id IS NOT NULL AND deleted_at IS NULL; DO $$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'return_status_enum') THEN CREATE TYPE return_status_enum AS ENUM ( 'requested', 'received', 'partially_received', 'canceled'); END IF; END$$; CREATE TABLE IF NOT EXISTS "return" ( "id" TEXT NOT NULL, "order_id" TEXT NOT NULL, "claim_id" TEXT NULL, "exchange_id" TEXT NULL, "order_version" INTEGER NOT NULL, "display_id" SERIAL, "status" return_status_enum NOT NULL DEFAULT 'requested', "no_notification" boolean NULL, "refund_amount" NUMERIC NULL, "raw_refund_amount" JSONB NULL, "metadata" jsonb NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, "received_at" timestamptz NULL, "canceled_at" timestamptz NULL, CONSTRAINT "return_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_return_order_id" ON "return" ( order_id ) WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_claim_id" ON "return" ( claim_id ) WHERE claim_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_exchange_id" ON "return" ( exchange_id ) WHERE exchange_id IS NOT NULL AND deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_display_id" ON "return" ( display_id ) WHERE deleted_at IS NULL; CREATE TABLE IF NOT EXISTS "return_item" ( "id" TEXT NOT NULL, "return_id" TEXT NOT NULL, "reason_id" TEXT NULL, "item_id" TEXT NOT NULL, "quantity" NUMERIC NOT NULL, "raw_quantity" JSONB NOT NULL, "received_quantity" NUMERIC NOT NULL DEFAULT 0, "raw_received_quantity" JSONB NOT NULL, "note" TEXT NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, CONSTRAINT "return_item_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_return_item_deleted_at" ON "return_item" ("deleted_at") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_item_return_id" ON "return_item" ("return_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_item_item_id" ON "return_item" ("item_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_return_item_reason_id" ON "return_item" ("reason_id") WHERE deleted_at IS NULL; CREATE TABLE IF NOT EXISTS "order_exchange" ( "id" TEXT NOT NULL, "order_id" TEXT NOT NULL, "return_id" TEXT NULL, "order_version" INTEGER NOT NULL, "display_id" SERIAL, "no_notification" BOOLEAN NULL, "allow_backorder" BOOLEAN NOT NULL DEFAULT FALSE, "difference_due" NUMERIC NULL, "raw_difference_due" JSONB NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, "canceled_at" timestamptz NULL, CONSTRAINT "order_exchange_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_order_exchange_display_id" ON "order_exchange" ("display_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_exchange_deleted_at" ON "order_exchange" ("deleted_at") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_exchange_order_id" ON "order_exchange" ("order_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_exchange_return_id" ON "order_exchange" ("return_id") WHERE return_id IS NOT NULL AND deleted_at IS NULL; CREATE TABLE IF NOT EXISTS "order_exchange_item" ( "id" TEXT NOT NULL, "exchange_id" TEXT NOT NULL, "item_id" TEXT NOT NULL, "quantity" NUMERIC NOT NULL, "raw_quantity" JSONB NOT NULL, "note" TEXT NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, CONSTRAINT "order_exchange_item_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_order_exchange_item_deleted_at" ON "order_exchange_item" ("deleted_at") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_exchange_item_exchange_id" ON "order_exchange_item" ("exchange_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_exchange_item_item_id" ON "order_exchange_item" ("item_id") WHERE deleted_at IS NULL; DO $$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'order_claim_type_enum') THEN CREATE TYPE order_claim_type_enum AS ENUM ( 'refund', 'replace' ); END IF; END$$; CREATE TABLE IF NOT EXISTS "order_claim" ( "id" TEXT NOT NULL, "order_id" TEXT NOT NULL, "return_id" TEXT NULL, "order_version" INTEGER NOT NULL, "display_id" SERIAL, "type" order_claim_type_enum NOT NULL, "no_notification" BOOLEAN NULL, "refund_amount" NUMERIC NULL, "raw_refund_amount" JSONB NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, "canceled_at" timestamptz NULL, CONSTRAINT "order_claim_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_order_claim_display_id" ON "order_claim" ("display_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_deleted_at" ON "order_claim" ("deleted_at") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_order_id" ON "order_claim" ("order_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_return_id" ON "order_claim" ("return_id") WHERE return_id IS NOT NULL AND deleted_at IS NULL; DO $$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'claim_reason_enum') THEN CREATE TYPE claim_reason_enum AS ENUM ( 'missing_item', 'wrong_item', 'production_failure', 'other' ); END IF; END$$; CREATE TABLE IF NOT EXISTS "order_claim_item" ( "id" TEXT NOT NULL, "claim_id" TEXT NOT NULL, "item_id" TEXT NOT NULL, "is_additional_item" BOOLEAN NOT NULL DEFAULT FALSE, "reason" claim_reason_enum NULL, "quantity" NUMERIC NOT NULL, "raw_quantity" JSONB NOT NULL, "note" TEXT NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, CONSTRAINT "order_claim_item_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_order_claim_item_deleted_at" ON "order_claim_item" ("deleted_at") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_item_claim_id" ON "order_claim_item" ("claim_id") WHERE deleted_at IS NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_item_item_id" ON "order_claim_item" ("item_id") WHERE deleted_at IS NULL; CREATE TABLE IF NOT EXISTS "order_claim_item_image" ( "id" TEXT NOT NULL, "claim_item_id" TEXT NOT NULL, "url" TEXT NOT NULL, "metadata" JSONB NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "deleted_at" timestamptz NULL, CONSTRAINT "order_claim_item_image_pkey" PRIMARY KEY ("id") ); CREATE INDEX IF NOT EXISTS "IDX_order_claim_item_image_claim_item_id" ON "order_claim_item_image" ("claim_item_id") WHERE "deleted_at" IS NOT NULL; CREATE INDEX IF NOT EXISTS "IDX_order_claim_item_image_deleted_at" ON "order_claim_item_image" ("deleted_at") WHERE "deleted_at" IS NOT NULL; `; this.addSql(sql); } } exports.Migration20240604100512 = Migration20240604100512; //# sourceMappingURL=Migration20240604100512.js.map