org.broadleafcommerce.core.order.domain
Interface FulfillmentGroup

All Superinterfaces:
Serializable
All Known Implementing Classes:
FulfillmentGroupImpl

public interface FulfillmentGroup
extends Serializable

This is the main entity used to hold fulfillment information about an Order. An Order can have multiple FulfillmentGroups to support shipping items to multiple addresses along with fulfilling items multiple ways (ship some overnight, deliver some with digital download). This constraint means that a FulfillmentGroup is unique based on an Address and FulfillmentOption combination. This also means that in the common case for Orders that are being delivered to a single Address and a single way (shipping everything express; ie a single FulfillmentOption) then there will be only 1 FulfillmentGroup for that Order.

Author:
Phillip Verheyden
See Also:
Order}, {@link FulfillmentOption}, {@link Address}, {@link FulfillmentGroupItem}

Method Summary
 void addCandidateFulfillmentGroupOffer(CandidateFulfillmentGroupOffer candidateOffer)
           
 void addFulfillmentGroupFee(FulfillmentGroupFee fulfillmentGroupFee)
           
 void addFulfillmentGroupItem(FulfillmentGroupItem fulfillmentGroupItem)
           
 Address getAddress()
           
 List<CandidateFulfillmentGroupOffer> getCandidateFulfillmentGroupOffers()
           
 String getDeliveryInstruction()
           
 List<DiscreteOrderItem> getDiscreteOrderItems()
           
 List<FulfillmentGroupAdjustment> getFulfillmentGroupAdjustments()
           
 Money getFulfillmentGroupAdjustmentsValue()
           
 List<FulfillmentGroupFee> getFulfillmentGroupFees()
           
 List<FulfillmentGroupItem> getFulfillmentGroupItems()
           
 FulfillmentOption getFulfillmentOption()
           
 Money getFulfillmentPrice()
          Gets the price to charge for this fulfillmentGroup.
 Long getId()
           
 Money getMerchandiseTotal()
           
 String getMethod()
          Deprecated. Should use getFulfillmentOption() instead
 Order getOrder()
           
 PersonalMessage getPersonalMessage()
           
 Phone getPhone()
           
 String getReferenceNumber()
           
 Money getRetailFulfillmentPrice()
          Returns the retail price for this fulfillmentGroup.
 Money getRetailShippingPrice()
          Deprecated. - use getRetailFulfillmentPrice() instead. Deprecated as the price might be for other fulfillment types such as PickUpAtStore fees or download fees.
 Money getSaleFulfillmentPrice()
          Returns the sale price for this fulfillmentGroup.
 Money getSaleShippingPrice()
          Deprecated. - use getSaleFulfillmentPrice() instead.
 Integer getSequence()
           
 String getService()
          Deprecated. Should use getFulfillmentOption() instead
 Money getShippingPrice()
          Deprecated. - use getFulfillmentPrice() instead.
 FulfillmentGroupStatusType getStatus()
           
 List<TaxDetail> getTaxes()
          Gets a list of TaxDetail objects, which are taxes that apply directly to this fulfillment group.
 Money getTotal()
           
 Money getTotalFeeTax()
          Gets the total fee tax for this fulfillment group, which is the sum of the taxes on all fulfillment group fees.
 Money getTotalFulfillmentGroupTax()
          Gets the total fulfillment group tax for this fulfillment group, which is the sum of the taxes on this fulfillment group itself (such as a shipping tax) only.
 Money getTotalItemTax()
          Gets the total item tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items.
 Money getTotalTax()
          Gets the total tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items, fees, and taxes on this fulfillment group itself (such as a shipping tax).
 FulfillmentType getType()
           
 boolean isPrimary()
           
 Boolean isShippingPriceTaxable()
           
 void removeAllAdjustments()
           
 void removeAllCandidateOffers()
           
 void removeAllFulfillmentGroupFees()
           
 void setAddress(Address address)
           
 void setCandidateFulfillmentGroupOffer(List<CandidateFulfillmentGroupOffer> candidateOffers)
           
 void setDeliveryInstruction(String deliveryInstruction)
           
 void setFulfillmentGroupAdjustments(List<FulfillmentGroupAdjustment> fulfillmentGroupAdjustments)
           
 void setFulfillmentGroupFees(List<FulfillmentGroupFee> fulfillmentGroupFees)
           
 void setFulfillmentGroupItems(List<FulfillmentGroupItem> fulfillmentGroupItems)
           
 void setFulfillmentOption(FulfillmentOption fulfillmentOption)
           
 void setFulfillmentPrice(Money fulfillmentPrice)
          Sets the price to charge for this fulfillmentGroup.
 void setId(Long id)
           
 void setIsShippingPriceTaxable(Boolean isShippingPriceTaxable)
           
 void setMerchandiseTotal(Money merchandiseTotal)
           
 void setMethod(String fulfillmentMethod)
          Deprecated. Should use #setFulfillmentOption() instead
 void setOrder(Order order)
           
 void setPersonalMessage(PersonalMessage personalMessage)
           
 void setPhone(Phone phone)
           
 void setPrimary(boolean primary)
           
 void setReferenceNumber(String referenceNumber)
           
 void setRetailFulfillmentPrice(Money fulfillmentPrice)
          Sets the retail price for this fulfillmentGroup.
 void setRetailShippingPrice(Money retailShippingPrice)
          Deprecated. - use setRetailFulfillmentPrice(Money) instead.
 void setSaleFulfillmentPrice(Money fulfillmentPrice)
          Sets the sale price for this fulfillmentGroup.
 void setSaleShippingPrice(Money saleShippingPrice)
          Deprecated. - use setSaleFulfillmentPrice(Money) instead.
 void setSequence(Integer sequence)
           
 void setService(String service)
          Deprecated. Should use #setFulfillmentOption() instead
 void setShippingPrice(Money shippingPrice)
          Deprecated. - use setRetailFulfillmentPrice(Money) instead.
 void setStatus(FulfillmentGroupStatusType status)
           
 void setTaxes(List<TaxDetail> taxes)
          Gets the list of TaxDetail objects, which are taxes that apply directly to this fulfillment group.
 void setTotal(Money orderTotal)
           
 void setTotalFeeTax(Money totalFeeTax)
          Sets the total fee tax for this fulfillment group, which is the sum of the taxes on all fulfillment group fees.
 void setTotalFulfillmentGroupTax(Money totalFulfillmentGroupTax)
          Sets the total fulfillment group tax for this fulfillment group, which is the sum of the taxes on this fulfillment group itself (such as a shipping tax) only.
 void setTotalItemTax(Money totalItemTax)
          Sets the total item tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items.
 void setTotalTax(Money totalTax)
          Sets the total tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items, fees, and taxes on this fulfillment group itself (such as a shipping tax).
 void setType(FulfillmentType type)
           
 

Method Detail

getId

Long getId()

setId

void setId(Long id)

getOrder

Order getOrder()

setOrder

void setOrder(Order order)

setSequence

void setSequence(Integer sequence)

getSequence

Integer getSequence()

getFulfillmentOption

FulfillmentOption getFulfillmentOption()

setFulfillmentOption

void setFulfillmentOption(FulfillmentOption fulfillmentOption)

getAddress

Address getAddress()

setAddress

void setAddress(Address address)

getPhone

Phone getPhone()

setPhone

void setPhone(Phone phone)

getFulfillmentGroupItems

List<FulfillmentGroupItem> getFulfillmentGroupItems()

setFulfillmentGroupItems

void setFulfillmentGroupItems(List<FulfillmentGroupItem> fulfillmentGroupItems)

addFulfillmentGroupItem

void addFulfillmentGroupItem(FulfillmentGroupItem fulfillmentGroupItem)

getMethod

@Deprecated
String getMethod()
Deprecated. Should use getFulfillmentOption() instead

See Also:
FulfillmentOption}

setMethod

@Deprecated
void setMethod(String fulfillmentMethod)
Deprecated. Should use #setFulfillmentOption() instead

See Also:
FulfillmentOption}

getRetailFulfillmentPrice

Money getRetailFulfillmentPrice()
Returns the retail price for this fulfillmentGroup. The retail and sale concepts used for item pricing are not generally used with fulfillmentPricing but supported nonetheless. Typically only a retail price would be set on a fulfillment group.

Returns:

setRetailFulfillmentPrice

void setRetailFulfillmentPrice(Money fulfillmentPrice)
Sets the retail price for this fulfillmentGroup.

Parameters:
fulfillmentPrice -

getSaleFulfillmentPrice

Money getSaleFulfillmentPrice()
Returns the sale price for this fulfillmentGroup. Typically this will be null or equal to the retailFulfillmentPrice

Returns:

setSaleFulfillmentPrice

void setSaleFulfillmentPrice(Money fulfillmentPrice)
Sets the sale price for this fulfillmentGroup. Typically not used.

Parameters:
fulfillmentPrice -
See Also:
setRetailFulfillmentPrice(Money)

getFulfillmentPrice

Money getFulfillmentPrice()
Gets the price to charge for this fulfillmentGroup. Includes the effects of any adjustments such as those that might have been applied by the promotion engine (e.g. free shipping)

Returns:

setFulfillmentPrice

void setFulfillmentPrice(Money fulfillmentPrice)
Sets the price to charge for this fulfillmentGroup. Typically set internally by the Broadleaf pricing and promotion engines.


getRetailShippingPrice

Money getRetailShippingPrice()
Deprecated. - use getRetailFulfillmentPrice() instead. Deprecated as the price might be for other fulfillment types such as PickUpAtStore fees or download fees.

Returns:

setRetailShippingPrice

void setRetailShippingPrice(Money retailShippingPrice)
Deprecated. - use setRetailFulfillmentPrice(Money) instead.


getSaleShippingPrice

Money getSaleShippingPrice()
Deprecated. - use getSaleFulfillmentPrice() instead.

Returns:

setSaleShippingPrice

void setSaleShippingPrice(Money saleShippingPrice)
Deprecated. - use setSaleFulfillmentPrice(Money) instead.

Parameters:
saleShippingPrice -

getShippingPrice

Money getShippingPrice()
Deprecated. - use getFulfillmentPrice() instead.

Returns:

setShippingPrice

void setShippingPrice(Money shippingPrice)
Deprecated. - use setRetailFulfillmentPrice(Money) instead.

Parameters:
shippingPrice -

getReferenceNumber

String getReferenceNumber()

setReferenceNumber

void setReferenceNumber(String referenceNumber)

getType

FulfillmentType getType()

setType

void setType(FulfillmentType type)

getCandidateFulfillmentGroupOffers

List<CandidateFulfillmentGroupOffer> getCandidateFulfillmentGroupOffers()

setCandidateFulfillmentGroupOffer

void setCandidateFulfillmentGroupOffer(List<CandidateFulfillmentGroupOffer> candidateOffers)

addCandidateFulfillmentGroupOffer

void addCandidateFulfillmentGroupOffer(CandidateFulfillmentGroupOffer candidateOffer)

removeAllCandidateOffers

void removeAllCandidateOffers()

getFulfillmentGroupAdjustments

List<FulfillmentGroupAdjustment> getFulfillmentGroupAdjustments()

setFulfillmentGroupAdjustments

void setFulfillmentGroupAdjustments(List<FulfillmentGroupAdjustment> fulfillmentGroupAdjustments)

removeAllAdjustments

void removeAllAdjustments()

getTaxes

List<TaxDetail> getTaxes()
Gets a list of TaxDetail objects, which are taxes that apply directly to this fulfillment group. An example of a such a tax would be a shipping tax.

Returns:
a list of taxes that apply to this fulfillment group

setTaxes

void setTaxes(List<TaxDetail> taxes)
Gets the list of TaxDetail objects, which are taxes that apply directly to this fulfillment group. An example of a such a tax would be a shipping tax.

Parameters:
taxes - the list of taxes on this fulfillment group

getTotalTax

Money getTotalTax()
Gets the total tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items, fees, and taxes on this fulfillment group itself (such as a shipping tax). This total is calculated in the TotalActivity stage of the pricing workflow.

Returns:
the total tax for the fulfillment group

setTotalTax

void setTotalTax(Money totalTax)
Sets the total tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items, fees, and taxes on this fulfillment group itself (such as a shipping tax). This total should only be set during the TotalActivity stage of the pricing workflow.

Parameters:
the - total tax for this fulfillment group

getTotalItemTax

Money getTotalItemTax()
Gets the total item tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items. This total is calculated in the TotalActivity stage of the pricing workflow.

Returns:
the total tax for this fulfillment group

setTotalItemTax

void setTotalItemTax(Money totalItemTax)
Sets the total item tax for this fulfillment group, which is the sum of the taxes on all fulfillment group items. This total should only be set during the TotalActivity stage of the pricing workflow.

Parameters:
the - total tax for this fulfillment group

getTotalFeeTax

Money getTotalFeeTax()
Gets the total fee tax for this fulfillment group, which is the sum of the taxes on all fulfillment group fees. This total is calculated in the TotalActivity stage of the pricing workflow.

Returns:
the total tax for this fulfillment group

setTotalFeeTax

void setTotalFeeTax(Money totalFeeTax)
Sets the total fee tax for this fulfillment group, which is the sum of the taxes on all fulfillment group fees. This total should only be set during the TotalActivity stage of the pricing workflow.

Parameters:
the - total tax for this fulfillment group

getTotalFulfillmentGroupTax

Money getTotalFulfillmentGroupTax()
Gets the total fulfillment group tax for this fulfillment group, which is the sum of the taxes on this fulfillment group itself (such as a shipping tax) only. It does not include the taxes on items or fees in this fulfillment group. This total is calculated in the TotalActivity stage of the pricing workflow.

Returns:
the total tax for this fulfillment group

setTotalFulfillmentGroupTax

void setTotalFulfillmentGroupTax(Money totalFulfillmentGroupTax)
Sets the total fulfillment group tax for this fulfillment group, which is the sum of the taxes on this fulfillment group itself (such as a shipping tax) only. It does not include the taxes on items or fees in this fulfillment group. This total should only be set during the TotalActivity stage of the pricing workflow.

Parameters:
the - total tax for this fulfillment group

getDeliveryInstruction

String getDeliveryInstruction()

setDeliveryInstruction

void setDeliveryInstruction(String deliveryInstruction)

getPersonalMessage

PersonalMessage getPersonalMessage()

setPersonalMessage

void setPersonalMessage(PersonalMessage personalMessage)

isPrimary

boolean isPrimary()

setPrimary

void setPrimary(boolean primary)

getMerchandiseTotal

Money getMerchandiseTotal()

setMerchandiseTotal

void setMerchandiseTotal(Money merchandiseTotal)

getTotal

Money getTotal()

setTotal

void setTotal(Money orderTotal)

getStatus

FulfillmentGroupStatusType getStatus()

setStatus

void setStatus(FulfillmentGroupStatusType status)

getFulfillmentGroupFees

List<FulfillmentGroupFee> getFulfillmentGroupFees()

setFulfillmentGroupFees

void setFulfillmentGroupFees(List<FulfillmentGroupFee> fulfillmentGroupFees)

addFulfillmentGroupFee

void addFulfillmentGroupFee(FulfillmentGroupFee fulfillmentGroupFee)

removeAllFulfillmentGroupFees

void removeAllFulfillmentGroupFees()

isShippingPriceTaxable

Boolean isShippingPriceTaxable()

setIsShippingPriceTaxable

void setIsShippingPriceTaxable(Boolean isShippingPriceTaxable)

getService

@Deprecated
String getService()
Deprecated. Should use getFulfillmentOption() instead

See Also:
FulfillmentOption}

setService

@Deprecated
void setService(String service)
Deprecated. Should use #setFulfillmentOption() instead

See Also:
FulfillmentOption}

getDiscreteOrderItems

List<DiscreteOrderItem> getDiscreteOrderItems()

getFulfillmentGroupAdjustmentsValue

Money getFulfillmentGroupAdjustmentsValue()


Copyright © 2013. All Rights Reserved.