Fix(medusa): Missing location id on fulfillments (#3462)
**What** - include location id when creating a fulfillment - Allow location updates to reservations without passing along quantity **Why** - location_id on fulfillment was null after creation Fixes CORE-1242, CORE-1243
This commit is contained in:
@@ -170,6 +170,10 @@ const CreateFulfillmentModal: React.FC<CreateFulfillmentModalProps> = ({
|
||||
no_notification: noNotis,
|
||||
} as AdminPostOrdersOrderFulfillmentsReq
|
||||
|
||||
if (isLocationFulfillmentEnabled) {
|
||||
requestObj.location_id = locationSelectValue.value
|
||||
}
|
||||
|
||||
requestObj.items = Object.entries(quantities)
|
||||
.filter(([, value]) => !!value)
|
||||
.map(([key, value]) => ({
|
||||
|
||||
@@ -166,7 +166,6 @@ export default class ReservationItemService extends TransactionBaseService {
|
||||
|
||||
const shouldUpdateLocation =
|
||||
isDefined(data.location_id) &&
|
||||
isDefined(data.quantity) &&
|
||||
data.location_id !== item.location_id
|
||||
|
||||
const ops: Promise<unknown>[] = []
|
||||
@@ -185,7 +184,7 @@ export default class ReservationItemService extends TransactionBaseService {
|
||||
.adjustReservedQuantity(
|
||||
item.inventory_item_id,
|
||||
data.location_id!,
|
||||
data.quantity!
|
||||
data.quantity || item.quantity!
|
||||
)
|
||||
)
|
||||
} else if (shouldUpdateQuantity) {
|
||||
|
||||
@@ -121,6 +121,7 @@ export default async (req, res) => {
|
||||
await orderServiceTx.createFulfillment(id, validatedBody.items, {
|
||||
metadata: validatedBody.metadata,
|
||||
no_notification: validatedBody.no_notification,
|
||||
location_id: validatedBody.location_id,
|
||||
})
|
||||
|
||||
if (validatedBody.location_id) {
|
||||
|
||||
Reference in New Issue
Block a user