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 booleanauthorizePayment(java.lang.String securityCode)Authorize payment for the order.booleancontainsTaxValues()Checks that cart or any of cart entries has TaxValuesvoidcreateCartFromOrder(java.lang.String orderCode)CreatesCartModelbased on an order removes the current session carts and sets the new cart into the session.CCPaymentInfoDatacreatePaymentSubscription(CCPaymentInfoData paymentInfoData)Create new payment subscription.Converter<AddressModel,AddressData>getAddressConverter()BackendAvailabilityServicegetBackendAvailabilityService()java.util.List<CountryData>getBillingCountries()Get the supported billing countries.Converter<CartModel,CartData>getCartConverter()CartDatagetCheckoutCart()Method gets checkout cart, if any exist.CheckoutServicegetCheckoutService()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 DeliveryModeDatagetDeliveryMode()protected I18NServicegetI18nService()org.springframework.context.MessageSourcegetMessageSource()java.util.List<B2BPaymentTypeData>getPaymentTypes()Gets the list of possible PaymentTypes for user selection in checkout summaryProductImageHelpergetProductImageHelper()CartServicegetSapCartService()SapPartnerServicegetSapPartnerService()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 voidhandleNotSupportedException()protected voidhandleNotSupportedLogging(java.lang.String call)booleanhasCheckoutCart()Check if checkout cart exist.booleanhasPickUpItems()Checks if at least one entry in the cart is a pickup entrybooleanisBackendDown()protected booleanisSyncOrdermgmtEnabled()OrderDataplaceOrder()Place order<T extends AbstractOrderData>
TplaceOrder(PlaceOrderData placeOrderData)Place Order functionvoidprepareCartForCheckout()Prepares cart for checkoutbooleanremoveDeliveryAddress()Removes delivery address from session cart.booleanremoveDeliveryMode()Removes the delivery mode on the cartScheduledCartDatascheduleOrder(TriggerData trigger)Places the cart that's in the session as a scheduled order scheduled by the Trigger parametervoidsetAddressConverter(Converter<AddressModel,AddressData> addressConverter)voidsetBackendAvailabilityService(BackendAvailabilityService backendAvailabilityService)voidsetCartConverter(Converter<CartModel,CartData> cartConverter)booleansetCheapestDeliveryModeForCheckout()Sets the cheapest delivery mode in the cart when calledvoidsetCheckoutService(CheckoutService checkoutService)booleansetDefaultDeliveryAddressForCheckout()Sets the defaultAddress info on the cart with if current user has a default address infobooleansetDefaultPaymentInfoForCheckout()Sets the defaultPayment info on the cart if the current user has a default payment infobooleansetDeliveryAddress(AddressData usedAddress)Set the delivery address on the cart.booleansetDeliveryAddressIfAvailable()Set delivery address if customer has a default delivery address and is valid for the cartvoidsetDeliveryAddressOnCart(AddressData addressData)booleansetDeliveryMode(java.lang.String deliveryModeCode)Set the delivery mode on the cart Checks if the deliveryMode code is supported.booleansetDeliveryModeIfAvailable()Set cheapest delivery mode if the cart has one or more supported delivery modesvoidsetI18nService(I18NService i18nService)voidsetMessageSource(org.springframework.context.MessageSource messageSource)booleansetPaymentDetails(java.lang.String paymentInfoId)Set Payment Details on the cartbooleansetPaymentInfoIfAvailable()Set payment details if the customer has a default payment detailsvoidsetProductImageHelper(ProductImageHelper productImageHelper)voidsetSapCartService(CartService sapCartService)voidsetSapPartnerService(SapPartnerService sapPartnerService)CartDataupdateCheckoutCart(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:CheckoutFacadeCheck if checkout cart exist.- Specified by:
hasCheckoutCartin interfaceCheckoutFacade- Overrides:
hasCheckoutCartin 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:
getAddressConverterin classDefaultCheckoutFacade- Returns:
- the addressConverter
-
setAddressConverter
public void setAddressConverter(Converter<AddressModel,AddressData> addressConverter)
- Overrides:
setAddressConverterin 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:CheckoutFacadeMethod gets checkout cart, if any exist.- Specified by:
getCheckoutCartin interfaceCheckoutFacade- Overrides:
getCheckoutCartin classDefaultCheckoutFacade- Returns:
- cart data if cart exists
-
getSupportedDeliveryAddresses
public java.util.List<AddressData> getSupportedDeliveryAddresses(boolean visibleAddressesOnly)
Description copied from interface:CheckoutFacadeGet the list of supported delivery addresses.- Specified by:
getSupportedDeliveryAddressesin interfaceCheckoutFacade- Overrides:
getSupportedDeliveryAddressesin classDefaultCheckoutFacade- Parameters:
visibleAddressesOnly- include only the visible addresses- Returns:
- the supported delivery addresses
-
setDeliveryAddress
public boolean setDeliveryAddress(AddressData usedAddress)
Description copied from interface:CheckoutFacadeSet the delivery address on the cart.- Specified by:
setDeliveryAddressin interfaceCheckoutFacade- Overrides:
setDeliveryAddressin 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:CheckoutFacadeRemoves delivery address from session cart.- Specified by:
removeDeliveryAddressin interfaceCheckoutFacade- Overrides:
removeDeliveryAddressin classDefaultCheckoutFacade- Returns:
- true if delivery address was removed from cart
-
getSupportedDeliveryModes
public java.util.List<? extends DeliveryModeData> getSupportedDeliveryModes()
Description copied from interface:CheckoutFacadeGet the supported delivery modes for the cart.- Specified by:
getSupportedDeliveryModesin interfaceCheckoutFacade- Overrides:
getSupportedDeliveryModesin classDefaultCheckoutFacade- Returns:
- the collection of supported delivery modes
-
setDeliveryAddressIfAvailable
public boolean setDeliveryAddressIfAvailable()
Description copied from interface:CheckoutFacadeSet delivery address if customer has a default delivery address and is valid for the cart- Specified by:
setDeliveryAddressIfAvailablein interfaceCheckoutFacade- Overrides:
setDeliveryAddressIfAvailablein classDefaultCheckoutFacade- Returns:
- true if successful
-
setDeliveryModeIfAvailable
public boolean setDeliveryModeIfAvailable()
Description copied from interface:CheckoutFacadeSet cheapest delivery mode if the cart has one or more supported delivery modes- Specified by:
setDeliveryModeIfAvailablein interfaceCheckoutFacade- Overrides:
setDeliveryModeIfAvailablein classDefaultCheckoutFacade- Returns:
- true if successful
-
setPaymentInfoIfAvailable
public boolean setPaymentInfoIfAvailable()
Description copied from interface:CheckoutFacadeSet payment details if the customer has a default payment details- Specified by:
setPaymentInfoIfAvailablein interfaceCheckoutFacade- Overrides:
setPaymentInfoIfAvailablein classDefaultCheckoutFacade- Returns:
- true if successful
-
setDeliveryMode
public boolean setDeliveryMode(java.lang.String deliveryModeCode)
Description copied from interface:CheckoutFacadeSet 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:
setDeliveryModein interfaceCheckoutFacade- Overrides:
setDeliveryModein classDefaultCheckoutFacade- Parameters:
deliveryModeCode- the delivery mode- Returns:
- true if successful
-
getDeliveryMode
protected DeliveryModeData getDeliveryMode()
- Overrides:
getDeliveryModein classDefaultCheckoutFacade
-
removeDeliveryMode
public boolean removeDeliveryMode()
Description copied from interface:CheckoutFacadeRemoves the delivery mode on the cart- Specified by:
removeDeliveryModein interfaceCheckoutFacade- Overrides:
removeDeliveryModein classDefaultCheckoutFacade- Returns:
- true if successfully removed.
-
getDeliveryCountries
public java.util.List<CountryData> getDeliveryCountries()
Description copied from interface:CheckoutFacadeGet the supported delivery countries. The list is sorted alphabetically.- Specified by:
getDeliveryCountriesin interfaceCheckoutFacade- Overrides:
getDeliveryCountriesin classDefaultCheckoutFacade- Returns:
- list of supported delivery countries.
-
getBillingCountries
public java.util.List<CountryData> getBillingCountries()
Description copied from interface:CheckoutFacadeGet the supported billing countries. The list is sorted alphabetically.- Specified by:
getBillingCountriesin interfaceCheckoutFacade- Overrides:
getBillingCountriesin classDefaultCheckoutFacade- Returns:
- list of supported billing countries.
-
setPaymentDetails
public boolean setPaymentDetails(java.lang.String paymentInfoId)
Description copied from interface:CheckoutFacadeSet Payment Details on the cart- Specified by:
setPaymentDetailsin interfaceCheckoutFacade- Overrides:
setPaymentDetailsin 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:CheckoutFacadeGet supported payment card types- Specified by:
getSupportedCardTypesin interfaceCheckoutFacade- Overrides:
getSupportedCardTypesin classDefaultCheckoutFacade- Returns:
- list of supported card types
-
createPaymentSubscription
public CCPaymentInfoData createPaymentSubscription(CCPaymentInfoData paymentInfoData)
Description copied from interface:CheckoutFacadeCreate 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:
createPaymentSubscriptionin interfaceCheckoutFacade- Overrides:
createPaymentSubscriptionin 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:CheckoutFacadeAuthorize payment for the order. The order must have a subscription payment details set on it before the payment can be authorized.- Specified by:
authorizePaymentin interfaceCheckoutFacade- Overrides:
authorizePaymentin 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:CheckoutFacadePlace order- Specified by:
placeOrderin interfaceCheckoutFacade- Overrides:
placeOrderin classDefaultCheckoutFacade- Returns:
- orderData representing the order
- Throws:
InvalidCartException- is thrown by underlyingCartValidator
-
containsTaxValues
public boolean containsTaxValues()
Description copied from interface:CheckoutFacadeChecks that cart or any of cart entries has TaxValues- Specified by:
containsTaxValuesin interfaceCheckoutFacade- Overrides:
containsTaxValuesin classDefaultCheckoutFacade- Returns:
- true if the cart or its entries has TaxValues
-
prepareCartForCheckout
public void prepareCartForCheckout()
Description copied from interface:CheckoutFacadePrepares cart for checkout- Specified by:
prepareCartForCheckoutin interfaceCheckoutFacade- Overrides:
prepareCartForCheckoutin classDefaultCheckoutFacade
-
setDefaultPaymentInfoForCheckout
public boolean setDefaultPaymentInfoForCheckout()
Description copied from interface:CheckoutFacadeSets the defaultPayment info on the cart if the current user has a default payment info- Specified by:
setDefaultPaymentInfoForCheckoutin interfaceCheckoutFacade- Overrides:
setDefaultPaymentInfoForCheckoutin classDefaultCheckoutFacade- Returns:
- true if successful
-
setDefaultDeliveryAddressForCheckout
public boolean setDefaultDeliveryAddressForCheckout()
Description copied from interface:CheckoutFacadeSets the defaultAddress info on the cart with if current user has a default address info- Specified by:
setDefaultDeliveryAddressForCheckoutin interfaceCheckoutFacade- Overrides:
setDefaultDeliveryAddressForCheckoutin classDefaultCheckoutFacade- Returns:
- true if successful
-
setCheapestDeliveryModeForCheckout
public boolean setCheapestDeliveryModeForCheckout()
Description copied from interface:CheckoutFacadeSets the cheapest delivery mode in the cart when called- Specified by:
setCheapestDeliveryModeForCheckoutin interfaceCheckoutFacade- Overrides:
setCheapestDeliveryModeForCheckoutin classDefaultCheckoutFacade- Returns:
- boolean if successful
-
hasPickUpItems
public boolean hasPickUpItems()
Description copied from interface:CheckoutFacadeChecks if at least one entry in the cart is a pickup entry- Specified by:
hasPickUpItemsin interfaceCheckoutFacade- Overrides:
hasPickUpItemsin classDefaultCheckoutFacade- Returns:
- true if even one pickup entry is found in the cart
-
getDaysOfWeekForReplenishmentCheckoutSummary
public java.util.List<B2BDaysOfWeekData> getDaysOfWeekForReplenishmentCheckoutSummary()
Description copied from interface:B2BCheckoutFacadeCall the Enum service to fetch the list of days in a week using DayOfWeek enum- Specified by:
getDaysOfWeekForReplenishmentCheckoutSummaryin interfaceB2BCheckoutFacade- Specified by:
getDaysOfWeekForReplenishmentCheckoutSummaryin interfaceCheckoutFacade- Overrides:
getDaysOfWeekForReplenishmentCheckoutSummaryin classDefaultB2BCheckoutFacade- Returns:
- List of days in a week
-
scheduleOrder
public ScheduledCartData scheduleOrder(TriggerData trigger)
Description copied from interface:B2BCheckoutFacadePlaces the cart that's in the session as a scheduled order scheduled by the Trigger parameter- Specified by:
scheduleOrderin interfaceB2BCheckoutFacade- Specified by:
scheduleOrderin interfaceCheckoutFacade- Overrides:
scheduleOrderin classDefaultB2BCheckoutFacade- Returns:
- ScheduledCartData created
-
createCartFromOrder
public void createCartFromOrder(java.lang.String orderCode)
Description copied from interface:B2BCheckoutFacadeCreatesCartModelbased on an order removes the current session carts and sets the new cart into the session.- Specified by:
createCartFromOrderin interfaceB2BCheckoutFacade- Specified by:
createCartFromOrderin interfaceCheckoutFacade- Overrides:
createCartFromOrderin 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:CheckoutFacadeupdate the checkout cart data- Specified by:
updateCheckoutCartin interfaceCheckoutFacade- Overrides:
updateCheckoutCartin classDefaultB2BCheckoutFacade- Returns:
- CartData
-
getPaymentTypes
public java.util.List<B2BPaymentTypeData> getPaymentTypes()
Description copied from interface:CheckoutFacadeGets the list of possible PaymentTypes for user selection in checkout summary- Specified by:
getPaymentTypesin interfaceCheckoutFacade- Overrides:
getPaymentTypesin classDefaultB2BCheckoutFacade- Returns:
- B2BPaymentTypeEnum
-
placeOrder
public <T extends AbstractOrderData> T placeOrder(PlaceOrderData placeOrderData) throws InvalidCartException
Description copied from interface:CheckoutFacadePlace Order function- Specified by:
placeOrderin interfaceCheckoutFacade- Overrides:
placeOrderin classSapCreditCheckB2BCheckoutFacade- Returns:
- OrderData
- Throws:
InvalidCartException
-
-