feat: Add requested_at + open status to return (#8391)

* feat: Add requested_at + open status to return

* Update return in confirm claim workflow

* Revert snapshot

* feat: Change OrderChangeType

* fix test
This commit is contained in:
Oli Juhl
2024-08-01 16:20:45 +02:00
committed by GitHub
parent f81652bf6e
commit dbd0b18726
17 changed files with 89 additions and 34 deletions
@@ -5,7 +5,12 @@ import {
OrderClaimDTO,
OrderDTO,
} from "@medusajs/types"
import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils"
import {
ChangeActionType,
Modules,
OrderChangeStatus,
ReturnStatus,
} from "@medusajs/utils"
import {
WorkflowResponse,
createStep,
@@ -17,7 +22,7 @@ import {
import { createRemoteLinkStep, useRemoteQueryStep } from "../../../common"
import { createFulfillmentWorkflow } from "../../../fulfillment/workflows/create-fulfillment"
import { createReturnFulfillmentWorkflow } from "../../../fulfillment/workflows/create-return-fulfillment"
import { previewOrderChangeStep } from "../../steps"
import { previewOrderChangeStep, updateReturnsStep } from "../../steps"
import { createOrderClaimItemsFromActionsStep } from "../../steps/claim/create-claim-items-from-actions"
import { confirmOrderChanges } from "../../steps/confirm-order-changes"
import { createReturnItemsFromActionsStep } from "../../steps/return/create-return-items-from-actions"
@@ -239,6 +244,14 @@ export const confirmClaimRequestWorkflow = createWorkflow(
}
)
updateReturnsStep([
{
id: returnId,
status: ReturnStatus.REQUESTED,
requested_at: new Date(),
},
])
const claimId = transform({ createClaimItems }, ({ createClaimItems }) => {
return createClaimItems?.[0]?.claim_id
})
@@ -60,7 +60,7 @@ export const beginReceiveReturnWorkflow = createWorkflow(
{ orderReturn, order, input },
({ orderReturn, order, input }) => {
return {
change_type: "return" as const,
change_type: "return_receive" as const,
order_id: order.id,
return_id: orderReturn.id,
created_by: input.created_by,
@@ -45,7 +45,7 @@ export const beginReturnOrderWorkflow = createWorkflow(
{ created, input },
({ created, input }) => {
return {
change_type: "return" as const,
change_type: "return_request" as const,
order_id: input.order_id,
return_id: created[0].id,
created_by: input.created_by,
@@ -4,17 +4,23 @@ import {
OrderDTO,
ReturnDTO,
} from "@medusajs/types"
import { ChangeActionType, Modules, OrderChangeStatus } from "@medusajs/utils"
import {
ChangeActionType,
Modules,
OrderChangeStatus,
ReturnStatus,
} from "@medusajs/utils"
import {
WorkflowResponse,
createStep,
createWorkflow,
parallelize,
transform,
when,
} from "@medusajs/workflows-sdk"
import { createRemoteLinkStep, useRemoteQueryStep } from "../../../common"
import { createReturnFulfillmentWorkflow } from "../../../fulfillment/workflows/create-return-fulfillment"
import { previewOrderChangeStep } from "../../steps"
import { previewOrderChangeStep, updateReturnsStep } from "../../steps"
import { confirmOrderChanges } from "../../steps/confirm-order-changes"
import { createReturnItemsFromActionsStep } from "../../steps/return/create-return-items-from-actions"
import {
@@ -232,7 +238,16 @@ export const confirmReturnRequestWorkflow = createWorkflow(
createRemoteLinkStep(link)
})
confirmOrderChanges({ changes: [orderChange], orderId: order.id })
parallelize(
updateReturnsStep([
{
id: orderReturn.id,
status: ReturnStatus.REQUESTED,
requested_at: new Date(),
},
]),
confirmOrderChanges({ changes: [orderChange], orderId: order.id })
)
return new WorkflowResponse(orderPreview)
}