Class PutawayServiceImpl

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int availableLocationsIn​(List<String> locationGroupNames)
      Get the number of all available Locations in the LocationGroups.
      Optional<org.openwms.common.location.Location> findAndAssignNextLocations​(List<String> stockLocationGroupNames, org.openwms.common.transport.barcode.Barcode barcode, org.openwms.common.location.api.LocationGroupState groupStateIn, org.openwms.common.location.api.LocationGroupState groupStateOut)
      Find assign and return an Location that belong to the LocationGroups identified by the given stockLocationGroupNames and that matches the applied filter criteria.
      List<org.openwms.common.location.Location> findAvailableStockLocations​(List<String> stockLocationGroupNames, org.openwms.common.transport.barcode.Barcode barcode, org.openwms.common.location.api.LocationGroupState groupStateIn, org.openwms.common.location.api.LocationGroupState groupStateOut, int count)
      Find and return all Locations that belong to the LocationGroups identified by the given stockLocationGroupNames and that match the applied filter criteria.
    • Field Detail

      • LOGGER

        private static final org.slf4j.Logger LOGGER
      • transportUnitService

        private final org.openwms.common.transport.TransportUnitService transportUnitService
    • Constructor Detail

      • PutawayServiceImpl

        PutawayServiceImpl​(StockLocationRepository stockLocationRepository,
                           org.openwms.common.transport.TransportUnitService transportUnitService)
    • Method Detail

      • findAvailableStockLocations

        @Measured
        public List<org.openwms.common.location.Location> findAvailableStockLocations​(List<String> stockLocationGroupNames,
                                                                                      org.openwms.common.transport.barcode.Barcode barcode,
                                                                                      org.openwms.common.location.api.LocationGroupState groupStateIn,
                                                                                      org.openwms.common.location.api.LocationGroupState groupStateOut,
                                                                                      int count)
        Find and return all Locations that belong to the LocationGroups identified by the given stockLocationGroupNames and that match the applied filter criteria.
        Specified by:
        findAvailableStockLocations in interface PutawayService
        Parameters:
        stockLocationGroupNames - The names of the LocationGroups to search Locations for
        barcode - The Barcode of the TransportUnit to search a Location for
        groupStateIn - If null this criterion is not applied, otherwise only Locations are considered that match the demanded groupStateIn
        groupStateOut - If null this criterion is not applied, otherwise only Locations are considered that match the demanded groupStateOut
        count - A number of Locations to return. Useful to limit the result set
        Returns:
        All Locations, never null
      • findAndAssignNextLocations

        @Measured
        public Optional<org.openwms.common.location.Location> findAndAssignNextLocations​(List<String> stockLocationGroupNames,
                                                                                         org.openwms.common.transport.barcode.Barcode barcode,
                                                                                         org.openwms.common.location.api.LocationGroupState groupStateIn,
                                                                                         org.openwms.common.location.api.LocationGroupState groupStateOut)
        Find assign and return an Location that belong to the LocationGroups identified by the given stockLocationGroupNames and that matches the applied filter criteria.
        Specified by:
        findAndAssignNextLocations in interface PutawayService
        Parameters:
        stockLocationGroupNames - The names of the LocationGroups to search Locations for
        barcode - The Barcode of the TransportUnit to search a Location for
        groupStateIn - If null this criterion is not applied, otherwise only Locations are considered that match the demanded groupStateIn
        groupStateOut - If null this criterion is not applied, otherwise only Locations are considered that match the demanded groupStateOut
        Returns:
        The assigned Location
      • availableLocationsIn

        @Measured
        public int availableLocationsIn​(List<String> locationGroupNames)
        Get the number of all available Locations in the LocationGroups.
        Specified by:
        availableLocationsIn in interface PutawayService
        Parameters:
        locationGroupNames - The names of the LocationGroups to search for
        Returns:
        The amount of Locations available for infeed and outfeed.