feat: delete shipping options (#6993)

This commit is contained in:
Adrien de Peretti
2024-04-09 15:30:22 +02:00
committed by GitHub
parent 21be6ff7ed
commit e1a0960e20
18 changed files with 524 additions and 38 deletions

View File

@@ -0,0 +1,41 @@
import {
DeleteEntityInput,
ModuleRegistrationName,
} from "@medusajs/modules-sdk"
import { IFulfillmentModuleService } from "@medusajs/types"
import { createStep, StepResponse } from "@medusajs/workflows-sdk"
import { Modules } from "@medusajs/utils"
export const deleteShippingOptionsStepId = "delete-shipping-options-step"
export const deleteShippingOptionsStep = createStep(
deleteShippingOptionsStepId,
async (ids: string[], { container }) => {
if (!ids?.length) {
return
}
const service = container.resolve<IFulfillmentModuleService>(
ModuleRegistrationName.FULFILLMENT
)
const softDeletedEntities = await service.softDeleteShippingOptions(ids)
return new StepResponse(
{
[Modules.FULFILLMENT]: softDeletedEntities,
} as DeleteEntityInput,
ids
)
},
async (prevIds, { container }) => {
if (!prevIds?.length) {
return
}
const service = container.resolve<IFulfillmentModuleService>(
ModuleRegistrationName.FULFILLMENT
)
await service.restoreShippingOptions(prevIds)
}
)

View File

@@ -4,5 +4,6 @@ export * from "./create-fulfillment-set"
export * from "./create-service-zones"
export * from "./upsert-shipping-options"
export * from "./delete-service-zones"
export * from "./delete-shipping-options"
export * from "./create-shipping-profiles"
export * from "./remove-rules-from-fulfillment-shipping-option"

View File

@@ -0,0 +1,17 @@
import { FulfillmentWorkflow } from "@medusajs/types"
import { createWorkflow, WorkflowData } from "@medusajs/workflows-sdk"
import { deleteShippingOptionsStep } from "../steps"
import { removeRemoteLinkStep } from "../../common"
export const deleteShippingOptionsWorkflowId =
"delete-shipping-options-workflow"
export const deleteShippingOptionsWorkflow = createWorkflow(
deleteShippingOptionsWorkflowId,
(
input: WorkflowData<FulfillmentWorkflow.DeleteShippingOptionsWorkflowInput>
) => {
const softDeletedEntities = deleteShippingOptionsStep(input.ids)
removeRemoteLinkStep(softDeletedEntities)
}
)

View File

@@ -3,6 +3,7 @@ export * from "./create-service-zones"
export * from "./create-shipping-options"
export * from "./create-shipping-profiles"
export * from "./delete-service-zones"
export * from "./delete-shipping-options"
export * from "./remove-rules-from-fulfillment-shipping-option"
export * from "./update-service-zones"
export * from "./update-shipping-options"