Class: ProductVariantInventoryService
Hierarchy
TransactionBaseService
↳
ProductVariantInventoryService
Constructors
constructor
• new ProductVariantInventoryService(__namedParameters
)
Parameters
Name | Type |
---|---|
__namedParameters | InjectedDependencies |
Overrides
TransactionBaseService.constructor
Defined in
medusa/src/services/product-variant-inventory.ts:50
Properties
__configModule__
• Protected
Optional
Readonly
__configModule__: Record
<string
, unknown
>
Inherited from
TransactionBaseService.__configModule__
Defined in
medusa/src/interfaces/transaction-base-service.ts:14
__container__
• Protected
Readonly
__container__: any
Inherited from
TransactionBaseService.__container__
Defined in
medusa/src/interfaces/transaction-base-service.ts:13
__moduleDeclaration__
• Protected
Optional
Readonly
__moduleDeclaration__: Record
<string
, unknown
>
Inherited from
TransactionBaseService.__moduleDeclaration__
Defined in
medusa/src/interfaces/transaction-base-service.ts:15
cacheService_
• Protected
Readonly
cacheService_: ICacheService
Defined in
medusa/src/services/product-variant-inventory.ts:48
eventBusService_
• Protected
Readonly
eventBusService_: IEventBusService
Defined in
medusa/src/services/product-variant-inventory.ts:47
inventoryService_
• Protected
Readonly
inventoryService_: IInventoryService
Defined in
medusa/src/services/product-variant-inventory.ts:46
manager_
• Protected
manager_: EntityManager
Overrides
TransactionBaseService.manager_
Defined in
medusa/src/services/product-variant-inventory.ts:39
productVariantService_
• Protected
Readonly
productVariantService_: ProductVariantService
Defined in
medusa/src/services/product-variant-inventory.ts:44
salesChannelInventoryService_
• Protected
Readonly
salesChannelInventoryService_: SalesChannelInventoryService
Defined in
medusa/src/services/product-variant-inventory.ts:43
salesChannelLocationService_
• Protected
Readonly
salesChannelLocationService_: SalesChannelLocationService
Defined in
medusa/src/services/product-variant-inventory.ts:42
stockLocationService_
• Protected
Readonly
stockLocationService_: IStockLocationService
Defined in
medusa/src/services/product-variant-inventory.ts:45
transactionManager_
• Protected
transactionManager_: undefined
| EntityManager
Overrides
TransactionBaseService.transactionManager_
Defined in
medusa/src/services/product-variant-inventory.ts:40
Accessors
activeManager_
• Protected
get
activeManager_(): EntityManager
Returns
EntityManager
Inherited from
TransactionBaseService.activeManager_
Defined in
medusa/src/interfaces/transaction-base-service.ts:8
Methods
adjustInventory
▸ adjustInventory(variantId
, locationId
, quantity
): Promise
<void
>
Adjusts inventory of a variant on a location
Parameters
Name | Type | Description |
---|---|---|
variantId | string | variant id |
locationId | string | location id |
quantity | number | quantity to adjust |
Returns
Promise
<void
>
Defined in
medusa/src/services/product-variant-inventory.ts:735
adjustReservationsQuantityByLineItem
▸ adjustReservationsQuantityByLineItem(lineItemId
, variantId
, locationId
, quantity
): Promise
<void
>
Adjusts the quantity of reservations for a line item by a given amount.
Parameters
Name | Type | Description |
---|---|---|
lineItemId | string | The ID of the line item |
variantId | string | The ID of the variant |
locationId | string | The ID of the location to prefer adjusting quantities at |
quantity | number | The amount to adjust the quantity by |
Returns
Promise
<void
>
Defined in
medusa/src/services/product-variant-inventory.ts:525
atomicPhase_
▸ Protected
atomicPhase_<TResult
, 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.
Type parameters
Name |
---|
TResult |
TError |
Parameters
Name | Type | Description |
---|---|---|
work | (transactionManager : EntityManager ) => Promise <TResult > | the transactional work to be done |
isolationOrErrorHandler? | IsolationLevel | (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
>
the result of the transactional work
Inherited from
TransactionBaseService.atomicPhase_
Defined in
medusa/src/interfaces/transaction-base-service.ts:56
attachInventoryItem
▸ attachInventoryItem(attachments
): Promise
<ProductVariantInventoryItem
[]>
Attach a variant to an inventory item
Parameters
Name | Type |
---|---|
attachments | { inventoryItemId : string ; requiredQuantity? : number ; variantId : string }[] |
Returns
Promise
<ProductVariantInventoryItem
[]>
the variant inventory item
Defined in
medusa/src/services/product-variant-inventory.ts:257
▸ attachInventoryItem(variantId
, inventoryItemId
, requiredQuantity?
): Promise
<ProductVariantInventoryItem
[]>
Parameters
Name | Type |
---|---|
variantId | string |
inventoryItemId | string |
requiredQuantity? | number |
Returns
Promise
<ProductVariantInventoryItem
[]>
Defined in
medusa/src/services/product-variant-inventory.ts:264
confirmInventory
▸ confirmInventory(variantId
, quantity
, context?
): Promise
<Boolean
>
confirms if requested inventory is available
Parameters
Name | Type | Description |
---|---|---|
variantId | string | id of the variant to confirm inventory for |
quantity | number | quantity of inventory to confirm is available |
context | Object | optionally include a sales channel if applicable |
context.salesChannelId? | null | string | - |
Returns
Promise
<Boolean
>
boolean indicating if inventory is available
Defined in
medusa/src/services/product-variant-inventory.ts:76
deleteReservationsByLineItem
▸ deleteReservationsByLineItem(lineItemId
, variantId
, quantity
): Promise
<void
>
delete a reservation of variant quantity
Parameters
Name | Type | Description |
---|---|---|
lineItemId | string | string [] | line item id |
variantId | string | variant id |
quantity | number | quantity to release |
Returns
Promise
<void
>
Defined in
medusa/src/services/product-variant-inventory.ts:700
detachInventoryItem
▸ detachInventoryItem(inventoryItemId
, variantId?
): Promise
<void
>
Remove a variant from an inventory item
Parameters
Name | Type | Description |
---|---|---|
inventoryItemId | string | inventory item id |
variantId? | string | variant id or undefined if all the variants will be affected |
Returns
Promise
<void
>
Defined in
medusa/src/services/product-variant-inventory.ts:404
getAvailabilityContext
▸ Private
getAvailabilityContext(variants
, salesChannelId
, existingContext?
): Promise
<Required
<AvailabilityContext
>>
Parameters
Name | Type |
---|---|
variants | string [] |
salesChannelId | undefined | string | string [] |
existingContext | AvailabilityContext |
Returns
Promise
<Required
<AvailabilityContext
>>
Defined in
medusa/src/services/product-variant-inventory.ts:838
getVariantQuantityFromVariantInventoryItems
▸ getVariantQuantityFromVariantInventoryItems(variantInventoryItems
, channelId
): Promise
<number
>
Get the quantity of a variant from a list of variantInventoryItems The inventory quantity of the variant should be equal to the inventory item with the smallest stock, adjusted for quantity required to fulfill the given variant.
Parameters
Name | Type | Description |
---|---|---|
variantInventoryItems | ProductVariantInventoryItem [] | List of inventoryItems for a given variant, These must all be for the same variant |
channelId | string | Sales channel id to fetch availability for |
Returns
Promise
<number
>
The available quantity of the variant from the inventoryItems
Defined in
medusa/src/services/product-variant-inventory.ts:949
listByItem
▸ listByItem(itemIds
): Promise
<ProductVariantInventoryItem
[]>
list registered inventory items
Parameters
Name | Type | Description |
---|---|---|
itemIds | string [] | list inventory item ids |
Returns
Promise
<ProductVariantInventoryItem
[]>
list of inventory items
Defined in
medusa/src/services/product-variant-inventory.ts:179
listByVariant
▸ listByVariant(variantId
): Promise
<ProductVariantInventoryItem
[]>
List inventory items for a specific variant
Parameters
Name | Type | Description |
---|---|---|
variantId | string | string [] | variant id |
Returns
Promise
<ProductVariantInventoryItem
[]>
variant inventory items for the variant id
Defined in
medusa/src/services/product-variant-inventory.ts:196
listInventoryItemsByVariant
▸ listInventoryItemsByVariant(variantId
): Promise
<InventoryItemDTO
[]>
lists inventory items for a given variant
Parameters
Name | Type | Description |
---|---|---|
variantId | string | variant id |
Returns
Promise
<InventoryItemDTO
[]>
lidt of inventory items for the variant
Defined in
medusa/src/services/product-variant-inventory.ts:235
listVariantsByItem
▸ listVariantsByItem(itemId
): Promise
<ProductVariant
[]>
lists variant by inventory item id
Parameters
Name | Type | Description |
---|---|---|
itemId | string | item id |
Returns
Promise
<ProductVariant
[]>
a list of product variants that are associated with the item id
Defined in
medusa/src/services/product-variant-inventory.ts:217
reserveQuantity
▸ reserveQuantity(variantId
, quantity
, context?
): Promise
<void
| ReservationItemDTO
[]>
Reserves a quantity of a variant
Parameters
Name | Type | Description |
---|---|---|
variantId | string | variant id |
quantity | number | quantity to reserve |
context | ReserveQuantityContext | optional parameters |
Returns
Promise
<void
| ReservationItemDTO
[]>
Defined in
medusa/src/services/product-variant-inventory.ts:434
retrieve
▸ retrieve(inventoryItemId
, variantId
): Promise
<ProductVariantInventoryItem
>
Retrieves a product variant inventory item by its inventory item ID and variant ID.
Parameters
Name | Type | Description |
---|---|---|
inventoryItemId | string | The ID of the inventory item to retrieve. |
variantId | string | The ID of the variant to retrieve. |
Returns
Promise
<ProductVariantInventoryItem
>
A promise that resolves with the product variant inventory item.
Defined in
medusa/src/services/product-variant-inventory.ts:152
setProductAvailability
▸ setProductAvailability(products
, salesChannelId
): Promise
<(Product
| PricedProduct
)[]>
Parameters
Name | Type |
---|---|
products | (Product | PricedProduct )[] |
salesChannelId | undefined | string | string [] |
Returns
Promise
<(Product
| PricedProduct
)[]>
Defined in
medusa/src/services/product-variant-inventory.ts:905
setVariantAvailability
▸ setVariantAvailability(variants
, salesChannelId
, availabilityContext?
): Promise
<ProductVariant
[] | PricedVariant
[]>
Parameters
Name | Type |
---|---|
variants | ProductVariant [] | PricedVariant [] |
salesChannelId | undefined | string | string [] |
availabilityContext | AvailabilityContext |
Returns
Promise
<ProductVariant
[] | PricedVariant
[]>
Defined in
medusa/src/services/product-variant-inventory.ts:779
shouldRetryTransaction_
▸ Protected
shouldRetryTransaction_(err
): boolean
Parameters
Name | Type |
---|---|
err | Record <string , unknown > | { code : string } |
Returns
boolean
Inherited from
TransactionBaseService.shouldRetryTransaction_
Defined in
medusa/src/interfaces/transaction-base-service.ts:37
validateInventoryAtLocation
▸ validateInventoryAtLocation(items
, locationId
): Promise
<void
>
Validate stock at a location for fulfillment items
Parameters
Name | Type | Description |
---|---|---|
items | Omit <LineItem , "beforeInsert" >[] | Fulfillment Line items to validate quantities for |
locationId | string | Location to validate stock at |
Returns
Promise
<void
>
nothing if successful, throws error if not
Defined in
medusa/src/services/product-variant-inventory.ts:635
withTransaction
▸ withTransaction(transactionManager?
): ProductVariantInventoryService
Parameters
Name | Type |
---|---|
transactionManager? | EntityManager |
Returns
ProductVariantInventoryService
Inherited from
TransactionBaseService.withTransaction