public class StoreOrderManager
extends atg.commerce.order.SimpleOrderManager
The class extends the ATG SimpleOrderManager. The main functionality added to this class is related to gift services. The business logic for addition and removal of gift message and gift wrap is here.
Also included in this class is the logic for building a set of AddCommerceItemInfo objects based on an Order.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string.
|
mOrderManager, mOrderMergeListeners, mUserPricingModelsPath, sResourceBundle
Constructor and Description |
---|
StoreOrderManager() |
Modifier and Type | Method and Description |
---|---|
void |
addGiftMessage(StoreOrderImpl pOrder,
java.lang.String pMessageTo,
java.lang.String pMessage,
java.lang.String pMessageFrom)
Adds the gift message to the order's special instructions.
|
void |
addGiftWrap(StoreOrderImpl pOrder,
java.lang.String pSkuId,
java.lang.String pProductId)
Creates and adds the gift wrap commerce item to the order.
|
void |
addRemoveGiftServices(StoreOrderImpl pOrder,
boolean pAddGiftWrap,
boolean pAddGiftMessage,
java.lang.String pGiftWrapSkuId,
java.lang.String pGiftWrapProductId)
This method can be used by form handlers to add / remove gift message or
gift wrap from the order.
|
int |
checkStatus(atg.commerce.order.CommerceItem pCommItem)
This method uses the inventory manager to query the availability status of the
given commerce item.
|
atg.commerce.order.Order |
cloneOrder(java.lang.String pOrderId,
atg.repository.RepositoryItem pProfile)
This method creates an order's duplicate with a new ID.
|
atg.commerce.order.Order |
createOrder(java.lang.String pProfileId,
java.lang.String pOrderId,
atg.commerce.pricing.OrderPriceInfo pOrderPriceInfo,
atg.commerce.pricing.TaxPriceInfo pTaxPriceInfo,
atg.commerce.pricing.ShippingPriceInfo pShippingPriceInfo,
java.lang.String pOrderType)
Calls OrderManager.createOrder to create a new Order object using the class mapped to the
given name in pOrderType and whose id will be that which is supplied in pOrderId.
|
atg.commerce.states.CommerceItemStates |
getCommerceItemStates() |
java.lang.String |
getCouponCode(StoreOrderImpl pOrder)
This method calculates a coupon code used by the order pOrder.
|
atg.commerce.gifts.GiftlistManager |
getGiftlistManager()
The gift list manager.
|
java.lang.String |
getOMSTransactionId()
Use the OMSTransactionIdGenerator to get the next Transaction Id.
|
atg.service.idgen.IdGenerator |
getOMSTransactionIdGenerator()
The OMSTransactionIdGenerator.
|
java.lang.String |
getOMSTransactionIdSpace()
The OMSTransactionIdSpace.
|
boolean |
isAdjustInventoryOnCheckout() |
void |
manageInventoryOnCheckout(atg.commerce.order.Order pOrder)
This method sets the state of each commerce item based on the SKU's current
inventory availability.
|
protected void |
priceOrderTotal(atg.commerce.order.Order pOrder)
This method is a shortcut to the
PricingTools.priceOrderTotal(atg.commerce.order.Order) method. |
void |
removeGiftMessage(StoreOrderImpl pOrder)
Removes the gift message from the order.
|
void |
removeGiftWrap(StoreOrderImpl pOrder)
Removes the gift wrap commerce item from the order.
|
void |
setAdjustInventoryOnCheckout(boolean pAdjustInventoryOnCheckout) |
void |
setCommerceItemStates(atg.commerce.states.CommerceItemStates pCommerceItemStates) |
void |
setGiftlistManager(atg.commerce.gifts.GiftlistManager pGiftlistManager)
Specifies the GiftlistManager.
|
void |
setOMSTransactionIdGenerator(atg.service.idgen.IdGenerator pOMSTransactionIdGenerator)
Specifies the OMSTransactionIdGenerator.
|
void |
setOMSTransactionIdSpace(java.lang.String pOMSTransactionIdSpace)
Specifies the OMSTransactionIdSpace.
|
addItemToShippingGroup, addItemToShippingGroup, addItemToShippingGroup, moveItemToShippingGroup, moveItemToShippingGroup, moveItemToShippingGroup, removeItemFromShippingGroup, removeItemFromShippingGroup, removeItemFromShippingGroup, removeItemFromShippingGroup, removeItemFromShippingGroup
acceptQuote, addAsSeparateItemToOrder, addExtraComponentsToMap, addHandlingInstructionToShippingGroup, addItemAmountToPaymentGroup, addItemQuantityToShippingGroup, addItemToOrder, addOrder, addOrderAmountToPaymentGroup, addOrderMergeListener, addPaymentGroupToOrder, addPaymentGroupToOrder, addRemainingItemAmountToPaymentGroup, addRemainingItemQuantityToShippingGroup, addRemainingOrderAmountToPaymentGroup, addRemainingShippingCostToPaymentGroup, addRemainingTaxAmountToPaymentGroup, addShippingCostAmountToPaymentGroup, addShippingGroupToOrder, addTaxAmountToPaymentGroup, applyOrderAmountToPaymentGroup, areOrdersMergeable, areOrdersMergeableByOrganizationId, areOrdersMergeableBySiteId, cloneShippingGroup, compareElectronicShippingGroups, compareGiftlistHandlingInstructions, compareHandlingInstructions, compareHardgoodShippingGroups, compareInStorePickupShippingGroups, compareShippingGroupPropertyContainers, completeQuote, copyAddress, copyAddress, copyAddress, copyHandlingInstruction, createAdminServlet, createCommerceItem, createCommerceItem, createCommerceItem, createCommerceItem, createCommerceItem, createCommerceItem, createCommerceItem, createCommerceItem, createHandlingInstruction, createHandlingInstruction, createHandlingInstruction, createHandlingInstruction, createOrder, createOrder, createOrder, createOrder, createOrder, createPaymentGroup, createPaymentGroup, createPaymentGroupOrderRelationship, createRelationship, createShippingGroup, createShippingGroup, createShippingGroup, doStartService, gatherUniqueCatalogRefIds, getAdminServletBeanFilterId, getAllCommerceItemRelationships, getAllOrderRelationships, getAllPaymentGroupRelationships, getAllShippingGroupRelationships, getBeanFilterResponseGenerator, getBeanFilterService, getCatalogTools, getCommerceItemItemDescriptorName, getCommerceItemManager, getCommerceItemOrderPropertyName, getCommerceItemsFromPaymentGroup, getCommerceItemsFromShippingGroup, getCostCenterItemDescriptorName, getCostCenterOrderPropertyName, getCurrentDate, getDateRangeQuery, getDebugOrderRepositoryItemUpdateTransaction, getDefaultLocale, getDefaultOrderByDirection, getDefaultOrderByProperty, getHandlingInstructionManager, getHandlingInstructionsForCommerceItem, getJNDIContext, getOrderCommerceItemsPropertyName, getOrderCostCentersPropertyName, getOrderCountForProfile, getOrderCountForProfileInState, getOrderForCommerceItem, getOrderForCostCenter, getOrderForPaymentGroup, getOrderForRelationship, getOrderForShippingGroup, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfile, getOrderIdsForProfileWithinDateRange, getOrderIdsWithinDateRange, getOrderItemDescriptorName, getOrderManager, getOrderPaymentGroupsPropertyName, getOrderQueries, getOrderRelationshipsOfClass, getOrderRelationshipsPropertyName, getOrdersForProfile, getOrdersForProfile, getOrdersForProfile, getOrdersForProfile, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrdersForProfileInState, getOrderShippingGroupsPropertyName, getOrderSiteIdPropertyName, getOrderTools, getOrderVersionPropertyName, getPaymentGroupCommerceItemRelationship, getPaymentGroupItemDescriptorName, getPaymentGroupManager, getPaymentGroupOrderPropertyName, getPaymentGroupOrderRelationship, getPaymentGroupShippingGroupRelationship, getPipelineManager, getProcessOrderMap, getRelationshipItemDescriptorName, getRelationshipOrderPropertyName, getRemainingQuantityForShippingGroup, getResource, getResource, getShipItemRelsForRange, getShippingGroupByDescription, getShippingGroupCommerceItemRelationship, getShippingGroupItemDescriptorName, getShippingGroupManager, getShippingGroupOrderPropertyName, getSiteGroupManager, getUnassignedQuantityForCommerceItem, getUniqueCatalogRefIds, getUserPricingModelsPath, getValidOrderProcessingStates, getValidProcessOrderErrorStates, initializeCreditCard, initializeDefaultPropertyValues, initializeGiftCertificate, isCreateSGRelationshipsOnMerge, isOrderStateValidForProcessing, isTransactionMarkedAsRollBack, loadOrder, loadOrders, markTransactionForRollback, mergeOrders, mergeOrders, orderExists, processOrder, processOrder, processOrder, processOrder, processOrderWithReprice, processOrderWithReprice, recalculatePaymentGroupAmounts, rejectQuote, removeAllCommerceItemsFromOrder, removeAllHandlingInstructionsFromShippingGroup, removeAllPaymentGroupsFromOrder, removeAllRelationshipsFromCommerceItem, removeAllRelationshipsFromPaymentGroup, removeAllRelationshipsFromShippingGroup, removeAllShippingGroupsFromOrder, removeEmptyPaymentGroups, removeEmptyShippingGroups, removeHandlingInstructionFromShippingGroup, removeHandlingInstructionsFromShippingGroup, removeItemAmountFromPaymentGroup, removeItemFromOrder, removeItemFromPaymentGroupInternal, removeItemQuantityFromShippingGroup, removeOrder, removeOrderAmountFromPaymentGroup, removeOrderFromPaymentGroupInternal, removeOrderMergeListener, removePaymentGroupFromOrder, removeRemainingItemAmountFromPaymentGroup, removeRemainingItemQuantityFromShippingGroup, removeRemainingOrderAmountFromPaymentGroup, removeRemainingShippingCostFromPaymentGroup, removeRemainingTaxAmountFromPaymentGroup, removeShippingCostAmountFromPaymentGroup, removeShippingCostFromPaymentGroupInternal, removeShippingGroupFromOrder, removeTaxAmountFromPaymentGroup, requestQuote, resetOrder, resetOrderCommerceItemRelationships, returnCommerceItem, sendOrderMergeEvent, setAdminServletBeanFilterId, setBeanFilterResponseGenerator, setBeanFilterService, setCommerceItemItemDescriptorName, setCommerceItemManager, setCommerceItemOrderPropertyName, setCostCenterItemDescriptorName, setCostCenterOrderPropertyName, setCreateSGRelationshipsOnMerge, setCurrentDate, setDebugOrderRepositoryItemUpdateTransaction, setDefaultLocale, setDefaultOrderByDirection, setDefaultOrderByProperty, setHandlingInstructionManager, setOrderCommerceItemsPropertyName, setOrderCostCentersPropertyName, setOrderItemDescriptorName, setOrderPaymentGroupsPropertyName, setOrderQueries, setOrderRelationshipsPropertyName, setOrderShippingGroupsPropertyName, setOrderSiteIdPropertyName, setOrderTools, setOrderVersionPropertyName, setPaymentGroupItemDescriptorName, setPaymentGroupManager, setPaymentGroupOrderPropertyName, setRelationshipItemDescriptorName, setRelationshipOrderPropertyName, setShippingGroupItemDescriptorName, setShippingGroupManager, setShippingGroupOrderPropertyName, setSiteGroupManager, setUserPricingModelsPath, setValidOrderProcessingStates, setValidProcessOrderErrorStates, splitShippingGroup, splitShippingGroup, splitShippingGroupWithImplicitRelationships, updateOrder, validateOrder, validateOrder, validateOrder
addLogListener, doStopService, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService, toString
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public static final java.lang.String CLASS_VERSION
public boolean isAdjustInventoryOnCheckout()
public void setAdjustInventoryOnCheckout(boolean pAdjustInventoryOnCheckout)
pAdjustInventoryOnCheckout
- - boolean indicating if inventory should be decremented on checkout.public atg.commerce.states.CommerceItemStates getCommerceItemStates()
public void setCommerceItemStates(atg.commerce.states.CommerceItemStates pCommerceItemStates)
pCommerceItemStates
- - the commerce item states component.public void setGiftlistManager(atg.commerce.gifts.GiftlistManager pGiftlistManager)
pGiftlistManager
- - a GiftlistManager
value.public atg.commerce.gifts.GiftlistManager getGiftlistManager()
GiftlistManager
value.public void setOMSTransactionIdGenerator(atg.service.idgen.IdGenerator pOMSTransactionIdGenerator)
pOMSTransactionIdGenerator
- - a OMSTransactionIdGenerator
value.public atg.service.idgen.IdGenerator getOMSTransactionIdGenerator()
OMSTransactionIdGenerator
value.public void setOMSTransactionIdSpace(java.lang.String pOMSTransactionIdSpace)
pOMSTransactionIdSpace
- - a OMSTransactionIdSpace
value.public java.lang.String getOMSTransactionIdSpace()
OMSTransactionIdSpace
value.public void addGiftMessage(StoreOrderImpl pOrder, java.lang.String pMessageTo, java.lang.String pMessage, java.lang.String pMessageFrom) throws atg.commerce.CommerceException
pOrder
- - the order to remove gift wrap from.pMessageTo
- - the "message to:" field.pMessage
- - the message body.pMessageFrom
- - the "message from:" field.atg.commerce.CommerceException
- if an error occurs removing item from order.public void removeGiftMessage(StoreOrderImpl pOrder) throws atg.commerce.CommerceException
pOrder
- - the order to remove gift wrap from.atg.commerce.CommerceException
- if an error occurs removing item from order.public void addRemoveGiftServices(StoreOrderImpl pOrder, boolean pAddGiftWrap, boolean pAddGiftMessage, java.lang.String pGiftWrapSkuId, java.lang.String pGiftWrapProductId) throws atg.commerce.CommerceException
pOrder
- - The order.pAddGiftWrap
- - boolean value indicating whether or not to add gift wrap.pAddGiftMessage
- - boolean value indicating whether or not to add gift message.pGiftWrapSkuId
- - String value indicating Sku Id of the gift wrapped.pGiftWrapProductId
- - String value indicating Product Id of the gift wrapped.atg.commerce.CommerceException
public void addGiftWrap(StoreOrderImpl pOrder, java.lang.String pSkuId, java.lang.String pProductId) throws atg.commerce.CommerceException
pOrder
- - the order to add gift wrap to.pSkuId
- - SKU id.pProductId
- - product id.atg.commerce.CommerceException
- if error creating item or adding item to order.public void removeGiftWrap(StoreOrderImpl pOrder) throws atg.commerce.CommerceException
pOrder
- - the order to remove gift wrap from.atg.commerce.CommerceException
- if an error occurs removing item from order.public atg.commerce.order.Order cloneOrder(java.lang.String pOrderId, atg.repository.RepositoryItem pProfile) throws atg.commerce.CommerceException
pOrderId
- base order, specified by its ID.pProfile
- new order will be created on behalf of this user.atg.commerce.CommerceException
- if unable to create the order.protected final void priceOrderTotal(atg.commerce.order.Order pOrder) throws atg.commerce.pricing.PricingException
PricingTools.priceOrderTotal(atg.commerce.order.Order)
method.pOrder
- order to be re-priced.atg.commerce.pricing.PricingException
- if unable to re-price the order specified.public void manageInventoryOnCheckout(atg.commerce.order.Order pOrder) throws atg.commerce.inventory.InventoryException
pOrder
- Order whose commerce items statuses are to be updated in inventory.atg.commerce.inventory.InventoryException
- if an error occurspublic int checkStatus(atg.commerce.order.CommerceItem pCommItem) throws atg.commerce.inventory.InventoryException
pCommItem
- commerce item whose status is to be checked in inventory.atg.commerce.inventory.InventoryException
- if an error occurs.public java.lang.String getOMSTransactionId()
public atg.commerce.order.Order createOrder(java.lang.String pProfileId, java.lang.String pOrderId, atg.commerce.pricing.OrderPriceInfo pOrderPriceInfo, atg.commerce.pricing.TaxPriceInfo pTaxPriceInfo, atg.commerce.pricing.ShippingPriceInfo pShippingPriceInfo, java.lang.String pOrderType) throws atg.commerce.CommerceException
Calls OrderManager.createOrder to create a new Order object using the class mapped to the given name in pOrderType and whose id will be that which is supplied in pOrderId. Populates the Order with the supplied data.
Sets shipping method to the shipping groups the same as profile's default shipping method.
createOrder
in class atg.commerce.order.OrderManager
pProfileId
- - the id of the Profile object which this Order belongs to.pOrderId
- - the id which will be assigned to the Order.pOrderPriceInfo
- - the OrderPriceInfo object for this Order.pTaxPriceInfo
- - the TaxPriceInfo object for this Order.pShippingPriceInfo
- - the ShippingPriceInfo object for the default ShippingGroup.pOrderType
- - the name that is mapped in the OrderTools.properties file to the class of
the desired type to create.atg.commerce.CommerceException
- indicates that a severe error occurred while performing a commerce operation.public java.lang.String getCouponCode(StoreOrderImpl pOrder) throws atg.commerce.CommerceException
pOrder
- Order to be inspected.null
if none of coupons used.atg.commerce.CommerceException
- If we are unable to get the profile from the repository.