What would be the Ground and Expedited shipping prices for an order of a single item with a price
of 15.99 and having a weight of 42 with this configuration (assume no active shipping
promotions)?
/atg/commerce/pricing/shippingPricingEngine.Properties:
PreCalculators =\
Calculators/GroundshippingCalculator,\
Calculator/ExpiditedShippingCalculator
postCalculators=calculators/MypostCalculator
/atg/commerce/pricing/calculators/GrowthShippingCalculators.proprties:
$class=atg.commerce.pricing.priceRangeShippingCalculator
ignoreShippingMethod=false
shippingmethod=Ground
ranges =\
00.00:15.99:4.50,\
16.00:30.99:6.00,\
31.00:40.99:7.25,\
41.00:MAX_VALUE:10.00
/atg/commerce/pricing/calculators/ExpeditedShippingCalculators.proprties:
$class=atg.commerce.pricing.priceRangeShippingCalculator
ignoreShippingMethod=false
shippingmethod=Expedited
ranges =\
00.00:15.99:4.50,\
16.00:30.99:6.00,\
31.00:40.99:7.25,\
41.00:MAX_VALUE:10.00
/atg/commerce/pricing/calculators/MyPostCalculators.properties:
$class=atg.commerce.pricing.FixedPriceShippingCalculator
AddAmount=true
ignoreShippingMethod=true
shippingmethod=SpecialSurcharge
amount=4.99
A.
Ground: 4.50, Expedited: 10.00
B.
Ground: 10.00, Expedited: 10.00
C.
Ground: 4.99, Expedited: 4.99
D.
Ground: 9.49, Expedited: 14.99
Explanation:
For Ground the calculation is 4.50(Price range is used)+4.99 (the post calculator
always gives this result) -> 9.49
For Expedited the calculation is 10.00 (Weight range is used) + 4.99 (the post calculator always
gives this result) -> 14.99
Note 1: A ShippingPricingEngine implementation which computes the shipping price for an order.
It accomplishes this task by invoking a series of ShippingPricingCalculators which incrementally
compute the tax price:
The first step is to allow the preCalculators to manipulate the price. They are invoked in the order
in which they appear in the preCalculators list.
The second step is to extract the calculators from any input PricingModels, and invoke them in the
order in which they appear in the pPricingModels list.
The last step is to invoke the postCalculators in the order in which they appear in the
postCalculators list.
Note2: The ShippingPricingEngine is a structural component that does not actually calculate
shipping prices itself. The actual price calculations are performed by the Pricing Calculator
components that are configured as the preCalculators and postCalculators properties of the
ShippingPricingEngine.
atg.commerce.pricing, Class ShippingPricingEngineImpl