Class DefaultProductAvailabilityStrategy

    • Constructor Detail

      • DefaultProductAvailabilityStrategy

        public DefaultProductAvailabilityStrategy()
    • Method Detail

      • parse

        public java.lang.String parse​(java.util.Map<WarehouseModel,​java.lang.Integer> quantities,
                                      java.lang.String productCode,
                                      java.util.Date date,
                                      LanguageModel language)
        Converted the mapped quantities in a textual representation. The default templates will generate output like ...
          Warehouse: {warehouse} Product: {product} Availability: {availability} Date: {date}
          ...
          Warehouse: {warehouse} Product: {product} Availability: {availability} Date: {date}
          Total: {total}
         
        Specified by:
        parse in interface ProductAvailabilityStrategy
        Parameters:
        quantities - the mapped quantities
        productCode - the product for which the quantities belongs to
        date - the date of the availability (unused yet)
        language - the language used for the localization process
      • parse

        public java.lang.String parse​(java.util.Map<WarehouseModel,​java.util.Date> quantities,
                                      java.lang.String productCode,
                                      int quantity,
                                      LanguageModel language)
        Converted the mapped availability in a textual representation. The default templates will generate output like ...
          Warehouse: {warehouse} Product: {product} Availability: {availability} Date: {date}
          ...
          Warehouse: {warehouse} Product: {product} Availability: {availability} Date: {date}
          Total: {total}
         
        Specified by:
        parse in interface ProductAvailabilityStrategy
        Parameters:
        quantities - the mapped availability dates
      • getAvailability

        public java.util.Map<WarehouseModel,​java.lang.Integer> getAvailability​(java.lang.String productCode,
                                                                                     java.util.List<WarehouseModel> warehouses,
                                                                                     java.util.Date date)
        Gets the product quantity for the specified product, warehouses and date.
        Specified by:
        getAvailability in interface ProductAvailabilityStrategy
        Parameters:
        warehouses - the warehouses
        productCode - code of the product
        date - the date the specified quantity has to be available at least. ... will NOT be evaluated by this implementation !!!
        Returns:
        Returns mapped available quantity of product in all specified warehouses.
      • getAvailability

        public java.util.Map<WarehouseModel,​java.util.Date> getAvailability​(java.lang.String productCode,
                                                                                  java.util.List<WarehouseModel> warehouses,
                                                                                  int preOrderQuantity)
        Returns product availability, passing product, and quantity as parameters.
        Specified by:
        getAvailability in interface ProductAvailabilityStrategy
        Parameters:
        productCode - code of the product
        warehouses - the warehouses
        preOrderQuantity - the asked min. preOrderQuantity
        Returns:
        Returns the date, when the questioned quantity will be available
      • setI18nService

        public void setI18nService​(I18NService i18nService)
      • setBestMatchStrategy

        public void setBestMatchStrategy​(BestMatchStrategy bestMatchStrategy)
        Parameters:
        bestMatchStrategy - the bestMatchStrategy to set
      • setStockLevelDao

        public void setStockLevelDao​(StockLevelDao stockLevelDao)