chore(): order module index and some impl details (#13462)
* order module fixes * order module fixes * fixes * revert big number * Create wet-wombats-rule.md
This commit is contained in:
committed by
GitHub
parent
368c1d1e17
commit
823a5c75ff
@@ -196,9 +196,7 @@ moduleIntegrationTestRunner<IOrderModuleService>({
|
||||
it("should create an order, shipping method and items. Including taxes and adjustments associated with them", async function () {
|
||||
const createdOrder = await service.createOrders(input)
|
||||
|
||||
const serializedOrder = JSON.parse(JSON.stringify(createdOrder))
|
||||
|
||||
expect(serializedOrder).toEqual(expectation)
|
||||
expect(createdOrder).toEqual(expectation)
|
||||
})
|
||||
|
||||
it("should create an order, shipping method and items. Including taxes and adjustments associated with them and add new transactions", async function () {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
404
packages/modules/order/src/migrations/Migration20250910130000.ts
Normal file
404
packages/modules/order/src/migrations/Migration20250910130000.ts
Normal file
@@ -0,0 +1,404 @@
|
||||
import { Migration } from "@mikro-orm/migrations"
|
||||
|
||||
export class Migration20250910130000 extends Migration {
|
||||
override async up(): Promise<void> {
|
||||
// Drop all existing indexes with incorrect WHERE clauses (IS NOT NULL instead of IS NULL)
|
||||
|
||||
// Order table indexes
|
||||
this.addSql('drop index if exists "IDX_order_display_id";')
|
||||
this.addSql('drop index if exists "IDX_order_region_id";')
|
||||
this.addSql('drop index if exists "IDX_order_customer_id";')
|
||||
this.addSql('drop index if exists "IDX_order_sales_channel_id";')
|
||||
this.addSql('drop index if exists "IDX_order_currency_code";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_address_id";')
|
||||
this.addSql('drop index if exists "IDX_order_billing_address_id";')
|
||||
this.addSql('drop index if exists "IDX_order_is_draft_order";')
|
||||
|
||||
// Order change table indexes
|
||||
this.addSql('drop index if exists "IDX_order_change_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_return_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_claim_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_status";')
|
||||
this.addSql('drop index if exists "IDX_order_change_version";')
|
||||
|
||||
// Order change action table indexes
|
||||
this.addSql(
|
||||
'drop index if exists "IDX_order_change_action_order_change_id";'
|
||||
)
|
||||
this.addSql('drop index if exists "IDX_order_change_action_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_action_return_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_action_claim_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_action_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_order_change_action_ordering";')
|
||||
|
||||
// Order summary table indexes
|
||||
this.addSql('drop index if exists "IDX_order_summary_order_id_version";')
|
||||
|
||||
// Order claim table indexes
|
||||
this.addSql('drop index if exists "IDX_order_claim_display_id";')
|
||||
this.addSql('drop index if exists "IDX_order_claim_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_claim_return_id";')
|
||||
|
||||
// Order claim item table indexes
|
||||
this.addSql('drop index if exists "IDX_order_claim_item_claim_id";')
|
||||
this.addSql('drop index if exists "IDX_order_claim_item_item_id";')
|
||||
|
||||
// Order claim item image table indexes
|
||||
this.addSql(
|
||||
'drop index if exists "IDX_order_claim_item_image_claim_item_id";'
|
||||
)
|
||||
|
||||
// Order credit line table indexes
|
||||
this.addSql('drop index if exists "IDX_order_credit_line_order_id";')
|
||||
|
||||
// Order exchange table indexes
|
||||
this.addSql('drop index if exists "IDX_order_exchange_display_id";')
|
||||
this.addSql('drop index if exists "IDX_order_exchange_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_exchange_return_id";')
|
||||
|
||||
// Order exchange item table indexes
|
||||
this.addSql('drop index if exists "IDX_order_exchange_item_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_order_exchange_item_item_id";')
|
||||
|
||||
// Line item table indexes
|
||||
this.addSql('drop index if exists "IDX_order_line_item_product_id";')
|
||||
this.addSql('drop index if exists "IDX_line_item_product_type_id";')
|
||||
this.addSql('drop index if exists "IDX_order_line_item_variant_id";')
|
||||
|
||||
// Order item table indexes
|
||||
this.addSql('drop index if exists "IDX_order_item_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_item_item_id";')
|
||||
this.addSql('drop index if exists "IDX_order_item_version";')
|
||||
|
||||
// Order shipping method table indexes
|
||||
this.addSql('drop index if exists "IDX_order_shipping_order_id";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_return_id";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_claim_id";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_shipping_method_id";')
|
||||
this.addSql('drop index if exists "IDX_order_shipping_version";')
|
||||
|
||||
// Return table indexes
|
||||
this.addSql('drop index if exists "IDX_return_display_id";')
|
||||
this.addSql('drop index if exists "IDX_return_order_id";')
|
||||
this.addSql('drop index if exists "IDX_return_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_return_claim_id";')
|
||||
|
||||
// Return item table indexes
|
||||
this.addSql('drop index if exists "IDX_return_item_return_id";')
|
||||
this.addSql('drop index if exists "IDX_return_item_item_id";')
|
||||
this.addSql('drop index if exists "IDX_return_item_reason_id";')
|
||||
|
||||
// Return reason table indexes
|
||||
this.addSql('drop index if exists "IDX_return_reason_value";')
|
||||
this.addSql(
|
||||
'drop index if exists "IDX_return_reason_parent_return_reason_id";'
|
||||
)
|
||||
|
||||
// Transaction table indexes
|
||||
this.addSql('drop index if exists "IDX_order_transaction_order_id";')
|
||||
this.addSql(
|
||||
'drop index if exists "IDX_order_transaction_order_id_version";'
|
||||
)
|
||||
this.addSql('drop index if exists "IDX_order_transaction_return_id";')
|
||||
this.addSql('drop index if exists "IDX_order_transaction_claim_id";')
|
||||
this.addSql('drop index if exists "IDX_order_transaction_exchange_id";')
|
||||
this.addSql('drop index if exists "IDX_order_transaction_reference_id";')
|
||||
this.addSql('drop index if exists "IDX_order_transaction_currency_code";')
|
||||
|
||||
// Recreate all indexes with correct WHERE clauses (IS NULL for active records)
|
||||
|
||||
// Order table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_display_id" on "order" ("display_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_region_id" on "order" ("region_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_customer_id" on "order" ("customer_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_sales_channel_id" on "order" ("sales_channel_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_currency_code" on "order" ("currency_code") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_address_id" on "order" ("shipping_address_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_billing_address_id" on "order" ("billing_address_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_is_draft_order" on "order" ("is_draft_order") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order change table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_order_id" on "order_change" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_return_id" on "order_change" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_claim_id" on "order_change" ("claim_id") where "claim_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_exchange_id" on "order_change" ("exchange_id") where "exchange_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_status" on "order_change" ("status") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_version" on "order_change" ("order_id", "version") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order change action table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_order_change_id" on "order_change_action" ("order_change_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_order_id" on "order_change_action" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_return_id" on "order_change_action" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_claim_id" on "order_change_action" ("claim_id") where "claim_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_exchange_id" on "order_change_action" ("exchange_id") where "exchange_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_change_action_ordering" on "order_change_action" ("ordering") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order summary table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_summary_order_id_version" on "order_summary" ("order_id", "version") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order claim table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_display_id" on "order_claim" ("display_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_order_id" on "order_claim" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_return_id" on "order_claim" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order claim item table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_item_claim_id" on "order_claim_item" ("claim_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_item_item_id" on "order_claim_item" ("item_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order claim item image table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_claim_item_image_claim_item_id" on "order_claim_item_image" ("claim_item_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order credit line table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_credit_line_order_id" on "order_credit_line" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order exchange table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_exchange_display_id" on "order_exchange" ("display_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_exchange_order_id" on "order_exchange" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_exchange_return_id" on "order_exchange" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order exchange item table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_exchange_item_exchange_id" on "order_exchange_item" ("exchange_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_exchange_item_item_id" on "order_exchange_item" ("item_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Line item table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_line_item_product_id" on "order_line_item" ("product_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_line_item_product_type_id" on "order_line_item" ("product_type_id") where "deleted_at" is null and "product_type_id" is not null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_line_item_variant_id" on "order_line_item" ("variant_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order item table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_item_order_id" on "order_item" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_item_item_id" on "order_item" ("item_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_item_version" on "order_item" ("order_id", "version") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Order shipping method table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_order_id" on "order_shipping" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_return_id" on "order_shipping" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_claim_id" on "order_shipping" ("claim_id") where "claim_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_exchange_id" on "order_shipping" ("exchange_id") where "exchange_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_shipping_method_id" on "order_shipping" ("shipping_method_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_shipping_version" on "order_shipping" ("order_id", "version") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Return table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_return_display_id" on "return" ("display_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_order_id" on "return" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_exchange_id" on "return" ("exchange_id") where "exchange_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_claim_id" on "return" ("claim_id") where "claim_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Return item table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_return_item_return_id" on "return_item" ("return_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_item_item_id" on "return_item" ("item_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_item_reason_id" on "return_item" ("reason_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Return reason table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_return_reason_value" on "return_reason" ("value") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_return_reason_parent_return_reason_id" on "return_reason" ("parent_return_reason_id") where "deleted_at" is null;'
|
||||
)
|
||||
|
||||
// Transaction table indexes
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_order_id" on "order_transaction" ("order_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_order_id_version" on "order_transaction" ("order_id", "version") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_return_id" on "order_transaction" ("return_id") where "return_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_claim_id" on "order_transaction" ("claim_id") where "claim_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_exchange_id" on "order_transaction" ("exchange_id") where "exchange_id" is not null and "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_reference_id" on "order_transaction" ("reference_id") where "deleted_at" is null;'
|
||||
)
|
||||
this.addSql(
|
||||
'create index "IDX_order_transaction_currency_code" on "order_transaction" ("currency_code") where "deleted_at" is null;'
|
||||
)
|
||||
}
|
||||
|
||||
override async down(): Promise<void> {
|
||||
// Drop all the corrected indexes (this is a simplified rollback - in practice you might want to be more specific)
|
||||
|
||||
const indexesToDrop = [
|
||||
"IDX_order_display_id",
|
||||
"IDX_order_region_id",
|
||||
"IDX_order_customer_id",
|
||||
"IDX_order_sales_channel_id",
|
||||
"IDX_order_currency_code",
|
||||
"IDX_order_shipping_address_id",
|
||||
"IDX_order_billing_address_id",
|
||||
"IDX_order_is_draft_order",
|
||||
"IDX_order_change_order_id",
|
||||
"IDX_order_change_return_id",
|
||||
"IDX_order_change_claim_id",
|
||||
"IDX_order_change_exchange_id",
|
||||
"IDX_order_change_status",
|
||||
"IDX_order_change_version",
|
||||
"IDX_order_change_action_order_change_id",
|
||||
"IDX_order_change_action_order_id",
|
||||
"IDX_order_change_action_return_id",
|
||||
"IDX_order_change_action_claim_id",
|
||||
"IDX_order_change_action_exchange_id",
|
||||
"IDX_order_change_action_ordering",
|
||||
"IDX_order_summary_order_id_version",
|
||||
"IDX_order_claim_display_id",
|
||||
"IDX_order_claim_order_id",
|
||||
"IDX_order_claim_return_id",
|
||||
"IDX_order_claim_item_claim_id",
|
||||
"IDX_order_claim_item_item_id",
|
||||
"IDX_order_claim_item_image_claim_item_id",
|
||||
"IDX_order_credit_line_order_id",
|
||||
"IDX_order_exchange_display_id",
|
||||
"IDX_order_exchange_order_id",
|
||||
"IDX_order_exchange_return_id",
|
||||
"IDX_order_exchange_item_exchange_id",
|
||||
"IDX_order_exchange_item_item_id",
|
||||
"IDX_order_line_item_product_id",
|
||||
"IDX_line_item_product_type_id",
|
||||
"IDX_order_line_item_variant_id",
|
||||
"IDX_order_item_order_id",
|
||||
"IDX_order_item_item_id",
|
||||
"IDX_order_item_version",
|
||||
"IDX_order_shipping_order_id",
|
||||
"IDX_order_shipping_return_id",
|
||||
"IDX_order_shipping_claim_id",
|
||||
"IDX_order_shipping_exchange_id",
|
||||
"IDX_order_shipping_shipping_method_id",
|
||||
"IDX_order_shipping_version",
|
||||
"IDX_return_display_id",
|
||||
"IDX_return_order_id",
|
||||
"IDX_return_exchange_id",
|
||||
"IDX_return_claim_id",
|
||||
"IDX_return_item_return_id",
|
||||
"IDX_return_item_item_id",
|
||||
"IDX_return_item_reason_id",
|
||||
"IDX_return_reason_value",
|
||||
"IDX_return_reason_parent_return_reason_id",
|
||||
"IDX_order_transaction_order_id",
|
||||
"IDX_order_transaction_order_id_version",
|
||||
"IDX_order_transaction_return_id",
|
||||
"IDX_order_transaction_claim_id",
|
||||
"IDX_order_transaction_exchange_id",
|
||||
"IDX_order_transaction_reference_id",
|
||||
"IDX_order_transaction_currency_code",
|
||||
]
|
||||
|
||||
for (const indexName of indexesToDrop) {
|
||||
this.addSql(`drop index if exists "${indexName}";`)
|
||||
}
|
||||
|
||||
// Note: For a complete rollback, you would recreate the original incorrect indexes here
|
||||
// This is omitted for brevity, but in practice you might want to restore the original state
|
||||
}
|
||||
}
|
||||
@@ -24,7 +24,7 @@ const _OrderClaimItemImage = model
|
||||
name: "IDX_order_claim_item_image_claim_item_id",
|
||||
on: ["claim_item_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -32,13 +32,13 @@ const _OrderClaimItem = model
|
||||
name: "IDX_order_claim_item_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_claim_item_item_id",
|
||||
on: ["item_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_claim_item_deleted_at",
|
||||
|
||||
@@ -59,7 +59,7 @@ const _OrderClaim = model
|
||||
name: "IDX_order_claim_display_id",
|
||||
on: ["display_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_claim_deleted_at",
|
||||
@@ -71,13 +71,13 @@ const _OrderClaim = model
|
||||
name: "IDX_order_claim_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_claim_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ const OrderCreditLine_ = model
|
||||
name: "IDX_order_credit_line_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_credit_line_deleted_at",
|
||||
|
||||
@@ -20,13 +20,13 @@ const _OrderExchangeItem = model
|
||||
name: "IDX_order_exchange_item_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_exchange_item_item_id",
|
||||
on: ["item_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_exchange_item_deleted_at",
|
||||
|
||||
@@ -53,7 +53,7 @@ const _OrderExchange = model
|
||||
name: "IDX_order_exchange_display_id",
|
||||
on: ["display_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_exchange_deleted_at",
|
||||
@@ -65,13 +65,13 @@ const _OrderExchange = model
|
||||
name: "IDX_order_exchange_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_exchange_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -56,19 +56,19 @@ const _OrderLineItem = model
|
||||
name: "IDX_order_line_item_product_id",
|
||||
on: ["product_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_line_item_product_type_id",
|
||||
on: ["product_type_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL AND product_type_id IS NOT NULL",
|
||||
where: "deleted_at IS NULL AND product_type_id IS NOT NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_line_item_variant_id",
|
||||
on: ["variant_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -29,31 +29,31 @@ const _OrderChangeAction = model
|
||||
name: "IDX_order_change_action_order_change_id",
|
||||
on: ["order_change_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_action_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_action_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_action_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_action_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_action_deleted_at",
|
||||
@@ -65,7 +65,7 @@ const _OrderChangeAction = model
|
||||
name: "IDX_order_change_action_ordering",
|
||||
on: ["ordering"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -42,31 +42,31 @@ const _OrderChange = model
|
||||
name: "IDX_order_change_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_status",
|
||||
on: ["status"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_change_deleted_at",
|
||||
@@ -78,7 +78,7 @@ const _OrderChange = model
|
||||
name: "IDX_order_change_version",
|
||||
on: ["order_id", "version"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -31,19 +31,19 @@ const _OrderItem = model
|
||||
name: "IDX_order_item_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_item_version",
|
||||
on: ["version"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_item_item_id",
|
||||
on: ["item_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_item_deleted_at",
|
||||
|
||||
@@ -40,37 +40,37 @@ const _OrderShipping = model
|
||||
name: "IDX_order_shipping_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_version",
|
||||
on: ["version"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_shipping_method_id",
|
||||
on: ["shipping_method_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_deleted_at",
|
||||
|
||||
@@ -21,7 +21,7 @@ const _OrderSummary = model
|
||||
name: "IDX_order_summary_order_id_version",
|
||||
on: ["order_id", "version"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_summary_deleted_at",
|
||||
|
||||
@@ -69,25 +69,25 @@ const _Order = model
|
||||
name: "IDX_order_display_id",
|
||||
on: ["display_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_region_id",
|
||||
on: ["region_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_customer_id",
|
||||
on: ["customer_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_sales_channel_id",
|
||||
on: ["sales_channel_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_deleted_at",
|
||||
@@ -99,25 +99,25 @@ const _Order = model
|
||||
name: "IDX_order_currency_code",
|
||||
on: ["currency_code"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_shipping_address_id",
|
||||
on: ["shipping_address_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_billing_address_id",
|
||||
on: ["billing_address_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_is_draft_order",
|
||||
on: ["is_draft_order"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -34,19 +34,19 @@ const _ReturnItem = model
|
||||
name: "IDX_return_item_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_item_reason_id",
|
||||
on: ["reason_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_item_item_id",
|
||||
on: ["item_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_item_deleted_at",
|
||||
|
||||
@@ -30,13 +30,13 @@ const _ReturnReason = model
|
||||
name: "IDX_return_reason_value",
|
||||
on: ["value"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_reason_parent_return_reason_id",
|
||||
on: ["parent_return_reason_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ const _Return = model
|
||||
name: "IDX_return_display_id",
|
||||
on: ["display_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_deleted_at",
|
||||
@@ -71,19 +71,19 @@ const _Return = model
|
||||
name: "IDX_return_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_return_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -40,37 +40,37 @@ const _OrderTransaction = model
|
||||
name: "IDX_order_transaction_reference_id",
|
||||
on: ["reference_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_order_id",
|
||||
on: ["order_id"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_return_id",
|
||||
on: ["return_id"],
|
||||
unique: false,
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "return_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_exchange_id",
|
||||
on: ["exchange_id"],
|
||||
unique: false,
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "exchange_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_claim_id",
|
||||
on: ["claim_id"],
|
||||
unique: false,
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NOT NULL",
|
||||
where: "claim_id IS NOT NULL AND deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_currency_code",
|
||||
on: ["currency_code"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
{
|
||||
name: "IDX_order_transaction_deleted_at",
|
||||
@@ -82,7 +82,7 @@ const _OrderTransaction = model
|
||||
name: "IDX_order_transaction_order_id_version",
|
||||
on: ["order_id", "version"],
|
||||
unique: false,
|
||||
where: "deleted_at IS NOT NULL",
|
||||
where: "deleted_at IS NULL",
|
||||
},
|
||||
])
|
||||
|
||||
|
||||
@@ -444,6 +444,16 @@ export default class OrderModuleService
|
||||
filters?: any,
|
||||
config?: FindConfig<any> | undefined,
|
||||
sharedContext?: Context
|
||||
): Promise<OrderTypes.OrderDTO[]> {
|
||||
const orders = await this.listOrders_(filters, config, sharedContext)
|
||||
|
||||
return this.baseRepository_.serialize<OrderTypes.OrderDTO[]>(orders)
|
||||
}
|
||||
|
||||
protected async listOrders_(
|
||||
filters?: any,
|
||||
config?: FindConfig<any> | undefined,
|
||||
@MedusaContext() sharedContext?: Context | undefined
|
||||
): Promise<OrderTypes.OrderDTO[]> {
|
||||
config ??= {}
|
||||
const includeTotals = this.shouldIncludeTotals(config)
|
||||
@@ -1035,7 +1045,7 @@ export default class OrderModuleService
|
||||
: [orderIdOrData]
|
||||
|
||||
const allOrderIds = data.map((dt) => dt.order_id)
|
||||
const order = await this.listOrders(
|
||||
const order = await this.listOrders_(
|
||||
{ id: allOrderIds },
|
||||
{ select: ["id", "version"] },
|
||||
sharedContext
|
||||
@@ -1212,7 +1222,7 @@ export default class OrderModuleService
|
||||
let toUpdate: UpdateOrderLineItemDTO[] = []
|
||||
const detailsToUpdate: UpdateOrderItemWithSelectorDTO[] = []
|
||||
for (const { selector, data } of updates) {
|
||||
const items = await this.listOrderLineItems(
|
||||
const items = await this.orderLineItemService_.list(
|
||||
{ ...selector },
|
||||
{},
|
||||
sharedContext
|
||||
@@ -1311,7 +1321,7 @@ export default class OrderModuleService
|
||||
): Promise<InferEntityType<typeof OrderItem>[]> {
|
||||
let toUpdate: UpdateOrderItemDTO[] = []
|
||||
for (const { selector, data } of updates) {
|
||||
const details = await this.listOrderItems(
|
||||
const details = await this.orderItemService_.list(
|
||||
{ ...selector },
|
||||
{},
|
||||
sharedContext
|
||||
@@ -1369,7 +1379,7 @@ export default class OrderModuleService
|
||||
: [orderIdOrData]
|
||||
|
||||
const allOrderIds = data.map((dt) => dt.order_id)
|
||||
const order = await this.listOrders(
|
||||
const order = await this.listOrders_(
|
||||
{ id: allOrderIds },
|
||||
{ select: ["id", "version"] },
|
||||
sharedContext
|
||||
@@ -2432,7 +2442,7 @@ export default class OrderModuleService
|
||||
const orderIds: string[] = []
|
||||
const dataMap: Record<string, object> = {}
|
||||
|
||||
const orderChanges = await this.listOrderChanges(
|
||||
const orderChanges = await this.orderChangeService_.list(
|
||||
{
|
||||
order_id: dataArr.map((data) => data.order_id),
|
||||
status: [OrderChangeStatus.PENDING, OrderChangeStatus.REQUESTED],
|
||||
@@ -2441,9 +2451,10 @@ export default class OrderModuleService
|
||||
sharedContext
|
||||
)
|
||||
|
||||
const orderChangesMap = new Map<string, OrderTypes.OrderChangeDTO>(
|
||||
orderChanges.map((item) => [item.order_id, item])
|
||||
)
|
||||
const orderChangesMap = new Map<
|
||||
string,
|
||||
InferEntityType<typeof OrderChange>
|
||||
>(orderChanges.map((item) => [item.order_id, item]))
|
||||
|
||||
for (const change of dataArr) {
|
||||
orderIds.push(change.order_id)
|
||||
@@ -3462,7 +3473,7 @@ export default class OrderModuleService
|
||||
}
|
||||
}
|
||||
|
||||
let orders = await this.listOrders(
|
||||
let orders = await this.listOrders_(
|
||||
{ id: deduplicate(ordersIds) },
|
||||
{
|
||||
select: ["id", "version", "items.detail", "summary", "total"],
|
||||
@@ -3744,7 +3755,7 @@ export default class OrderModuleService
|
||||
isRemoved: boolean,
|
||||
@MedusaContext() sharedContext: Context = {}
|
||||
) {
|
||||
const summaries: any = await super.listOrderSummaries(
|
||||
const summaries: any = await this.listOrderSummaries(
|
||||
{
|
||||
order_id: transactionData.map((trx) => trx.order_id),
|
||||
version: transactionData[0].version,
|
||||
@@ -3826,7 +3837,7 @@ export default class OrderModuleService
|
||||
@MedusaContext() sharedContext: Context = {}
|
||||
): Promise<OrderTypes.OrderDTO[]> {
|
||||
const orderIds = Array.isArray(orderId) ? orderId : [orderId]
|
||||
const orders = await this.listOrders(
|
||||
const orders = await this.listOrders_(
|
||||
{
|
||||
id: orderIds,
|
||||
},
|
||||
@@ -3899,7 +3910,7 @@ export default class OrderModuleService
|
||||
@MedusaContext() sharedContext: Context = {}
|
||||
): Promise<OrderTypes.OrderDTO[]> {
|
||||
const orderIds = Array.isArray(orderId) ? orderId : [orderId]
|
||||
const orders = await this.listOrders(
|
||||
const orders = await this.listOrders_(
|
||||
{
|
||||
id: orderIds,
|
||||
},
|
||||
@@ -3964,7 +3975,7 @@ export default class OrderModuleService
|
||||
@MedusaContext() sharedContext: Context = {}
|
||||
): Promise<OrderTypes.OrderDTO[]> {
|
||||
const orderIds = Array.isArray(orderId) ? orderId : [orderId]
|
||||
const orders = await this.listOrders(
|
||||
const orders = await this.listOrders_(
|
||||
{
|
||||
id: orderIds,
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user