chore(): create default refund reasons (#13591)
* chore(): create default refund reasons * Create great-donuts-swim.md * woops * woopsie * woopsie * tests * tests * woopsie * fml * fix: comment
This commit is contained in:
@@ -450,6 +450,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment_collection",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
},
|
||||
@@ -463,6 +464,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment_provider",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
}
|
||||
@@ -658,6 +660,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment_collection",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
}
|
||||
@@ -871,6 +874,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment_collection",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
},
|
||||
@@ -884,6 +888,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment_session",
|
||||
"createForeignKeyConstraint": true,
|
||||
"updateRule": "cascade"
|
||||
}
|
||||
},
|
||||
@@ -1022,6 +1027,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
}
|
||||
@@ -1286,6 +1292,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.payment",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "cascade",
|
||||
"updateRule": "cascade"
|
||||
},
|
||||
@@ -1299,6 +1306,7 @@
|
||||
"id"
|
||||
],
|
||||
"referencedTableName": "public.refund_reason",
|
||||
"createForeignKeyConstraint": true,
|
||||
"deleteRule": "set null",
|
||||
"updateRule": "cascade"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
import { Migration } from "@mikro-orm/migrations"
|
||||
import { ulid } from "ulid"
|
||||
|
||||
export class Migration20250924135437 extends Migration {
|
||||
override async up(): Promise<void> {
|
||||
const [existingReason] = await this.execute(`
|
||||
SELECT 1 as exists
|
||||
FROM "refund_reason"
|
||||
LIMIT 1
|
||||
`)
|
||||
|
||||
if (!existingReason) {
|
||||
// 2. Create default shipping option type
|
||||
await this.execute(`
|
||||
INSERT INTO "refund_reason" (id, label, description)
|
||||
VALUES
|
||||
('refr_${ulid()}', 'Shipping Issue', 'Refund due to lost, delayed, or misdelivered shipment'),
|
||||
('refr_${ulid()}', 'Customer Care Adjustment', 'Refund given as goodwill or compensation for inconvenience'),
|
||||
('refr_${ulid()}', 'Pricing Error', 'Refund to correct an overcharge, missing discount, or incorrect price');
|
||||
`)
|
||||
}
|
||||
}
|
||||
|
||||
override async down(): Promise<void> {
|
||||
// Remove the default refund reasons we created
|
||||
this.addSql(`
|
||||
DELETE FROM "refund_reason"
|
||||
WHERE ("label", "description") IN (
|
||||
('Shipping Issue', 'Refund due to lost, delayed, or misdelivered shipment'),
|
||||
('Customer Care Adjustment', 'Refund given as goodwill or compensation for inconvenience'),
|
||||
('Pricing Error', 'Refund to correct an overcharge, missing discount, or incorrect price')
|
||||
)
|
||||
`)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user