Feat(admin-next, core-flows, link-modules, medusa, types): Inventory end to end flows (#7020)
* add reservation endpoints * add changeset * initial * add reservations table * add edit-item modal * udpate inventory item attributes * manage locations skeleton * add combi batch endpoint * cleanup * fix manage locations * add adjust inventory * prep for pr * update versions * fix for pr * fix for pr * cleanup * Update packages/core-flows/src/inventory/workflows/bulk-create-delete-levels.ts Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com> * Update packages/core-flows/src/inventory/steps/delete-levels-by-item-and-location.ts Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com> * rm wack import * fix build --------- Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
This commit is contained in:
co-authored by
Carlos R. L. Rodrigues
parent
276278cbe7
commit
ab7ff64c4a
@@ -6,6 +6,7 @@ import { collections } from "./collections"
|
||||
import { currencies } from "./currencies"
|
||||
import { customerGroups } from "./customer-groups"
|
||||
import { customers } from "./customers"
|
||||
import { inventoryItems } from "./inventory"
|
||||
import { invites } from "./invites"
|
||||
import { payments } from "./payments"
|
||||
import { priceLists } from "./price-lists"
|
||||
@@ -39,6 +40,7 @@ export const client = {
|
||||
regions: regions,
|
||||
taxes: taxes,
|
||||
invites: invites,
|
||||
inventoryItems: inventoryItems,
|
||||
products: products,
|
||||
productTypes: productTypes,
|
||||
priceLists: priceLists,
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
import {
|
||||
AdminInventoryItemListResponse,
|
||||
AdminInventoryItemResponse,
|
||||
AdminInventoryLevelListResponse,
|
||||
AdminInventoryLevelResponse,
|
||||
} from "@medusajs/types"
|
||||
import {
|
||||
CreateInventoryItemReq,
|
||||
InventoryItemLocationBatch,
|
||||
UpdateInventoryItemReq,
|
||||
UpdateInventoryLevelReq,
|
||||
} from "../../types/api-payloads"
|
||||
import {
|
||||
InventoryItemLevelDeleteRes,
|
||||
ReservationItemDeleteRes,
|
||||
ReservationItemListRes,
|
||||
ReservationItemRes,
|
||||
} from "../../types/api-responses"
|
||||
import { deleteRequest, getRequest, postRequest } from "./common"
|
||||
|
||||
async function retrieveInventoryItem(id: string, query?: Record<string, any>) {
|
||||
return getRequest<AdminInventoryItemResponse>(
|
||||
`/admin/inventory-items/${id}`,
|
||||
query
|
||||
)
|
||||
}
|
||||
|
||||
async function listInventoryItems(query?: Record<string, any>) {
|
||||
return getRequest<AdminInventoryItemListResponse>(
|
||||
`/admin/inventory-items`,
|
||||
query
|
||||
)
|
||||
}
|
||||
|
||||
async function createInventoryItem(payload: CreateInventoryItemReq) {
|
||||
return postRequest<AdminInventoryItemResponse>(
|
||||
`/admin/inventory-items`,
|
||||
payload
|
||||
)
|
||||
}
|
||||
|
||||
async function updateInventoryItem(
|
||||
id: string,
|
||||
payload: UpdateInventoryItemReq
|
||||
) {
|
||||
return postRequest<AdminInventoryItemResponse>(
|
||||
`/admin/inventory-items/${id}`,
|
||||
payload
|
||||
)
|
||||
}
|
||||
|
||||
async function deleteInventoryItem(id: string) {
|
||||
return deleteRequest<AdminInventoryItemResponse>(
|
||||
`/admin/inventory-items/${id}`
|
||||
)
|
||||
}
|
||||
|
||||
async function listInventoryItemLevels(
|
||||
id: string,
|
||||
query?: Record<string, any>
|
||||
) {
|
||||
return getRequest<AdminInventoryLevelListResponse>(
|
||||
`/admin/inventory-items/${id}/location-levels`,
|
||||
query
|
||||
)
|
||||
}
|
||||
|
||||
async function deleteInventoryItemLevel(
|
||||
inventoryItemId: string,
|
||||
locationId: string
|
||||
) {
|
||||
return deleteRequest<InventoryItemLevelDeleteRes>(
|
||||
`/admin/inventory-items/${inventoryItemId}/location-levels/${locationId}`
|
||||
)
|
||||
}
|
||||
|
||||
async function updateInventoryLevel(
|
||||
inventoryItemId: string,
|
||||
locationId: string,
|
||||
payload: UpdateInventoryLevelReq
|
||||
) {
|
||||
return postRequest<AdminInventoryLevelResponse>(
|
||||
`/admin/inventory-items/${inventoryItemId}/location-levels/${locationId}`,
|
||||
payload
|
||||
)
|
||||
}
|
||||
|
||||
async function listReservationItems(query?: Record<string, any>) {
|
||||
return getRequest<ReservationItemListRes>(`/admin/reservations`, query)
|
||||
}
|
||||
|
||||
async function deleteReservationItem(reservationId: string) {
|
||||
return deleteRequest<ReservationItemDeleteRes>(
|
||||
`/admin/reservations/${reservationId}`
|
||||
)
|
||||
}
|
||||
|
||||
async function updateReservationItem(
|
||||
reservationId: string,
|
||||
payload: UpdateInventoryItemReq
|
||||
) {
|
||||
return postRequest<ReservationItemRes>(
|
||||
`/admin/reservatinos/${reservationId}`,
|
||||
payload
|
||||
)
|
||||
}
|
||||
|
||||
async function batchPostLocationLevels(
|
||||
inventoryItemId: string,
|
||||
payload: InventoryItemLocationBatch
|
||||
) {
|
||||
return postRequest<AdminInventoryLevelResponse>(
|
||||
`/admin/inventory-items/${inventoryItemId}/location-levels/batch/combi`,
|
||||
payload
|
||||
)
|
||||
}
|
||||
|
||||
export const inventoryItems = {
|
||||
retrieve: retrieveInventoryItem,
|
||||
list: listInventoryItems,
|
||||
create: createInventoryItem,
|
||||
update: updateInventoryItem,
|
||||
delete: deleteInventoryItem,
|
||||
listLocationLevels: listInventoryItemLevels,
|
||||
updateInventoryLevel,
|
||||
deleteInventoryItemLevel,
|
||||
listReservationItems,
|
||||
deleteReservationItem,
|
||||
updateReservationItem,
|
||||
batchPostLocationLevels,
|
||||
}
|
||||
Reference in New Issue
Block a user