Class JpaOrderFulfillment

  • All Implemented Interfaces:
    com.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware, com.broadleafcommerce.data.tracking.core.ApplicationTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking>, com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.data.tracking.core.mapping.money.CurrencyProvider, com.broadleafcommerce.data.tracking.core.search.Indexable, com.broadleafcommerce.data.tracking.core.Trackable, com.broadleafcommerce.data.tracking.core.TypedTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking>, com.broadleafcommerce.money.CurrencyConsumer, Serializable, javax.money.CurrencySupplier

    @Entity
    @TrackableExtension(APPLICATION)
    public class JpaOrderFulfillment
    extends Object
    implements com.broadleafcommerce.data.tracking.core.ApplicationTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking>, Serializable, com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable, com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware, com.broadleafcommerce.data.tracking.core.mapping.money.CurrencyProvider, com.broadleafcommerce.money.CurrencyConsumer, com.broadleafcommerce.data.tracking.core.search.Indexable
    Persistent counter-part to a OrderFulfillment for use with a JPA datastore.
    Author:
    Samarth Dhruva (samarthd)
    See Also:
    Serialized Form
    • Constructor Detail

      • JpaOrderFulfillment

        public JpaOrderFulfillment()
    • Method Detail

      • getBusinessDomainType

        public Class<?> getBusinessDomainType()
        Specified by:
        getBusinessDomainType in interface com.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware
      • fromMe

        @NonNull
        public org.modelmapper.ModelMapper fromMe()
        Specified by:
        fromMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
      • fromMeParentFulfillmentBackReferenceAdder

        protected com.broadleafcommerce.order.client.domain.OrderFulfillment fromMeParentFulfillmentBackReferenceAdder​(org.modelmapper.spi.MappingContext<JpaOrderFulfillment,​com.broadleafcommerce.order.client.domain.OrderFulfillment> mappingContext)
        Used as the TypeMap.setPostConverter(Converter) for OrderFulfillment in fromMe().

        Explicitly sets the OrderFulfillmentItem.getOrderFulfillment() parent fulfillment back reference for each item in OrderFulfillment.getFulfillmentItems() to the parent instance being mapped.

        Parameters:
        mappingContext - the model mapper mapping context
        Returns:
        the business-domain order fulfillment item after setting its order fulfillment reference to the parent instance being mapped
      • toMe

        @NonNull
        public org.modelmapper.ModelMapper toMe()
        Specified by:
        toMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
      • preFromMe

        public void preFromMe​(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                              @NonNull
                              Object businessDomain)
        Specified by:
        preFromMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
      • preToMe

        public void preToMe​(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo,
                            @NonNull
                            Object businessDomain)
        Specified by:
        preToMe in interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
      • toMeParentFulfillmentBackReferenceAdder

        protected JpaOrderFulfillment toMeParentFulfillmentBackReferenceAdder​(org.modelmapper.spi.MappingContext<com.broadleafcommerce.order.client.domain.OrderFulfillment,​JpaOrderFulfillment> mappingContext)
        Used as the TypeMap.setPostConverter(Converter) for JpaOrderFulfillment in toMe().

        Explicitly sets the JpaOrderFulfillmentItem.getOrderFulfillment() parent fulfillment back reference for each item in getFulfillmentItems() to the parent instance being mapped.

        Parameters:
        mappingContext - the model mapper mapping context
        Returns:
        the business-domain order fulfillment item after setting its order fulfillment reference to the parent instance being mapped
      • setMerchandiseTotal

        public void setMerchandiseTotal​(javax.money.MonetaryAmount merchandiseTotal)
      • getMerchandiseTotal

        public javax.money.MonetaryAmount getMerchandiseTotal()
      • setFulfillmentCharge

        public void setFulfillmentCharge​(javax.money.MonetaryAmount fulfillmentCharge)
      • getFulfillmentCharge

        public javax.money.MonetaryAmount getFulfillmentCharge()
      • setFulfillmentTotal

        public void setFulfillmentTotal​(javax.money.MonetaryAmount totalFulfillmentPrice)
      • getFulfillmentTotal

        public javax.money.MonetaryAmount getFulfillmentTotal()
      • setTaxTotal

        public void setTaxTotal​(javax.money.MonetaryAmount totalTax)
      • getTaxTotal

        public javax.money.MonetaryAmount getTaxTotal()
      • setGrandTotal

        public void setGrandTotal​(javax.money.MonetaryAmount grandTotal)
      • getGrandTotal

        public javax.money.MonetaryAmount getGrandTotal()
      • setFulfillmentAdjustmentsTotal

        public void setFulfillmentAdjustmentsTotal​(javax.money.MonetaryAmount fulfillmentAdjustmentsTotal)
      • getFulfillmentAdjustmentsTotal

        public javax.money.MonetaryAmount getFulfillmentAdjustmentsTotal()
      • setProratedOrderFulfillmentAdjustments

        public void setProratedOrderFulfillmentAdjustments​(javax.money.MonetaryAmount proratedOrderFulfillmentAdjustments)
      • getProratedOrderFulfillmentAdjustments

        public javax.money.MonetaryAmount getProratedOrderFulfillmentAdjustments()
      • getContextId

        public String getContextId()
        The primary key.
        Specified by:
        getContextId in interface com.broadleafcommerce.data.tracking.core.Trackable
        Returns:
        The primary key
      • getExternalId

        @Nullable
        public String getExternalId()
        See Also:
        OrderFulfillment.externalId
      • getOrderFulfillmentNumber

        public String getOrderFulfillmentNumber()
        See Also:
        OrderFulfillment.orderFulfillmentNumber
      • getGroupReferenceNumber

        public String getGroupReferenceNumber()
        See Also:
        OrderFulfillment.groupReferenceNumber
      • getOrderId

        public String getOrderId()
        See Also:
        OrderFulfillment.orderId
      • getStatus

        public String getStatus()
        See Also:
        OrderFulfillment.status
      • getType

        public String getType()
        See Also:
        OrderFulfillment.type
      • getVersion

        public int getVersion()
        The JPA managed version of this order fulfillment. This should not be modified by application code. See JPA's @Version.
      • getFulfillmentOptionName

        public String getFulfillmentOptionName()
        See Also:
        FulfillmentOption.name
      • getFulfillmentOptionDescription

        public String getFulfillmentOptionDescription()
        See Also:
        FulfillmentOption.description
      • isUseFlatRates

        public boolean isUseFlatRates()
        See Also:
        FulfillmentOption.useFlatRates
      • getTaxCode

        public String getTaxCode()
        See Also:
        FulfillmentOption.taxCode
      • isFulfillmentTaxable

        public boolean isFulfillmentTaxable()
        See Also:
        FulfillmentOption.taxable
      • getInventoryLocationReference

        public String getInventoryLocationReference()
        See Also:
        OrderFulfillment.inventoryLocationReference
      • getAddress

        public com.broadleafcommerce.order.common.domain.Address getAddress()
        See Also:
        OrderFulfillment.address
      • getShipment

        public com.broadleafcommerce.order.client.domain.Shipment getShipment()
        See Also:
        OrderFulfillment.shipment
      • getAdditionalShipments

        public List<com.broadleafcommerce.order.client.domain.Shipment> getAdditionalShipments()
        See Also:
        OrderFulfillment.additionalShipments
      • getAdjustments

        public List<com.broadleafcommerce.order.common.domain.Adjustment> getAdjustments()
        See Also:
        OrderFulfillment.adjustments
      • isOverrideFulfillmentPriceFlag

        public boolean isOverrideFulfillmentPriceFlag()
        See Also:
        OrderFulfillment.overrideFulfillmentPriceFlag
      • getOverrideDetails

        public List<com.broadleafcommerce.order.common.domain.OverrideDetail> getOverrideDetails()
        See Also:
        OrderFulfillment.overrideDetails
      • getVendorRef

        public String getVendorRef()
      • getCurrency

        public javax.money.CurrencyUnit getCurrency()
        Specified by:
        getCurrency in interface javax.money.CurrencySupplier
        See Also:
        OrderFulfillment.currency
      • isRequiresCollectOnDelivery

        public boolean isRequiresCollectOnDelivery()
        See Also:
        OrderFulfillment.requiresCollectOnDelivery
      • getAttributes

        public Map<String,​Object> getAttributes()
        See Also:
        OrderFulfillment.attributes
      • getTracking

        public com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking getTracking()
        Specified by:
        getTracking in interface com.broadleafcommerce.data.tracking.core.Trackable
        See Also:
        ApplicationJpaTracking
      • setContextId

        public void setContextId​(String contextId)
        The primary key.
        Specified by:
        setContextId in interface com.broadleafcommerce.data.tracking.core.Trackable
        Parameters:
        contextId - The primary key
      • setExternalId

        public void setExternalId​(@Nullable
                                  String externalId)
        See Also:
        OrderFulfillment.externalId
      • setOrderFulfillmentNumber

        public void setOrderFulfillmentNumber​(String orderFulfillmentNumber)
        See Also:
        OrderFulfillment.orderFulfillmentNumber
      • setGroupReferenceNumber

        public void setGroupReferenceNumber​(String groupReferenceNumber)
        See Also:
        OrderFulfillment.groupReferenceNumber
      • setOrderId

        public void setOrderId​(String orderId)
        See Also:
        OrderFulfillment.orderId
      • setStatus

        public void setStatus​(String status)
        See Also:
        OrderFulfillment.status
      • setType

        public void setType​(String type)
        See Also:
        OrderFulfillment.type
      • setVersion

        public void setVersion​(int version)
        The JPA managed version of this order fulfillment. This should not be modified by application code. See JPA's @Version.
      • setFulfillmentOptionName

        public void setFulfillmentOptionName​(String fulfillmentOptionName)
        See Also:
        FulfillmentOption.name
      • setFulfillmentOptionDescription

        public void setFulfillmentOptionDescription​(String fulfillmentOptionDescription)
        See Also:
        FulfillmentOption.description
      • setUseFlatRates

        public void setUseFlatRates​(boolean useFlatRates)
        See Also:
        FulfillmentOption.useFlatRates
      • setTaxCode

        public void setTaxCode​(String taxCode)
        See Also:
        FulfillmentOption.taxCode
      • setFulfillmentTaxable

        public void setFulfillmentTaxable​(boolean isFulfillmentTaxable)
        See Also:
        FulfillmentOption.taxable
      • setInventoryLocationReference

        public void setInventoryLocationReference​(String inventoryLocationReference)
        See Also:
        OrderFulfillment.inventoryLocationReference
      • setAddress

        public void setAddress​(com.broadleafcommerce.order.common.domain.Address address)
        See Also:
        OrderFulfillment.address
      • setShipment

        public void setShipment​(com.broadleafcommerce.order.client.domain.Shipment shipment)
        See Also:
        OrderFulfillment.shipment
      • setAdditionalShipments

        public void setAdditionalShipments​(List<com.broadleafcommerce.order.client.domain.Shipment> additionalShipments)
        See Also:
        OrderFulfillment.additionalShipments
      • setFulfillmentItems

        public void setFulfillmentItems​(List<JpaOrderFulfillmentItem> fulfillmentItems)
        See Also:
        OrderFulfillment.fulfillmentItems
      • setAdjustments

        public void setAdjustments​(List<com.broadleafcommerce.order.common.domain.Adjustment> adjustments)
        See Also:
        OrderFulfillment.adjustments
      • setOverrideFulfillmentPriceFlag

        public void setOverrideFulfillmentPriceFlag​(boolean overrideFulfillmentPriceFlag)
        See Also:
        OrderFulfillment.overrideFulfillmentPriceFlag
      • setOverrideDetails

        public void setOverrideDetails​(List<com.broadleafcommerce.order.common.domain.OverrideDetail> overrideDetails)
        See Also:
        OrderFulfillment.overrideDetails
      • setVendorRef

        public void setVendorRef​(String vendorRef)
      • setCurrency

        public void setCurrency​(javax.money.CurrencyUnit currency)
        Specified by:
        setCurrency in interface com.broadleafcommerce.money.CurrencyConsumer
        See Also:
        OrderFulfillment.currency
      • setRequiresCollectOnDelivery

        public void setRequiresCollectOnDelivery​(boolean requiresCollectOnDelivery)
        See Also:
        OrderFulfillment.requiresCollectOnDelivery
      • setAttributes

        public void setAttributes​(Map<String,​Object> attributes)
        See Also:
        OrderFulfillment.attributes
      • setTracking

        public void setTracking​(com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking tracking)
        Specified by:
        setTracking in interface com.broadleafcommerce.data.tracking.core.TypedTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking>
        See Also:
        ApplicationJpaTracking
      • canEqual

        protected boolean canEqual​(Object other)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object