feat(dashboard,core-flows,medusa): update fulfillment flows (#7589)

* fix: fulfillment ops

* fix: cancel fulfillment route

* fix: adjustInventoryLevelsStep throwing

* feat: cancel order and fix endpoint

* fix: type

* feat: order domain sdk

* feat: delete unused file

* fix: import
This commit is contained in:
Frane Polić
2024-06-06 08:58:21 +02:00
committed by GitHub
parent da3837f2bc
commit d285e60961
26 changed files with 296 additions and 183 deletions
+3
View File
@@ -5,6 +5,7 @@ import { Product } from "./product"
import { ProductCollection } from "./product-collection"
import { Region } from "./region"
import { Upload } from "./upload"
import { Order } from "./order"
export class Admin {
public invite: Invite
@@ -13,6 +14,7 @@ export class Admin {
public product: Product
public upload: Upload
public region: Region
public order: Order
constructor(client: Client) {
this.invite = new Invite(client)
@@ -21,5 +23,6 @@ export class Admin {
this.product = new Product(client)
this.upload = new Upload(client)
this.region = new Region(client)
this.order = new Order(client)
}
}
+81
View File
@@ -0,0 +1,81 @@
import {
AdminCancelOrderFulfillment,
FindParams,
HttpTypes,
PaginatedResponse,
SelectParams,
} from "@medusajs/types"
import { Client } from "../client"
import { ClientHeaders } from "../types"
export class Order {
private client: Client
constructor(client: Client) {
this.client = client
}
async retrieve(id: string, query?: SelectParams, headers?: ClientHeaders) {
return await this.client.fetch<{ order: HttpTypes.AdminOrder }>(
`/admin/orders/${id}`,
{
query,
headers,
}
)
}
async list(
queryParams?: FindParams & HttpTypes.AdminOrderFilters,
headers?: ClientHeaders
) {
return await this.client.fetch<
PaginatedResponse<{ orders: HttpTypes.AdminOrder[] }>
>(`/admin/orders`, {
query: queryParams,
headers,
})
}
async cancel(id: string, headers?: ClientHeaders) {
return await this.client.fetch<{ order: HttpTypes.AdminOrder }>(
`/admin/orders/${id}/cancel`,
{
method: "POST",
headers,
}
)
}
async createFulfillment(
id: string,
body: HttpTypes.AdminCreateOrderFulfillment,
query?: SelectParams,
headers?: ClientHeaders
) {
return await this.client.fetch<{ order: HttpTypes.AdminOrder }>(
`/admin/orders/${id}/fulfillments`,
{
method: "POST",
headers,
body,
query,
}
)
}
async cancelFulfillment(
id: string,
fulfillmentId: string,
body: HttpTypes.AdminCancelOrderFulfillment,
headers?: ClientHeaders
) {
return await this.client.fetch<{ order: HttpTypes.AdminOrder }>(
`/admin/orders/${id}/fulfillments/${fulfillmentId}/cancel`,
{
method: "POST",
headers,
body,
}
)
}
}