OrderMergeStrategy

OrderMergeStrategy

OrderMergeStrategy

An OrderMergeStrategy defines what happens when a Customer with an existing Order signs in with a guest Order, where both Orders may contain differing OrderLines.

Somehow these differing OrderLines need to be reconciled into a single collection of OrderLines. The OrderMergeStrategy defines the rules governing this reconciliation.

Signature

interface OrderMergeStrategy extends InjectableStrategy {
  merge(ctx: RequestContext, guestOrder: Order, existingOrder: Order): MergedOrderLine[];
}

Extends

Members

merge

method
type:
(ctx: RequestContext, guestOrder: Order, existingOrder: Order) => MergedOrderLine[]
Merges the lines of the guest Order with those of the existing Order which is associated with the active customer.

MergedOrderLine

The result of the OrderMergeStrategy merge method.

Signature

interface MergedOrderLine {
  orderLineId: ID;
  quantity: number;
  customFields?: any;
}

Members

orderLineId

property
type:
ID

quantity

property
type:
number

customFields

property
type:
any