Class DefaultSalesOrderSimulationService
java.lang.Object
de.hybris.platform.sap.sapsalesordersimulation.service.impl.DefaultSalesOrderSimulationService
- All Implemented Interfaces:
SalesOrderSimulationService
public class DefaultSalesOrderSimulationService
extends Object
implements SalesOrderSimulationService
Sales order simulation API to fetch Price, Stock and credit check
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncheckCreditLimitExceeded(ItemModel cartModel, UserModel user) Gets the credit limit status for the Cart for the user.protected PricingElementDatadeliveryPricingCondition(ItemModel itemModel) protected StringgenerateCode(String prefix, String entryNumber, String code) de.hybris.platform.b2b.services.B2BUnitServicede.hybris.platform.store.services.BaseStoreServicede.hybris.platform.servicelayer.i18n.CommonI18NServiceprotected de.hybris.platform.commerceservices.delivery.DeliveryServiceprotected DoublegetDiscounts(SalesOrderSimulateItemData item, ItemModel itemModel) protected List<PricingElementData>getHeaderLevelPricingElementData(ItemModel itemModel) protected List<SalesOrderSimulateItemRequestData>getItemLevelDetails(ItemModel itemModel) protected List<SalesOrderSimulateItemRequestData>getItemLevelDetailsWithBulkQuantity(ItemModel itemModel) de.hybris.platform.commercefacades.product.PriceDataFactoryList<de.hybris.platform.jalo.order.price.PriceInformation>getPriceDetailsForProduct(ProductModel productModel) Get all price information for given product.getPriceDetailsForProducts(List<ProductModel> productModels) Get the price level information for products.protected SalesOrderSimulationRequestDatagetPriceStockRequestData(ItemModel itemModel, boolean isCreditCheckRequired) protected SalesOrderSimulateItemRequestDatagetSalesOrderSimulateItemRequestData(String salesOrder, String itemNumber, String material, String qty, String plant) protected SalesOrderSimulationOutboundRequestprotected SalesOrderSimulationRequestDatagetSalesOrderSimulationRequestData(String currency, boolean isCreditCheckRequired, String salesOrg, String distributionChannel, String division, UserModel userModel, String orderType) protected SAPDefaultUnitServicegetStockAvailability(ProductModel productModel, BaseStoreModel baseStore) Get the stock level information for the product.protected StockDatagetStockData(List<StockLevelModel> stockLevelList) getStockLevels(ProductModel productModel, Collection<WarehouseModel> warehouses) Get the stock level information in different warehouses for the product.protected List<SalesOrderSimulationRequestData>getStockRequestData(ItemModel itemModel, Collection<WarehouseModel> warehouses) protected de.hybris.platform.servicelayer.user.UserServiceprotected booleanisAllowedProductType(ProductModel productModel) protected booleanisPricingCoditionToBeConsidered(PricingElementData pricingElement, ItemModel itemModel) processResponseData(SalesOrderSimulationData salesOrderSimulationData, ItemModel itemModel) voidsetB2bUnitService(de.hybris.platform.b2b.services.B2BUnitService b2bUnitService) voidsetBaseStoreService(de.hybris.platform.store.services.BaseStoreService baseStoreService) voidsetCartDetails(AbstractOrderModel cartModel) Sets the live stock, price, discounts, delivery & total in cartModel and CartData.voidsetCommonI18NService(de.hybris.platform.servicelayer.i18n.CommonI18NService commonI18NService) voidsetDeliveryService(de.hybris.platform.commerceservices.delivery.DeliveryService deliveryService) voidsetModuleConfigurationAccess(ModuleConfigurationAccess moduleConfigurationAccess) protected voidsetOrderModel(ItemModel itemModel, Map<String, Object> itemInfoMap, double deliveryCost, double paymentCost) voidsetPriceDataFactory(de.hybris.platform.commercefacades.product.PriceDataFactory priceDataFactory) protected voidsetPricingConditions(Map<String, List<SAPPricingConditionModel>> sapPricingCondtionsMap, PricingElementsData pricingElementsData, String salesOrderItemNumber, ItemModel itemModel) voidsetSalesOrderSimulationOutboundRequest(SalesOrderSimulationOutboundRequest salesOrderSimulationOutboundRequest) voidsetSalesordersimulationUtil(SalesOrderSimulationUtil salesordersimulationUtil) voidsetSapUnitService(SAPDefaultUnitService sapUnitService) voidsetUserService(de.hybris.platform.servicelayer.user.UserService userService)
-
Field Details
-
NETAMOUNT
- See Also:
-
TAXAMOUNT
- See Also:
-
COSTAMOUNT
- See Also:
-
SUBTOTAL1AMOUNT
- See Also:
-
SUBTOTAL2AMOUNT
- See Also:
-
SUBTOTAL3AMOUNT
- See Also:
-
SUBTOTAL4AMOUNT
- See Also:
-
SUBTOTAL5AMOUNT
- See Also:
-
SUBTOTAL6AMOUNT
- See Also:
-
CONF_PROP_PRICE_SUBTOTAL
- See Also:
-
CONF_PROP_DISCOUNTS_SUBTOTAL
- See Also:
-
CONF_PROP_TAXES_SUBTOTAL
- See Also:
-
CONF_PROP_DELIVERY_SUBTOTAL
- See Also:
-
CONF_PROP_PAYMENT_COST_SUBTOTAL
- See Also:
-
-
Constructor Details
-
DefaultSalesOrderSimulationService
public DefaultSalesOrderSimulationService()
-
-
Method Details
-
getPriceDetailsForProduct
public List<de.hybris.platform.jalo.order.price.PriceInformation> getPriceDetailsForProduct(ProductModel productModel) Description copied from interface:SalesOrderSimulationServiceGet all price information for given product.- Specified by:
getPriceDetailsForProductin interfaceSalesOrderSimulationService- Parameters:
productModel- the product model- Returns:
- map containing stock information as well as price information.
-
getItemLevelDetails
-
isAllowedProductType
-
getItemLevelDetailsWithBulkQuantity
protected List<SalesOrderSimulateItemRequestData> getItemLevelDetailsWithBulkQuantity(ItemModel itemModel) -
getSalesOrderSimulateItemRequestData
-
getPriceStockRequestData
protected SalesOrderSimulationRequestData getPriceStockRequestData(ItemModel itemModel, boolean isCreditCheckRequired) -
getSalesOrderSimulationRequestData
-
getStockRequestData
protected List<SalesOrderSimulationRequestData> getStockRequestData(ItemModel itemModel, Collection<WarehouseModel> warehouses) -
getHeaderLevelPricingElementData
-
deliveryPricingCondition
-
getPriceDetailsForProducts
public Map<String,List<de.hybris.platform.jalo.order.price.PriceInformation>> getPriceDetailsForProducts(List<ProductModel> productModels) Description copied from interface:SalesOrderSimulationServiceGet the price level information for products.- Specified by:
getPriceDetailsForProductsin interfaceSalesOrderSimulationService- Parameters:
productModels- list of products- Returns:
- List containing priceInformation .
-
setCartDetails
Description copied from interface:SalesOrderSimulationServiceSets the live stock, price, discounts, delivery & total in cartModel and CartData.- Specified by:
setCartDetailsin interfaceSalesOrderSimulationService- Parameters:
cartModel- The cart Model
-
checkCreditLimitExceeded
Description copied from interface:SalesOrderSimulationServiceGets the credit limit status for the Cart for the user.- Specified by:
checkCreditLimitExceededin interfaceSalesOrderSimulationService- Parameters:
cartModel- The cart Modeluser- The User Model- Returns:
- boolean
-
processResponseData
protected Map<String,Object> processResponseData(SalesOrderSimulationData salesOrderSimulationData, ItemModel itemModel) -
generateCode
-
setPricingConditions
protected void setPricingConditions(Map<String, List<SAPPricingConditionModel>> sapPricingCondtionsMap, PricingElementsData pricingElementsData, String salesOrderItemNumber, ItemModel itemModel) -
isPricingCoditionToBeConsidered
protected boolean isPricingCoditionToBeConsidered(PricingElementData pricingElement, ItemModel itemModel) -
getStockData
-
setOrderModel
-
getDiscounts
-
getSalesOrderSimulationOutboundRequest
-
setSalesOrderSimulationOutboundRequest
public void setSalesOrderSimulationOutboundRequest(SalesOrderSimulationOutboundRequest salesOrderSimulationOutboundRequest) -
getDeliveryService
protected de.hybris.platform.commerceservices.delivery.DeliveryService getDeliveryService() -
setDeliveryService
public void setDeliveryService(de.hybris.platform.commerceservices.delivery.DeliveryService deliveryService) -
getUserService
protected de.hybris.platform.servicelayer.user.UserService getUserService() -
setUserService
public void setUserService(de.hybris.platform.servicelayer.user.UserService userService) -
getB2bUnitService
public de.hybris.platform.b2b.services.B2BUnitService getB2bUnitService() -
setB2bUnitService
public void setB2bUnitService(de.hybris.platform.b2b.services.B2BUnitService b2bUnitService) -
getBaseStoreService
public de.hybris.platform.store.services.BaseStoreService getBaseStoreService() -
setBaseStoreService
public void setBaseStoreService(de.hybris.platform.store.services.BaseStoreService baseStoreService) -
getCommonI18NService
public de.hybris.platform.servicelayer.i18n.CommonI18NService getCommonI18NService() -
setCommonI18NService
public void setCommonI18NService(de.hybris.platform.servicelayer.i18n.CommonI18NService commonI18NService) -
getModuleConfigurationAccess
-
setModuleConfigurationAccess
-
getSapUnitService
-
setSapUnitService
-
getPriceDataFactory
public de.hybris.platform.commercefacades.product.PriceDataFactory getPriceDataFactory() -
setPriceDataFactory
public void setPriceDataFactory(de.hybris.platform.commercefacades.product.PriceDataFactory priceDataFactory) -
getSalesordersimulationUtil
-
setSalesordersimulationUtil
-
getStockLevels
public Map<String,SapProductAvailability> getStockLevels(ProductModel productModel, Collection<WarehouseModel> warehouses) Description copied from interface:SalesOrderSimulationServiceGet the stock level information in different warehouses for the product.- Specified by:
getStockLevelsin interfaceSalesOrderSimulationService- Parameters:
productModel- the ProductModelwarehouses- Collection of WarehouseModel- Returns:
- containing SapProductAvailability information for the corresponding plants.
-
getStockAvailability
public SapProductAvailability getStockAvailability(ProductModel productModel, BaseStoreModel baseStore) Description copied from interface:SalesOrderSimulationServiceGet the stock level information for the product.- Specified by:
getStockAvailabilityin interfaceSalesOrderSimulationService- Parameters:
productModel- the ProductModelbaseStore- BaseStoreModel- Returns:
- containing SapProductAvailability information for the corresponding plants.
-