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:
Adrien de Peretti
2025-09-11 09:02:38 +02:00
committed by GitHub
parent 368c1d1e17
commit 823a5c75ff
23 changed files with 680 additions and 463 deletions

View File

@@ -0,0 +1,6 @@
---
"@medusajs/order": patch
"@medusajs/utils": patch
---
Fix/order module index

View File

@@ -130,10 +130,7 @@ export function decorateCartTotals(
itemsOriginalTaxTotal,
itemOriginalTaxTotal
)
itemsDiscountTotal = MathBN.add(
itemsDiscountTotal,
itemDiscountTotal
)
itemsDiscountTotal = MathBN.add(itemsDiscountTotal, itemDiscountTotal)
for (const key of Object.values(optionalFields)) {
if (key in itemTotals) {

View File

@@ -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 () {

View 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
}
}

View File

@@ -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",
},
])

View File

@@ -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",

View File

@@ -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",
},
])

View File

@@ -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",

View File

@@ -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",

View File

@@ -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",
},
])

View File

@@ -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",
},
])

View File

@@ -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",
},
])

View File

@@ -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",
},
])

View File

@@ -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",

View File

@@ -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",

View File

@@ -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",

View File

@@ -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",
},
])

View File

@@ -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",

View File

@@ -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",
},
])

View File

@@ -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",
},
])

View File

@@ -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",
},
])

View File

@@ -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,
},