GiftCardService
Provides layer to manipulate gift cards.
Constructors
constructor
**new GiftCardService**(«destructured»)
Parameters
Properties
__configModule__Record<string, unknown>__container__anyRequired__moduleDeclaration__Record<string, unknown>giftCardRepository_Repository<GiftCard> & { listGiftCardsAndCount: Method listGiftCardsAndCount }Requiredmanager_EntityManagerRequiredtransactionManager_undefined | EntityManagerRequiredEventsobjectRequiredEvents.CREATEDstringRequiredDefault: "gift_card.created"
Accessors
activeManager_
Protected get**activeManager_**(): EntityManager
Returns
EntityManager
EntityManagerEntityManagerRequiredMethods
atomicPhase_
Protected **atomicPhase_**<TypeParameter TResult, TypeParameter TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>
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.
TResultobjectRequiredTErrorobjectRequiredParameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
Promise<TResult>
PromisePromise<TResult>Requiredcreate
**create**(giftCard): Promise<[GiftCard](/references/services/classes/GiftCard)>
Creates a gift card with provided data given that the data is validated.
Parameters
Returns
Promise<GiftCard>
createTransaction
**createTransaction**(data): Promise<string>
Parameters
Returns
Promise<string>
PromisePromise<string>Requireddelete
**delete**(giftCardId): Promise<void \| [GiftCard](/references/services/classes/GiftCard)>
Deletes a gift card idempotently
Parameters
giftCardIdstringRequiredReturns
Promise<void | GiftCard>
list
**list**(selector?, config?): Promise<[GiftCard](/references/services/classes/GiftCard)[]>
Parameters
Default: {}
Returns
Promise<GiftCard[]>
listAndCount
**listAndCount**(selector?, config?): Promise<[[GiftCard](/references/services/classes/GiftCard)[], number]>
Parameters
Default: {}
Returns
Promise<[GiftCard[], number]>
retrieve
**retrieve**(giftCardId, config?): Promise<[GiftCard](/references/services/classes/GiftCard)>
Gets a gift card by id.
Parameters
giftCardIdstringRequiredDefault: {}
Returns
Promise<GiftCard>
retrieveByCode
**retrieveByCode**(code, config?): Promise<[GiftCard](/references/services/classes/GiftCard)>
Parameters
codestringRequiredDefault: {}
Returns
Promise<GiftCard>
retrieve_
Protected **retrieve_**(selector, config?): Promise<[GiftCard](/references/services/classes/GiftCard)>
Parameters
Default: {}
Returns
Promise<GiftCard>
shouldRetryTransaction_
Protected **shouldRetryTransaction_**(err): boolean
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
boolean
booleanbooleanupdate
**update**(giftCardId, update): Promise<[GiftCard](/references/services/classes/GiftCard)>
Updates a giftCard.
Parameters
giftCardIdstringRequiredReturns
Promise<GiftCard>
withTransaction
**withTransaction**(transactionManager?): [GiftCardService](/references/services/classes/GiftCardService)
Parameters
transactionManagerEntityManagerReturns
generateCode
Static **generateCode**(): string
Generates a 16 character gift card code
Returns
string
stringstringresolveTaxRate
Static Protected **resolveTaxRate**(giftCardTaxRate, region): null \| number
The tax_rate of the giftcard can depend on whether regions tax gift cards, an input provided by the user or the tax rate. Based on these conditions, tax_rate changes.
Parameters
giftCardTaxRatenull | numberRequiredReturns
null | number
`null` \| numbernull | number