Interface TmaBpoGuidedSellingFacade

All Known Implementing Classes:
DefaultTmaBpoGuidedSellingFacade

public interface TmaBpoGuidedSellingFacade
Facade is responsible for getting all information for Guided Selling Feature for BPO
Since:
6.7
  • Method Details

    • getProductsAssociatedWithGroups

      ProductSearchPageData<SearchStateData,ProductData> getProductsAssociatedWithGroups(String groupId, PageableData pageableData, String searchQuery, String bpoCode, Integer groupNumber)
      Initiate a new or refine an existing search for bundle products based on BPO id and Group id.
      Parameters:
      groupId - The calculated Group of TmaBundledProductOfferingModel of the root Bundled Product Offering, from where TmaSimpleProductOfferingModel is added
      pageableData - PageableData the pageable data
      searchQuery - the search query for the Search page data
      bpoCode - the BPO code ProductModel.CODE for which guided selling journey is started
      groupNumber - The group identifying the entry or entry group to which TmaBundledProductOfferingModel is added to the cart, can be empty
      Returns:
      ProductSearchPageData
    • getCalculatedStepsForBPO

      Map<String,GuidedSellingStepData> getCalculatedStepsForBPO(String bpoCode)
      fetch the calculated steps to configure a BPO
      Parameters:
      bpoCode - the bpoCode for which Journey needs to be calculated
      Returns:
      the map with GuidedSellingStepData as value and calculated group Id as keys
    • getDashBoardForBPO

      GuidedSellingDashBoardData getDashBoardForBPO(String bpoCode, Integer groupNumber)
      Fetch the dash board data For the BPO guided Selling Journey
      Parameters:
      groupNumber - The group identifying the entry or entry group to which TmaBundledProductOfferingModel is added to the cart , can be null if no entry is added for a particular journey
      bpoCode - the bpoCode for which Journey needs to be calculated
      Returns:
      GuidedSellingDashBoardData The guided selling dash board data for a the given BPO
    • getFirstStepForBPO

      String getFirstStepForBPO(String bpoCode)
      Fetch the first step for given BPO Code
      Parameters:
      bpoCode - TmaBundledProductOfferingModel code
      Returns:
      step name Return first key of hash map if Given bpoCode TmaBundledProductOfferingModel has list of child's or list of groups otherwise return the ModelNotFoundException if null empty is return by given BPO code
    • validateAndGetBPOEntryGroup

      EntryGroup validateAndGetBPOEntryGroup(String bpoCode, Integer groupNumber)
      validate and Fetch the EntryGroup data for the corresponding BPO
      Parameters:
      bpoCode - the bpoCode for which Journey needs to be calculated
      groupNumber - The group identifying the entry or entry group to which TmaBundledProductOfferingModel is added to the cart , can be null if no entry is added for a particular journey
      Returns:
      EntryGroup The EntryGroup data for a the given BPO
    • getDashBoardForBPO

      GuidedSellingDashBoardData getDashBoardForBPO(String bpoCode, String groupId, Integer groupNumber)
      Fetch the dash board data For the BPO guided Selling Journey for the corresponding groupId
      Parameters:
      groupNumber - The EntryGroup to which TmaBundledProductOfferingModel is added to the cart , can be null if no entry is added for a particular journey
      bpoCode - the bpoCode for which Journey needs to be calculated
      groupId - the bpo groupId for which Journey needs to be calculated
      Returns:
      GuidedSellingDashBoardData The guided selling dash board data for a the given BPO