Fluent Commerce Logo
Docs
Sign In

ScheduleFulfilmentReleaseForDeliverAfter

Rule

Changed on:

18 Dec 2023

Overview

The schedules an based on the Shipment’s Delivery From date ( choice’s `deliverAfter` date).

Plugin NameOrder Reference Module
Namespace[[account.id]].order

The is the foundation for order-related implementations. It provides reference workflows for , and mixed baskets and those needed to build your own. Extensible by design, use this Module as a base to build a solution to your customers' needs.

UI Description

Schedules event "eventName" based on the fulfillment choice’s deliverAfter date. If the fc.order.sourcing.proceeding.time setting has not been created or if the fulfillment choice’s deliverAfter minus proceeding time is less than the current processing time, then sends the event without scheduling.

Accepts

  • FULFILMENT

Actions

  • This rule schedules event with proper event name based on the fulfillment choice’s deliverAfter date.

Rule parameters

Parameter

Description

eventName

The name of the to be triggered.

Event attributes

This does not directly identify any attributes.

Exceptions

This does not directly throw any exception.

Configuration example

1{
2  "name":"<ACCOUNTID>.order.ScheduleFulfilmentReleaseForDeliverAfter",
3  "props": {
4        "eventName": "anEvent"
5    }
6}

Detailed Technical Description

  • Get `fulfilmentId` from the incoming event (`entityId`).
  • Get fulfillment by Id via GQL query.
  • If there is address data:
    • Get `locationRef` from `PrimaryAddress` of fulfilment.
    • Get `locationId` for the location.
    • Compute `timeValue` for the location.
    • Get a `fulfilmentChoice` by its ref.
    • If the `fulfilmentChoice` does exist:

  i.  Get the value of the `deliverAfter` of the `fulfilmentChoice`.
  ii. If the `deliverAfter` is before the `timeValue` - send the .

Version History

2023-08-03

v1.0.0

refers to