java.lang.Object
de.hybris.platform.b2ctelcofulfillmentprocess.strategy.impl.SplitByWarehouse
All Implemented Interfaces:
de.hybris.platform.ordersplitting.strategy.SplittingStrategy

public class SplitByWarehouse extends Object implements de.hybris.platform.ordersplitting.strategy.SplittingStrategy
  • Constructor Details

    • SplitByWarehouse

      public SplitByWarehouse()
  • Method Details

    • splitForWarehouses

      protected List<de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup> splitForWarehouses(de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup orderEntryList)
    • prepareWarehouses

      protected List<WarehouseModel> prepareWarehouses(de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup todoEntryList, de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup workingOrderEntryList, de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup emptyOrderEntryList, List<WarehouseModel> tmpWarehouseResult, de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup tmpOrderEntryResult)
    • getPossibleWarehouses

      protected List<WarehouseModel> getPossibleWarehouses(AbstractOrderEntryModel orderEntry)
    • chooseBestWarehouse

      protected WarehouseModel chooseBestWarehouse(de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup orderEntries)
      Choose best warehouse this function is called by getWarehouseList after we have set of possible warehouses.
      Parameters:
      orderEntries - the order entries
      Returns:
      the warehouse model
    • sortOrderEntryBeforeWarehouseSplitting

      protected de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup sortOrderEntryBeforeWarehouseSplitting(de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup listOrderEntry)
      Sort order entry before warehouse splitting.
      Parameters:
      listOrderEntry - the list order entry
      Returns:
      the list< order entry model>
    • perform

      public List<de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup> perform(List<de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup> orderEntryGroup)
      Specified by:
      perform in interface de.hybris.platform.ordersplitting.strategy.SplittingStrategy
    • afterSplitting

      public void afterSplitting(de.hybris.platform.ordersplitting.strategy.impl.OrderEntryGroup group, ConsignmentModel createdOne)
      Specified by:
      afterSplitting in interface de.hybris.platform.ordersplitting.strategy.SplittingStrategy
    • getCommerceAvailabilityCalculationStrategy

      protected de.hybris.platform.commerceservices.stock.strategies.CommerceAvailabilityCalculationStrategy getCommerceAvailabilityCalculationStrategy()
      Returns:
      the commerceAvailabilityCalculationStrategy
    • setCommerceAvailabilityCalculationStrategy

      public void setCommerceAvailabilityCalculationStrategy(de.hybris.platform.commerceservices.stock.strategies.CommerceAvailabilityCalculationStrategy commerceAvailabilityCalculationStrategy)
      Parameters:
      commerceAvailabilityCalculationStrategy - the commerceAvailabilityCalculationStrategy to set
    • getStockService

      protected de.hybris.platform.stock.StockService getStockService()
      Returns:
      the stockService
    • setStockService

      public void setStockService(de.hybris.platform.stock.StockService stockService)
      Parameters:
      stockService - the stockService to set