Interface AccommodationMapService

All Known Subinterfaces:
NDCAccommodationMapService, NDCAccommodationMapService, ShoppingAccommodationMapService
All Known Implementing Classes:
DefaultAccommodationMapService, DefaultNDCAccommodationMapService, DefaultNDCAccommodationMapService, DefaultShoppingAccommodationMapService

public interface AccommodationMapService
This interface exposes APIs to find accommodation map and seat map configuration based on different parameters
  • Method Details

    • getAccommodationMap

      AccommodationMapModel getAccommodationMap(String vehicleInfoCode, TransportOfferingModel transportOffering, String route, TravelSectorData travelSectorData)
      This API gets accommodation map from DB based on following rules : 1)Get accommodation map based on vehicle info and transport offering 2)If not found, get accommodation map based on vehicle info and travel sector 3)If not found, get accommodation map based on vehicle info and travel route 4)If not found, get accommodation map based on vehicle info
      Parameters:
      vehicleInfoCode - the vehicle info code
      transportOffering - the transport offering
      route - the route
      travelSectorData - the travel sector data
      Returns:
      accommodation map
    • getAccommodationMap

      AccommodationMapModel getAccommodationMap(String vehicleInfoCode, TransportOfferingModel transportOffering, String route)
      This API gets accommodation map from DB based on following rules : 1)Get accommodation map based on vehicle info and transport offering 2)If not found, get accommodation map based on vehicle info and travel sector 3)If not found, get accommodation map based on vehicle info and travel route 4)If not found, get accommodation map based on vehicle info
      Parameters:
      vehicleInfoCode - the vehicle info code
      transportOffering - the transport offering
      route - the route
      Returns:
      accommodation map
    • getAccommodationMapConfiguration

      List<ConfiguredAccommodationModel> getAccommodationMapConfiguration(AccommodationMapModel accommodationMap)
      Gets seat map configuration (list of configured accommodations based on an accommodation map)
      Parameters:
      accommodationMap - the accommodation map
      Returns:
      accommodation map configuration
    • getSelectedAccommodations

      List<SelectedAccommodationModel> getSelectedAccommodations(TransportOfferingModel transportOffering, List<AccommodationStatus> selectedAccomStatuses, List<OrderStatus> cancelledOrderStatuses)
      Gets all selectedAccommodations for a transport offering, where selected accommodations are in the status passed in selectedAccomStatuses and is part of Orders with status other than cancelledOrderStatuses
      Parameters:
      transportOffering - the transport offering
      selectedAccomStatuses - the selected accom statuses
      cancelledOrderStatuses - the cancelled order statuses
      Returns:
      selected accommodations
    • getAccommodation

      ConfiguredAccommodationModel getAccommodation(String uid)
      Get configured accommodation model (seat) for an uid
      Parameters:
      uid - the uid
      Returns:
      accommodation
    • isAccommodationAvailableForBooking

      boolean isAccommodationAvailableForBooking(ConfiguredAccommodationModel accommodation, String transportOfferingCode, TravellerData travellerData)
      Verifies following cases for the accommodation: 1. If the accommodation is configured in the system. 2. if The accomodation is bookable. 3. if the accommoation is already booked by any other passenger in the transport offering.

      NOTE: IT DOESNOT CHECK IF THE ACCOMMODATION IS ALREADY BOOKED IN THE CURRENT CART.

      Parameters:
      accommodation -
      transportOfferingCode -
      travellerData -
      Returns:
    • isSeatInCart

      boolean isSeatInCart(AbstractOrderModel abstractOrder, ConfiguredAccommodationModel configuredAccommodationModel, String transportOfferingCode)
      Verifies if the accommodation is already added to the cart by the passengers of current booking.
      Parameters:
      abstractOrder -
      configuredAccommodationModel -
      transportOfferingCode -
      Returns:
    • isSeatProductReferencedByFareProductInOrder

      boolean isSeatProductReferencedByFareProductInOrder(ProductModel seatProduct, String transportOfferingCode, AbstractOrderModel abstractOrder)
      Verifies if product is referenced by the fareproduct entry of the cart.
      Parameters:
      seatProduct -
      transportOfferingCode -
      abstractOrder -
      Returns:
    • getSelectedSeatForTraveller

      SelectedAccommodationModel getSelectedSeatForTraveller(String travellerCode, String transportOfferingCode, AbstractOrderModel abstractOrder)
      Fetches the accommodation, already selected by the traveller in the cart based on the label of the traveller.
      Parameters:
      travellerCode - the traveller code
      transportOfferingCode - the transport offering code
      abstractOrder - the abstract order
      Returns:
      the selected seat for traveller
    • isAccommodationAvailableForBooking

      boolean isAccommodationAvailableForBooking(ConfiguredAccommodationModel accommodation, String transportOfferingCode, String travellerSimpleUid)
      Verifies following cases for the accommodation: 1. If the accommodation is configured in the system. 2. if The accomodation is bookable. 3. if the accommoation is already booked by any other passenger in the transport offering.

      NOTE: IT DOESNOT CHECK IF THE ACCOMMODATION IS ALREADY BOOKED IN THE CURRENT CART.

      Parameters:
      accommodation - the accommodation
      transportOfferingCode - the transportOfferingCode
      travellerSimpleUid - the travellerSimpleUid
      Returns:
      true if the accommodation is available for booking.