Class SapOrdermgmtB2BCheckoutFacade
- java.lang.Object
-
- de.hybris.platform.commercefacades.order.impl.DefaultCheckoutFacade
-
- de.hybris.platform.b2bacceleratorfacades.order.impl.DefaultCheckoutFacade
-
- de.hybris.platform.b2bacceleratorfacades.order.impl.DefaultB2BCheckoutFacade
-
- de.hybris.platform.sap.sapcreditcheck.facades.impl.SapCreditCheckB2BCheckoutFacade
-
- de.hybris.platform.sap.sapordermgmtb2bfacades.order.impl.SapOrdermgmtB2BCheckoutFacade
-
- All Implemented Interfaces:
CheckoutFacade
,B2BCheckoutFacade
,CheckoutFacade
- Direct Known Subclasses:
SapOrdermgmtB2BAcceleratorCheckoutFacade
public class SapOrdermgmtB2BCheckoutFacade extends SapCreditCheckB2BCheckoutFacade
SAP specific implementation of a checkout facade
-
-
Constructor Summary
Constructors Constructor Description SapOrdermgmtB2BCheckoutFacade()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
authorizePayment(java.lang.String securityCode)
Authorize payment for the order.boolean
containsTaxValues()
Checks that cart or any of cart entries has TaxValuesvoid
createCartFromOrder(java.lang.String orderCode)
CreatesCartModel
based on an order removes the current session carts and sets the new cart into the session.CCPaymentInfoData
createPaymentSubscription(CCPaymentInfoData paymentInfoData)
Create new payment subscription.Converter<AddressModel,AddressData>
getAddressConverter()
BackendAvailabilityService
getBackendAvailabilityService()
java.util.List<CountryData>
getBillingCountries()
Get the supported billing countries.Converter<CartModel,CartData>
getCartConverter()
CartData
getCheckoutCart()
Method gets checkout cart, if any exist.CheckoutService
getCheckoutService()
java.util.List<B2BDaysOfWeekData>
getDaysOfWeekForReplenishmentCheckoutSummary()
Call the Enum service to fetch the list of days in a week using DayOfWeek enumjava.util.List<CountryData>
getDeliveryCountries()
Get the supported delivery countries.protected DeliveryModeData
getDeliveryMode()
protected I18NService
getI18nService()
org.springframework.context.MessageSource
getMessageSource()
java.util.List<B2BPaymentTypeData>
getPaymentTypes()
Gets the list of possible PaymentTypes for user selection in checkout summaryProductImageHelper
getProductImageHelper()
CartService
getSapCartService()
SapPartnerService
getSapPartnerService()
java.util.List<CardTypeData>
getSupportedCardTypes()
Get supported payment card typesjava.util.List<AddressData>
getSupportedDeliveryAddresses(boolean visibleAddressesOnly)
Get the list of supported delivery addresses.java.util.List<? extends DeliveryModeData>
getSupportedDeliveryModes()
Get the supported delivery modes for the cart.protected void
handleNotSupportedException()
protected void
handleNotSupportedLogging(java.lang.String call)
boolean
hasCheckoutCart()
Check if checkout cart exist.boolean
hasPickUpItems()
Checks if at least one entry in the cart is a pickup entryboolean
isBackendDown()
protected boolean
isSyncOrdermgmtEnabled()
OrderData
placeOrder()
Place order<T extends AbstractOrderData>
TplaceOrder(PlaceOrderData placeOrderData)
Place Order functionvoid
prepareCartForCheckout()
Prepares cart for checkoutboolean
removeDeliveryAddress()
Removes delivery address from session cart.boolean
removeDeliveryMode()
Removes the delivery mode on the cartScheduledCartData
scheduleOrder(TriggerData trigger)
Places the cart that's in the session as a scheduled order scheduled by the Trigger parametervoid
setAddressConverter(Converter<AddressModel,AddressData> addressConverter)
void
setBackendAvailabilityService(BackendAvailabilityService backendAvailabilityService)
void
setCartConverter(Converter<CartModel,CartData> cartConverter)
boolean
setCheapestDeliveryModeForCheckout()
Sets the cheapest delivery mode in the cart when calledvoid
setCheckoutService(CheckoutService checkoutService)
boolean
setDefaultDeliveryAddressForCheckout()
Sets the defaultAddress info on the cart with if current user has a default address infoboolean
setDefaultPaymentInfoForCheckout()
Sets the defaultPayment info on the cart if the current user has a default payment infoboolean
setDeliveryAddress(AddressData usedAddress)
Set the delivery address on the cart.boolean
setDeliveryAddressIfAvailable()
Set delivery address if customer has a default delivery address and is valid for the cartvoid
setDeliveryAddressOnCart(AddressData addressData)
boolean
setDeliveryMode(java.lang.String deliveryModeCode)
Set the delivery mode on the cart Checks if the deliveryMode code is supported.boolean
setDeliveryModeIfAvailable()
Set cheapest delivery mode if the cart has one or more supported delivery modesvoid
setI18nService(I18NService i18nService)
void
setMessageSource(org.springframework.context.MessageSource messageSource)
boolean
setPaymentDetails(java.lang.String paymentInfoId)
Set Payment Details on the cartboolean
setPaymentInfoIfAvailable()
Set payment details if the customer has a default payment detailsvoid
setProductImageHelper(ProductImageHelper productImageHelper)
void
setSapCartService(CartService sapCartService)
void
setSapPartnerService(SapPartnerService sapPartnerService)
CartData
updateCheckoutCart(CartData cartData)
update the checkout cart data-
Methods inherited from class de.hybris.platform.sap.sapcreditcheck.facades.impl.SapCreditCheckB2BCheckoutFacade
getSapCreditCheckService, setSapCreditCheckService
-
Methods inherited from class de.hybris.platform.b2bacceleratorfacades.order.impl.DefaultB2BCheckoutFacade
afterPlaceOrder, beforePlaceOrder, getAbstractOrderGenericDao, getB2bCommentService, getB2bCostCenterConverter, getB2bCostCenterService, getB2bDaysOfWeekConverter, getB2BOrderService, getB2bPaymentTypeDataConverter, getBaseSiteService, getBaseStoreService, getCommerceCartService, getCommerceCheckoutService, getCommerceQuoteUtils, getEventService, getI18NService, getPaymentInfoModelForClonedCart, getScheduledCartConverter, getScheduleOrderService, getTriggerPopulator, getTriggerService, initializeReplenishmentPlacedEvent, isValidCheckoutCart, populateTriggerDataFromPlaceOrderData, resetQuoteRelatedFields, setAbstractOrderGenericDao, setB2bCommentService, setB2bCostCenterConverter, setB2bCostCenterService, setB2bDaysOfWeekConverter, setB2BOrderService, setB2bPaymentTypeDataConverter, setBaseSiteService, setBaseStoreService, setCommerceCartService, setCommerceCheckoutService, setCommerceQuoteUtils, setCostCenterForCart, setCostCenterForCart, setDeliveryAddressForCart, setEventService, setI18NService, setPaymentTypeForCart, setScheduledCartConverter, setScheduleOrderService, setTriggerPopulator, setTriggerService
-
Methods inherited from class de.hybris.platform.b2bacceleratorfacades.order.impl.DefaultCheckoutFacade
getAbstractOrderForCode, getActiveVisibleCostCenters, getPaymentTypesForCheckoutSummary, getVisibleCostCenters, setDefaultPaymentTypeForCheckout, setPaymentTypeSelectedForCheckout, setPurchaseOrderNumber, setQuoteRequestDescription, validateSessionCart
-
Methods inherited from class de.hybris.platform.commercefacades.order.impl.DefaultCheckoutFacade
checkIfCurrentUserIsTheCartUser, convert, createCommerceCheckoutParameter, createDeliveryAddressModel, getAddressDataForId, getAddressReversePopulator, getCardTypeConverter, getCart, getCartFacade, getCartService, getCheckoutCustomerStrategy, getCommerceCardTypeService, getCommonI18NService, getCountries, getCountryConverter, getCreditCardPaymentInfoConverter, getCurrentUserForCheckout, getCustomerAccountService, getDeliveryAddress, getDeliveryAddressForCode, getDeliveryAddressModelForCode, getDeliveryModeConverter, getDeliveryService, getEnumerationService, getModelService, getOrderConverter, getPaymentDetails, getPaymentProvider, getPriceDataFactory, getUserService, getZoneDeliveryModeConverter, hasItemsMatchingPredicate, hasShippingItems, isSupportedDeliveryMode, placeOrder, setAddressReversePopulator, setCardTypeConverter, setCartFacade, setCartService, setCheckoutCustomerStrategy, setCommerceCardTypeService, setCommonI18NService, setCountryConverter, setCreditCardPaymentInfoConverter, setCustomerAccountService, setDeliveryModeConverter, setDeliveryService, setEnumerationService, setModelService, setOrderConverter, setPriceDataFactory, setUserService, setZoneDeliveryModeConverter
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.hybris.platform.commercefacades.order.CheckoutFacade
getAddressDataForId, getCountries, getDeliveryAddressForCode, hasShippingItems
-
-
-
-
Method Detail
-
getCartConverter
public Converter<CartModel,CartData> getCartConverter()
- Returns:
- the cartConverter
-
setCartConverter
public void setCartConverter(Converter<CartModel,CartData> cartConverter)
- Parameters:
cartConverter
- the cartConverter to set
-
isSyncOrdermgmtEnabled
protected boolean isSyncOrdermgmtEnabled()
-
isBackendDown
public boolean isBackendDown()
- Returns:
- Is Backend down?
-
getMessageSource
public org.springframework.context.MessageSource getMessageSource()
-
setMessageSource
public void setMessageSource(org.springframework.context.MessageSource messageSource)
-
getI18nService
protected I18NService getI18nService()
-
setI18nService
public void setI18nService(I18NService i18nService)
-
hasCheckoutCart
public boolean hasCheckoutCart()
Description copied from interface:CheckoutFacade
Check if checkout cart exist.- Specified by:
hasCheckoutCart
in interfaceCheckoutFacade
- Overrides:
hasCheckoutCart
in classDefaultCheckoutFacade
- Returns:
- true if cart exists
-
getSapPartnerService
public SapPartnerService getSapPartnerService()
- Returns:
- the sapPartnerService
-
setSapPartnerService
public void setSapPartnerService(SapPartnerService sapPartnerService)
- Parameters:
sapPartnerService
- the sapPartnerService to set
-
getAddressConverter
public Converter<AddressModel,AddressData> getAddressConverter()
- Overrides:
getAddressConverter
in classDefaultCheckoutFacade
- Returns:
- the addressConverter
-
setAddressConverter
public void setAddressConverter(Converter<AddressModel,AddressData> addressConverter)
- Overrides:
setAddressConverter
in classDefaultCheckoutFacade
- Parameters:
addressConverter
- the addressConverter to set
-
getBackendAvailabilityService
public BackendAvailabilityService getBackendAvailabilityService()
- Returns:
- the backendAvailabilityService
-
setBackendAvailabilityService
public void setBackendAvailabilityService(BackendAvailabilityService backendAvailabilityService)
- Parameters:
backendAvailabilityService
- the backendAvailabilityService to set
-
getCheckoutCart
public CartData getCheckoutCart()
Description copied from interface:CheckoutFacade
Method gets checkout cart, if any exist.- Specified by:
getCheckoutCart
in interfaceCheckoutFacade
- Overrides:
getCheckoutCart
in classDefaultCheckoutFacade
- Returns:
- cart data if cart exists
-
getSupportedDeliveryAddresses
public java.util.List<AddressData> getSupportedDeliveryAddresses(boolean visibleAddressesOnly)
Description copied from interface:CheckoutFacade
Get the list of supported delivery addresses.- Specified by:
getSupportedDeliveryAddresses
in interfaceCheckoutFacade
- Overrides:
getSupportedDeliveryAddresses
in classDefaultCheckoutFacade
- Parameters:
visibleAddressesOnly
- include only the visible addresses- Returns:
- the supported delivery addresses
-
setDeliveryAddress
public boolean setDeliveryAddress(AddressData usedAddress)
Description copied from interface:CheckoutFacade
Set the delivery address on the cart.- Specified by:
setDeliveryAddress
in interfaceCheckoutFacade
- Overrides:
setDeliveryAddress
in classDefaultCheckoutFacade
- Parameters:
usedAddress
- the address, If null the delivery address is removed from the session cart.- Returns:
- true if operation succeeded
-
setDeliveryAddressOnCart
public void setDeliveryAddressOnCart(AddressData addressData)
- Parameters:
addressData
-
-
removeDeliveryAddress
public boolean removeDeliveryAddress()
Description copied from interface:CheckoutFacade
Removes delivery address from session cart.- Specified by:
removeDeliveryAddress
in interfaceCheckoutFacade
- Overrides:
removeDeliveryAddress
in classDefaultCheckoutFacade
- Returns:
- true if delivery address was removed from cart
-
getSupportedDeliveryModes
public java.util.List<? extends DeliveryModeData> getSupportedDeliveryModes()
Description copied from interface:CheckoutFacade
Get the supported delivery modes for the cart.- Specified by:
getSupportedDeliveryModes
in interfaceCheckoutFacade
- Overrides:
getSupportedDeliveryModes
in classDefaultCheckoutFacade
- Returns:
- the collection of supported delivery modes
-
setDeliveryAddressIfAvailable
public boolean setDeliveryAddressIfAvailable()
Description copied from interface:CheckoutFacade
Set delivery address if customer has a default delivery address and is valid for the cart- Specified by:
setDeliveryAddressIfAvailable
in interfaceCheckoutFacade
- Overrides:
setDeliveryAddressIfAvailable
in classDefaultCheckoutFacade
- Returns:
- true if successful
-
setDeliveryModeIfAvailable
public boolean setDeliveryModeIfAvailable()
Description copied from interface:CheckoutFacade
Set cheapest delivery mode if the cart has one or more supported delivery modes- Specified by:
setDeliveryModeIfAvailable
in interfaceCheckoutFacade
- Overrides:
setDeliveryModeIfAvailable
in classDefaultCheckoutFacade
- Returns:
- true if successful
-
setPaymentInfoIfAvailable
public boolean setPaymentInfoIfAvailable()
Description copied from interface:CheckoutFacade
Set payment details if the customer has a default payment details- Specified by:
setPaymentInfoIfAvailable
in interfaceCheckoutFacade
- Overrides:
setPaymentInfoIfAvailable
in classDefaultCheckoutFacade
- Returns:
- true if successful
-
setDeliveryMode
public boolean setDeliveryMode(java.lang.String deliveryModeCode)
Description copied from interface:CheckoutFacade
Set the delivery mode on the cart Checks if the deliveryMode code is supported. If the code is not supported it does not get set and a false is returned.- Specified by:
setDeliveryMode
in interfaceCheckoutFacade
- Overrides:
setDeliveryMode
in classDefaultCheckoutFacade
- Parameters:
deliveryModeCode
- the delivery mode- Returns:
- true if successful
-
getDeliveryMode
protected DeliveryModeData getDeliveryMode()
- Overrides:
getDeliveryMode
in classDefaultCheckoutFacade
-
removeDeliveryMode
public boolean removeDeliveryMode()
Description copied from interface:CheckoutFacade
Removes the delivery mode on the cart- Specified by:
removeDeliveryMode
in interfaceCheckoutFacade
- Overrides:
removeDeliveryMode
in classDefaultCheckoutFacade
- Returns:
- true if successfully removed.
-
getDeliveryCountries
public java.util.List<CountryData> getDeliveryCountries()
Description copied from interface:CheckoutFacade
Get the supported delivery countries. The list is sorted alphabetically.- Specified by:
getDeliveryCountries
in interfaceCheckoutFacade
- Overrides:
getDeliveryCountries
in classDefaultCheckoutFacade
- Returns:
- list of supported delivery countries.
-
getBillingCountries
public java.util.List<CountryData> getBillingCountries()
Description copied from interface:CheckoutFacade
Get the supported billing countries. The list is sorted alphabetically.- Specified by:
getBillingCountries
in interfaceCheckoutFacade
- Overrides:
getBillingCountries
in classDefaultCheckoutFacade
- Returns:
- list of supported billing countries.
-
setPaymentDetails
public boolean setPaymentDetails(java.lang.String paymentInfoId)
Description copied from interface:CheckoutFacade
Set Payment Details on the cart- Specified by:
setPaymentDetails
in interfaceCheckoutFacade
- Overrides:
setPaymentDetails
in classDefaultCheckoutFacade
- Parameters:
paymentInfoId
- the ID of the payment info to set as the default payment- Returns:
- true if operation succeeded
-
getSupportedCardTypes
public java.util.List<CardTypeData> getSupportedCardTypes()
Description copied from interface:CheckoutFacade
Get supported payment card types- Specified by:
getSupportedCardTypes
in interfaceCheckoutFacade
- Overrides:
getSupportedCardTypes
in classDefaultCheckoutFacade
- Returns:
- list of supported card types
-
createPaymentSubscription
public CCPaymentInfoData createPaymentSubscription(CCPaymentInfoData paymentInfoData)
Description copied from interface:CheckoutFacade
Create new payment subscription. Pass in a CCPaymentInfoData containing the customer's card details. A new payment subscription will be created, and the sorted card details will be returned in a new CCPaymentInfoData.- Specified by:
createPaymentSubscription
in interfaceCheckoutFacade
- Overrides:
createPaymentSubscription
in classDefaultCheckoutFacade
- Parameters:
paymentInfoData
- the data instance containing the customers cart details- Returns:
- the newly created payment info data
-
authorizePayment
public boolean authorizePayment(java.lang.String securityCode)
Description copied from interface:CheckoutFacade
Authorize payment for the order. The order must have a subscription payment details set on it before the payment can be authorized.- Specified by:
authorizePayment
in interfaceCheckoutFacade
- Overrides:
authorizePayment
in classDefaultB2BCheckoutFacade
- Parameters:
securityCode
- the 3 or 4 number CV2 or CVV security code- Returns:
- true if successful
-
placeOrder
public OrderData placeOrder() throws InvalidCartException
Description copied from interface:CheckoutFacade
Place order- Specified by:
placeOrder
in interfaceCheckoutFacade
- Overrides:
placeOrder
in classDefaultCheckoutFacade
- Returns:
- orderData representing the order
- Throws:
InvalidCartException
- is thrown by underlyingCartValidator
-
containsTaxValues
public boolean containsTaxValues()
Description copied from interface:CheckoutFacade
Checks that cart or any of cart entries has TaxValues- Specified by:
containsTaxValues
in interfaceCheckoutFacade
- Overrides:
containsTaxValues
in classDefaultCheckoutFacade
- Returns:
- true if the cart or its entries has TaxValues
-
prepareCartForCheckout
public void prepareCartForCheckout()
Description copied from interface:CheckoutFacade
Prepares cart for checkout- Specified by:
prepareCartForCheckout
in interfaceCheckoutFacade
- Overrides:
prepareCartForCheckout
in classDefaultCheckoutFacade
-
setDefaultPaymentInfoForCheckout
public boolean setDefaultPaymentInfoForCheckout()
Description copied from interface:CheckoutFacade
Sets the defaultPayment info on the cart if the current user has a default payment info- Specified by:
setDefaultPaymentInfoForCheckout
in interfaceCheckoutFacade
- Overrides:
setDefaultPaymentInfoForCheckout
in classDefaultCheckoutFacade
- Returns:
- true if successful
-
setDefaultDeliveryAddressForCheckout
public boolean setDefaultDeliveryAddressForCheckout()
Description copied from interface:CheckoutFacade
Sets the defaultAddress info on the cart with if current user has a default address info- Specified by:
setDefaultDeliveryAddressForCheckout
in interfaceCheckoutFacade
- Overrides:
setDefaultDeliveryAddressForCheckout
in classDefaultCheckoutFacade
- Returns:
- true if successful
-
setCheapestDeliveryModeForCheckout
public boolean setCheapestDeliveryModeForCheckout()
Description copied from interface:CheckoutFacade
Sets the cheapest delivery mode in the cart when called- Specified by:
setCheapestDeliveryModeForCheckout
in interfaceCheckoutFacade
- Overrides:
setCheapestDeliveryModeForCheckout
in classDefaultCheckoutFacade
- Returns:
- boolean if successful
-
hasPickUpItems
public boolean hasPickUpItems()
Description copied from interface:CheckoutFacade
Checks if at least one entry in the cart is a pickup entry- Specified by:
hasPickUpItems
in interfaceCheckoutFacade
- Overrides:
hasPickUpItems
in classDefaultCheckoutFacade
- Returns:
- true if even one pickup entry is found in the cart
-
getDaysOfWeekForReplenishmentCheckoutSummary
public java.util.List<B2BDaysOfWeekData> getDaysOfWeekForReplenishmentCheckoutSummary()
Description copied from interface:B2BCheckoutFacade
Call the Enum service to fetch the list of days in a week using DayOfWeek enum- Specified by:
getDaysOfWeekForReplenishmentCheckoutSummary
in interfaceB2BCheckoutFacade
- Specified by:
getDaysOfWeekForReplenishmentCheckoutSummary
in interfaceCheckoutFacade
- Overrides:
getDaysOfWeekForReplenishmentCheckoutSummary
in classDefaultB2BCheckoutFacade
- Returns:
- List of days in a week
-
scheduleOrder
public ScheduledCartData scheduleOrder(TriggerData trigger)
Description copied from interface:B2BCheckoutFacade
Places the cart that's in the session as a scheduled order scheduled by the Trigger parameter- Specified by:
scheduleOrder
in interfaceB2BCheckoutFacade
- Specified by:
scheduleOrder
in interfaceCheckoutFacade
- Overrides:
scheduleOrder
in classDefaultB2BCheckoutFacade
- Returns:
- ScheduledCartData created
-
createCartFromOrder
public void createCartFromOrder(java.lang.String orderCode)
Description copied from interface:B2BCheckoutFacade
CreatesCartModel
based on an order removes the current session carts and sets the new cart into the session.- Specified by:
createCartFromOrder
in interfaceB2BCheckoutFacade
- Specified by:
createCartFromOrder
in interfaceCheckoutFacade
- Overrides:
createCartFromOrder
in classDefaultB2BCheckoutFacade
- Parameters:
orderCode
- The unique identifier for an order
-
getSapCartService
public CartService getSapCartService()
- Returns:
- the sapCartService
-
setSapCartService
public void setSapCartService(CartService sapCartService)
- Parameters:
sapCartService
- the sapCartService to set
-
handleNotSupportedException
protected void handleNotSupportedException()
-
handleNotSupportedLogging
protected void handleNotSupportedLogging(java.lang.String call)
-
getCheckoutService
public CheckoutService getCheckoutService()
- Returns:
- the checkoutService
-
setCheckoutService
public void setCheckoutService(CheckoutService checkoutService)
- Parameters:
checkoutService
- the checkoutService to set
-
getProductImageHelper
public ProductImageHelper getProductImageHelper()
- Returns:
- the productImageHelper
-
setProductImageHelper
public void setProductImageHelper(ProductImageHelper productImageHelper)
- Parameters:
productImageHelper
- the productImageHelper to set
-
updateCheckoutCart
public CartData updateCheckoutCart(CartData cartData)
Description copied from interface:CheckoutFacade
update the checkout cart data- Specified by:
updateCheckoutCart
in interfaceCheckoutFacade
- Overrides:
updateCheckoutCart
in classDefaultB2BCheckoutFacade
- Returns:
- CartData
-
getPaymentTypes
public java.util.List<B2BPaymentTypeData> getPaymentTypes()
Description copied from interface:CheckoutFacade
Gets the list of possible PaymentTypes for user selection in checkout summary- Specified by:
getPaymentTypes
in interfaceCheckoutFacade
- Overrides:
getPaymentTypes
in classDefaultB2BCheckoutFacade
- Returns:
- B2BPaymentTypeEnum
-
placeOrder
public <T extends AbstractOrderData> T placeOrder(PlaceOrderData placeOrderData) throws InvalidCartException
Description copied from interface:CheckoutFacade
Place Order function- Specified by:
placeOrder
in interfaceCheckoutFacade
- Overrides:
placeOrder
in classSapCreditCheckB2BCheckoutFacade
- Returns:
- OrderData
- Throws:
InvalidCartException
-
-