WeeklyShipmentCalendarRule
in package
implements
ShipmentCalendarRuleInterface
FinalYes
Delay shipment release until the next matching weekly pickup or handover moment.
Table of Contents
Interfaces
- ShipmentCalendarRuleInterface
- Planner rule that delays shipment release or handover times for a line.
Properties
Methods
- __construct() : mixed
- Create one weekly shipment calendar rule around a reusable weekly schedule.
- fromMap() : self
- Build one weekly calendar from a weekday => list of moment/window expressions map.
- releaseTime() : int
- Return the first shipment release time that matches the configured weekly schedule.
Properties
$calendar read-only
public
WeeklyCalendar
$calendar
Methods
__construct()
Create one weekly shipment calendar rule around a reusable weekly schedule.
public
__construct(WeeklyCalendar $calendar) : mixed
Parameters
- $calendar : WeeklyCalendar
fromMap()
Build one weekly calendar from a weekday => list of moment/window expressions map.
public
static fromMap(array<int|string, string|array<int, string>> $map) : self
Example: ['mon-thu,fri' => ['10:00', '13:00-16:00'], '6,7' => ['09:00']]
Parameters
- $map : array<int|string, string|array<int, string>>
Return values
selfreleaseTime()
Return the first shipment release time that matches the configured weekly schedule.
public
releaseTime(DemandReleaseContext $context, DemandShipmentLine $line, ScheduledStep $step, int $earliestReleaseTime) : int
Parameters
- $context : DemandReleaseContext
- $line : DemandShipmentLine
- $step : ScheduledStep
- $earliestReleaseTime : int
Tags
Attributes
- #[Override]