Class JpaOrder
java.lang.Object
com.broadleafcommerce.order.provider.jpa.domain.JpaOrder
- 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.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 JpaOrder
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.search.Indexable, javax.money.CurrencySupplier, com.broadleafcommerce.money.CurrencyConsumer
JPA implementation of
Order
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addFromMeOrderItemMappings
(org.modelmapper.ModelMapper mapper) protected void
addFromMeOrderMappings
(org.modelmapper.ModelMapper mapper) protected void
addToMeOrderItemMappings
(org.modelmapper.ModelMapper mapper) protected void
addToMeOrderMappings
(org.modelmapper.ModelMapper mapper) protected boolean
boolean
org.modelmapper.ModelMapper
fromMe()
protected <O extends com.broadleafcommerce.order.client.domain.Order,
J extends JpaOrder>
OfromMeParentOrderBackReferenceAdder
(org.modelmapper.spi.MappingContext<J, O> mappingContext) List<com.broadleafcommerce.order.common.domain.Adjustment>
javax.money.MonetaryAmount
Class<?>
List<com.broadleafcommerce.order.common.domain.CampaignRef>
The jpa primary key.javax.money.CurrencyUnit
javax.money.MonetaryAmount
javax.money.MonetaryAmount
javax.money.MonetaryAmount
getName()
The use ofFetchMode.SELECT
withBatchSize
is necessary, since there are multipleOneToMany
"bag" collections being loaded and the defaultFetchMode.JOIN
cannot be used due to the potential of duplicates.List<com.broadleafcommerce.order.client.domain.payment.PaymentDistributionDetail>
javax.money.MonetaryAmount
javax.money.MonetaryAmount
getTotal()
javax.money.MonetaryAmount
com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking
List<com.broadleafcommerce.order.common.domain.Voucher>
int
hashCode()
void
preFromMe
(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, Object businessDomain) void
preToMe
(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, Object businessDomain) void
setAccountHierarchy
(List<String> accountHierarchy) void
setAccountHierarchyAsString
(String accountHierarchy) void
setAccountId
(String accountId) void
setAdjustments
(List<com.broadleafcommerce.order.common.domain.Adjustment> adjustments) void
setAdjustmentsTotal
(javax.money.MonetaryAmount adjustmentsTotal) void
setApproverEmail
(String approverEmail) void
setAttributeChoices
(Map<String, com.broadleafcommerce.order.common.domain.AttributeChoiceValue> attributeChoices) void
setAttributes
(Map<String, Object> attributes) void
setCampaignRefs
(List<com.broadleafcommerce.order.common.domain.CampaignRef> campaignRefs) void
setCartCreateDate
(Instant cartCreateDate) void
void
setCartType
(String cartType) void
setCheckoutRequestId
(String checkoutRequestId) void
setContextId
(String contextId) The jpa primary key.void
setCurrency
(javax.money.CurrencyUnit currency) void
setCustomerId
(String customerId) void
setCustomerName
(String customerName) void
setEmailAddress
(String emailAddress) void
setFeesTotal
(javax.money.MonetaryAmount feesTotal) void
setFulfillmentTotal
(javax.money.MonetaryAmount fulfillmentTotal) void
setIncludedTaxAmount
(javax.money.MonetaryAmount includedTaxAmount) void
setInternalAttributes
(Map<String, Object> internalAttributes) void
void
void
setOfferCodes
(List<String> offerCodes) void
setOrderItems
(List<JpaOrderItem> orderItems) The use ofFetchMode.SELECT
withBatchSize
is necessary, since there are multipleOneToMany
"bag" collections being loaded and the defaultFetchMode.JOIN
cannot be used due to the potential of duplicates.void
setOrderNumber
(String orderNumber) void
setPaymentDistributionDetails
(List<com.broadleafcommerce.order.client.domain.payment.PaymentDistributionDetail> paymentDistributionDetails) void
setRootAccountId
(String rootAccountId) void
void
setSubmitDate
(Instant submitDate) void
setSubtotal
(javax.money.MonetaryAmount subtotal) void
setTaxIncludedType
(String taxIncludedType) void
setTotal
(javax.money.MonetaryAmount total) void
setTotalTax
(javax.money.MonetaryAmount totalTax) void
setTracking
(com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking tracking) void
setVouchers
(List<com.broadleafcommerce.order.common.domain.Voucher> vouchers) org.modelmapper.ModelMapper
toMe()
protected <O extends com.broadleafcommerce.order.client.domain.Order,
J extends JpaOrder>
JtoMeParentOrderBackReferenceAdder
(org.modelmapper.spi.MappingContext<O, J> mappingContext) toString()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
postFromMe, postToMe
Methods inherited from interface com.broadleafcommerce.common.messaging.notification.domain.NotificationStateAware
findNotificationState
Methods inherited from interface com.broadleafcommerce.data.tracking.core.Trackable
getDisplay, getNotificationStates, getNotificationStates, setNotificationStates
Methods inherited from interface com.broadleafcommerce.data.tracking.core.TypedTrackable
setTracking
-
Constructor Details
-
JpaOrder
public JpaOrder()
-
-
Method Details
-
fromMe
@NonNull public org.modelmapper.ModelMapper fromMe()- Specified by:
fromMe
in interfacecom.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
-
addFromMeOrderItemMappings
protected void addFromMeOrderItemMappings(org.modelmapper.ModelMapper mapper) -
addFromMeOrderMappings
protected void addFromMeOrderMappings(org.modelmapper.ModelMapper mapper) -
fromMeParentOrderBackReferenceAdder
protected <O extends com.broadleafcommerce.order.client.domain.Order,J extends JpaOrder> O fromMeParentOrderBackReferenceAdder(org.modelmapper.spi.MappingContext<J, O> mappingContext) Used as theTypeMap.setPostConverter(Converter)
forOrder
infromMe()
.Explicitly sets the
OrderItem.getOrder()
parent order back reference for each item inOrder.getOrderItems()
to the parent instance being mapped.As documented in
TypeMap.include(Class, Class)
, extensions will not automatically inherit this converter, and must manually set it on the extended type map.- Parameters:
mappingContext
- the model mapper mapping context- Returns:
- the business-domain order after setting each of its items' parent order reference to itself
-
toMe
@NonNull public org.modelmapper.ModelMapper toMe()- Specified by:
toMe
in interfacecom.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
-
addToMeOrderItemMappings
protected void addToMeOrderItemMappings(org.modelmapper.ModelMapper mapper) -
addToMeOrderMappings
protected void addToMeOrderMappings(org.modelmapper.ModelMapper mapper) -
preFromMe
public void preFromMe(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, @NonNull Object businessDomain) - Specified by:
preFromMe
in interfacecom.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 interfacecom.broadleafcommerce.data.tracking.core.mapping.ModelMapperMappable
-
toMeParentOrderBackReferenceAdder
protected <O extends com.broadleafcommerce.order.client.domain.Order,J extends JpaOrder> J toMeParentOrderBackReferenceAdder(org.modelmapper.spi.MappingContext<O, J> mappingContext) Used as theTypeMap.setPostConverter(Converter)
forJpaOrder
intoMe()
.For each of the parent-order back-references in managed collections like
getOrderItems()
, explicitly sets their value to the order instance being mapped.As documented in
TypeMap.include(Class, Class)
, extensions will not automatically inherit this converter, and must manually set it on the extended type map.- Parameters:
mappingContext
- the model mapper mapping context- Returns:
- the persisted-domain order after setting each of its managed collection items' parent references to itself
-
getBusinessDomainType
- Specified by:
getBusinessDomainType
in interfacecom.broadleafcommerce.data.tracking.core.mapping.BusinessTypeAware
-
setTotalTax
public void setTotalTax(javax.money.MonetaryAmount totalTax) -
getTotalTax
public javax.money.MonetaryAmount getTotalTax() -
setFulfillmentTotal
public void setFulfillmentTotal(javax.money.MonetaryAmount fulfillmentTotal) -
getFulfillmentTotal
public javax.money.MonetaryAmount getFulfillmentTotal() -
setSubtotal
public void setSubtotal(javax.money.MonetaryAmount subtotal) -
getSubtotal
public javax.money.MonetaryAmount getSubtotal() -
setAdjustmentsTotal
public void setAdjustmentsTotal(javax.money.MonetaryAmount adjustmentsTotal) -
getAdjustmentsTotal
public javax.money.MonetaryAmount getAdjustmentsTotal() -
setFeesTotal
public void setFeesTotal(javax.money.MonetaryAmount feesTotal) -
getFeesTotal
public javax.money.MonetaryAmount getFeesTotal() -
getIncludedTaxAmount
public javax.money.MonetaryAmount getIncludedTaxAmount() -
setIncludedTaxAmount
public void setIncludedTaxAmount(javax.money.MonetaryAmount includedTaxAmount) -
setTotal
public void setTotal(javax.money.MonetaryAmount total) -
getTotal
public javax.money.MonetaryAmount getTotal() -
setAccountHierarchyAsString
-
getAccountHierarchyAsString
-
setAccountHierarchy
-
getAccountHierarchy
-
getContextId
The jpa primary key.- Specified by:
getContextId
in interfacecom.broadleafcommerce.data.tracking.core.Trackable
- Returns:
- The jpa primary key
-
getCartId
-
getName
-
getCartType
-
getStatus
-
getApproverEmail
-
getCustomerId
-
getCustomerName
-
getEmailAddress
-
getAccountId
-
getRootAccountId
-
getOrderNumber
-
getCartCreateDate
-
getCheckoutRequestId
-
getSubmitDate
-
getLocale
-
getCurrency
public javax.money.CurrencyUnit getCurrency()- Specified by:
getCurrency
in interfacejavax.money.CurrencySupplier
-
getTaxIncludedType
-
getPaymentDistributionDetails
public List<com.broadleafcommerce.order.client.domain.payment.PaymentDistributionDetail> getPaymentDistributionDetails() -
getOrderItems
The use ofFetchMode.SELECT
withBatchSize
is necessary, since there are multipleOneToMany
"bag" collections being loaded and the defaultFetchMode.JOIN
cannot be used due to the potential of duplicates. -
getAdjustments
-
getOfferCodes
-
getVouchers
-
getCampaignRefs
-
getAttributes
-
getInternalAttributes
-
getAttributeChoices
-
getTracking
public com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking getTracking()- Specified by:
getTracking
in interfacecom.broadleafcommerce.data.tracking.core.Trackable
- See Also:
-
ApplicationJpaTracking
-
setContextId
The jpa primary key.- Specified by:
setContextId
in interfacecom.broadleafcommerce.data.tracking.core.Trackable
- Parameters:
contextId
- The jpa primary key
-
setCartId
-
setName
-
setCartType
-
setStatus
-
setApproverEmail
-
setCustomerId
-
setCustomerName
-
setEmailAddress
-
setAccountId
-
setRootAccountId
-
setOrderNumber
-
setCartCreateDate
-
setCheckoutRequestId
-
setSubmitDate
-
setLocale
-
setCurrency
public void setCurrency(javax.money.CurrencyUnit currency) - Specified by:
setCurrency
in interfacecom.broadleafcommerce.money.CurrencyConsumer
-
setTaxIncludedType
-
setPaymentDistributionDetails
public void setPaymentDistributionDetails(List<com.broadleafcommerce.order.client.domain.payment.PaymentDistributionDetail> paymentDistributionDetails) -
setOrderItems
The use ofFetchMode.SELECT
withBatchSize
is necessary, since there are multipleOneToMany
"bag" collections being loaded and the defaultFetchMode.JOIN
cannot be used due to the potential of duplicates. -
setAdjustments
-
setOfferCodes
-
setVouchers
-
setCampaignRefs
public void setCampaignRefs(List<com.broadleafcommerce.order.common.domain.CampaignRef> campaignRefs) -
setAttributes
-
setInternalAttributes
-
setAttributeChoices
-
setTracking
public void setTracking(com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking tracking) - Specified by:
setTracking
in interfacecom.broadleafcommerce.data.tracking.core.TypedTrackable<com.broadleafcommerce.data.tracking.jpa.filtering.domain.ApplicationJpaTracking>
- See Also:
-
ApplicationJpaTracking
-
toString
-
equals
-
canEqual
-
hashCode
public int hashCode()
-