DiscountService
Provides layer to manipulate discounts.
Implements
Properties
__configModule__Record<string, unknown>__container__anyRequired__moduleDeclaration__Record<string, unknown>discountConditionRepository_Repository<DiscountCondition> & { addConditionResources: Method addConditionResources ; canApplyForCustomer: Method canApplyForCustomer ; findOneWithDiscount: Method findOneWithDiscount ; getJoinTableResourceIdentifiers: Method getJoinTableResourceIdentifiers ; isValidForProduct: Method isValidForProduct ; queryConditionTable: Method queryConditionTable ; removeConditionResources: Method removeConditionResources }RequiredgiftCardRepository_Repository<GiftCard> & { listGiftCardsAndCount: Method listGiftCardsAndCount }Requiredmanager_EntityManagerRequiredtransactionManager_undefined | EntityManagerRequiredAccessors
activeManager_
Inherited from
TransactionBaseService.activeManager_
Methods
addRegion
Adds a region to the discount regions array.
Parameters
discountIdstringRequiredregionIdstringRequiredReturns
atomicPhase_
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.
Parameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
PromisePromise<TResult>RequiredcalculateDiscountForLineItem
Parameters
discountIdstringRequiredReturns
PromisePromise<number>RequiredcanApplyForCustomer
Parameters
discountRuleIdstringRequiredcustomerIdundefined | stringRequiredReturns
PromisePromise<boolean>Requiredcreate
Creates a discount with provided data given that the data is validated. Normalizes discount code to uppercase.
Parameters
Returns
createDynamicCode
Creates a dynamic code for a discount id.
Parameters
discountIdstringRequiredReturns
delete
Deletes a discount idempotently
Parameters
discountIdstringRequiredReturns
PromisePromise<void>RequireddeleteDynamicCode
Deletes a dynamic code for a discount id.
Parameters
discountIdstringRequiredcodestringRequiredReturns
PromisePromise<void>RequiredhasCustomersGroupCondition
Parameters
Returns
booleanbooleanhasExpired
Parameters
Returns
booleanbooleanhasNotStarted
Parameters
Returns
booleanbooleanhasReachedLimit
Parameters
Returns
booleanbooleanisDisabled
Parameters
Returns
booleanbooleanisValidForRegion
Parameters
region_idstringRequiredReturns
PromisePromise<boolean>Requiredlist
Parameters
selectorFilterableDiscountPropsconfigFindConfig<Discount>Returns
listAndCount
Parameters
selectorFilterableDiscountPropsconfigFindConfig<Discount>Returns
listByCodes
List all the discounts corresponding to the given codes
Parameters
discountCodesstring[]RequiredconfigFindConfig<Discount>Returns
removeRegion
Removes a region from the discount regions array.
Parameters
discountIdstringRequiredregionIdstringRequiredReturns
retrieve
Gets a discount by id.
Parameters
discountIdstringRequiredconfigFindConfig<Discount>Returns
retrieveByCode
Gets the discount by discount code.
Parameters
discountCodestringRequiredconfigFindConfig<Discount>Returns
shouldRetryTransaction_
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
booleanbooleanupdate
Updates a discount.
Parameters
discountIdstringRequiredReturns
validateDiscountForCartOrThrow
Parameters
Returns
PromisePromise<void>RequiredvalidateDiscountForProduct
Parameters
discountRuleIdstringRequiredproductIdstringReturns
PromisePromise<boolean>RequiredvalidateDiscountRule_
Creates a discount rule with provided data given that the data is validated.
Parameters
discountRuleTRequiredReturns
TTRequiredwithTransaction
Parameters
transactionManagerEntityManager