Tip
|
The 2.x versions are Spring Boot 3 compatible. |
Fulfillment Entities like FulfillmentCalculatorConfig
, FulfillmentDestination
, and FulfillmentOrigin
now have a ContextState
field and are ContextStateAware
.
Updated DefaultFulfillmentOptionService
to sort the fulfillment options to ensure the default service level is first and the rest are sorted by price.
Added ActiveAware
to JpaFulfillmentCalculatorConfig
Improved the help-text on certain fields in the Admin.
Added an endpoint to read pages of FulfillmentCalculatorConfig
Added a DistanceCalculationHelper
class for conversion and to perform arithmetic operations on Distance
.
Fields for dimension or weight restrictions have been added to Fulfillment Calculators. Calculators will not price items that exceed the restricted dimension or weight.
Added ContextInfo
to FulfillmentPricingContext
Passing EnhancedFulfillmentPricingGroup
as a parameter to filterCalculatorsByGroupFulfillmentDestination()
method.
Removed unused constructor parameter from DefaultFulfillmentCalculatorService
FulfillmentDestinations
have DestinationDetailTypes
that specify exactly which geographic areas make up the FulfillmentDestination
. Currently, this is specified with country, state, city, or zip code data. This update adds fields to support a circular area defined by a radius and a center point. The center point may be specified as an address or as coordinates.
DBFulfillmentCalculator
has been enhanced to support determining if a fulfillment address is within the area specified by the calculator’s FulfillmentDestination
. DBFulfillmentCalculator
defers to GeoCoordinateService
for the actual calculations.
There is no geolocation functionality included with the framework, but there is the GeolocationProvider
interface that a client could implement to provide geolocation functionality to the GeoCoordinateService
. Alternatively, clients could use a front-end library to set coordinates on the addresses.
With this update, a new field supportedFulfillmentTypes
is added to FulfillmentPricingConfig
. With this field, applications can specify which fulfillment types should be requested when requesting fulfillment options. This value is read by CartOperationService
when creating the fulfillment pricing request. Logic has also been updated in DefaultFulfillmentOptionService
to support options for multiple fulfillment types being returned.