Skip to main content
Skip to main content

LineItemAdjustmentService

Provides layer to manipulate line item adjustments.

Constructors

constructor

**new LineItemAdjustmentService**(«destructured»)

Parameters

__namedParametersLineItemAdjustmentServicePropsRequired

Properties

__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
discountServiceDiscountServiceRequired
lineItemAdjustmentRepo_Repository<LineItemAdjustment>Required
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired

Accessors

activeManager_

Protected get**activeManager_**(): EntityManager

Returns

EntityManager

EntityManagerEntityManagerRequired

Methods

atomicPhase_

Protected **atomicPhase_**<TypeParameter TResult, TypeParameter TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise&#60;TResult&#62;

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

TResultobjectRequired
TErrorobjectRequired

Parameters

work(transactionManager: EntityManager) => Promise<TResult>Required
the transactional work to be done
isolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>
the isolation level to be used for the work.
maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>
Potential error handler

Returns

Promise<TResult>

PromisePromise<TResult>Required
the result of the transactional work

create

**create**(data): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)&#62;

Creates a line item adjustment

Parameters

the line item adjustment to create

Returns

Promise<LineItemAdjustment>

PromisePromise<LineItemAdjustment>Required
line item adjustment

createAdjustmentForLineItem

**createAdjustmentForLineItem**(cart, lineItem): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)[]&#62;

Creates adjustment for a line item

Parameters

cartCartRequired
the cart object holding discounts
lineItemLineItemRequired
the line item for which a line item adjustment might be created

Returns

Promise<LineItemAdjustment[]>

PromisePromise<LineItemAdjustment[]>Required
a line item adjustment or undefined if no adjustment was created

createAdjustments

**createAdjustments**(cart, lineItem?): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)[] \| [LineItemAdjustment](/references/services/classes/LineItemAdjustment)[][]&#62;

Creates adjustment for a line item

Parameters

cartCartRequired
the cart object holding discounts
lineItemLineItem
the line item for which a line item adjustment might be created

Returns

Promise<LineItemAdjustment[] | LineItemAdjustment[][]>

PromisePromise<LineItemAdjustment[] | LineItemAdjustment[][]>Required
if a lineItem was given, returns a line item adjustment or undefined if no adjustment was created otherwise returns an array of line item adjustments for each line item in the cart

delete

**delete**(selectorOrIds): Promise&#60;void&#62;

Deletes line item adjustments matching a selector

Parameters

selectorOrIdsstring | string[] | FilterableLineItemAdjustmentProps & &#123; discount_id?: FindOperator&#60;null \| string&#62; &#125;Required
the query object for find or the line item adjustment id

Returns

Promise<void>

PromisePromise<void>Required
the result of the delete operation

generateAdjustments

**generateAdjustments**(calculationContextData, generatedLineItem, context): Promise&#60;[GeneratedAdjustment](/references/services/types/GeneratedAdjustment)[]&#62;

Creates adjustment for a line item

Parameters

calculationContextDataCalculationContextDataRequired
the calculationContextData object holding discounts
generatedLineItemLineItemRequired
the line item for which a line item adjustment might be created
contextAdjustmentContextRequired
the line item for which a line item adjustment might be created

Returns

Promise<GeneratedAdjustment[]>

PromisePromise<GeneratedAdjustment[]>Required
a line item adjustment or undefined if no adjustment was created

list

**list**(selector?, config?): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)[]&#62;

Lists line item adjustments

Parameters

the query object for find

Default: {}

the config to be used for find

Returns

Promise<LineItemAdjustment[]>

PromisePromise<LineItemAdjustment[]>Required
the result of the find operation

retrieve

**retrieve**(lineItemAdjustmentId, config?): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)&#62;

Retrieves a line item adjustment by id.

Parameters

lineItemAdjustmentIdstringRequired
the id of the line item adjustment to retrieve
the config to retrieve the line item adjustment by

Default: {}

Returns

Promise<LineItemAdjustment>

PromisePromise<LineItemAdjustment>Required
the line item adjustment.

shouldRetryTransaction_

Protected **shouldRetryTransaction_**(err): boolean

Parameters

errRecord<string, unknown> | &#123; code: string &#125;Required

Returns

boolean

booleanboolean

update

**update**(id, data): Promise&#60;[LineItemAdjustment](/references/services/classes/LineItemAdjustment)&#62;

Creates a line item adjustment

Parameters

idstringRequired
the line item adjustment id to update
the line item adjustment to create

Returns

Promise<LineItemAdjustment>

PromisePromise<LineItemAdjustment>Required
line item adjustment

withTransaction

**withTransaction**(transactionManager?): [LineItemAdjustmentService](/references/services/classes/LineItemAdjustmentService)

Parameters

transactionManagerEntityManager

Returns

LineItemAdjustmentService

LineItemAdjustmentServiceLineItemAdjustmentServiceRequired
Was this section helpful?