Interface B2BCommerceUnitService

All Known Subinterfaces:
B2BCommerceUnitService
All Known Implementing Classes:
DefaultB2BCommerceUnitService, DefaultB2BCommerceUnitService

public interface B2BCommerceUnitService
A service for unit management within b2b commerce
  • Method Details

    • getOrganization

      Collection<? extends B2BUnitModel> getOrganization()
      A collection of business units based on root unit of an organization to which the parent business unit of the currently logged in customer belongs to
      Returns:
      A collection of units where the root unit is the parent business unit of the currently logged in customer.
    • getBranch

      Collection<? extends B2BUnitModel> getBranch()
      A branch of business units based on the parent unit of the current session user.
      Returns:
      A collection of units where the root unit is the parent business unit of the currently logged in customer.
    • getRootUnit

      <T extends B2BUnitModel> T getRootUnit()
      Gets a Root unit of the organization based on the parent business unit of the session user
      Returns:
      A root unit of an organization a session customer belongs to
      See Also:
    • getParentUnit

      <T extends B2BUnitModel> T getParentUnit()
      Gets a parent unit of the current session user
      Returns:
      The business unit assigned to the current session user.
    • setParentUnit

      void setParentUnit(B2BUnitModel unitModel, B2BUnitModel parentUnit)
      Assign a parent unit to unitModel
      Parameters:
      unitModel - A unit to assign a parent for B2BUnitModel
      parentUnit - The parent unit B2BUnitModel
    • getAllUnitsOfOrganization

      Collection<? extends B2BUnitModel> getAllUnitsOfOrganization()
      Get all the units of a organization for current logged in user
      Returns:
      Collection of units for the organization of the current user
    • getAllowedParentUnits

      Collection<? extends B2BUnitModel> getAllowedParentUnits(B2BUnitModel unit)
      Gets all the allowed parent units for a given B2BUnitModel
      Parameters:
      unit - A unique identifier for a unit
      Returns:
      A collection of B2BUnitModel for the given uid
    • updateBranchInSession

      void updateBranchInSession()
      Updates the branch collection in the session for the current user. Should be called after a new unit creation so that its does not get filter out by the unit branch search restriction.
    • disableUnit

      void disableUnit(String uid)
      Disable unit based on the given uid
      Parameters:
      uid - A unique identifier of B2BUnitModel
    • enableUnit

      void enableUnit(String unit)
      Enable unit based on the given uid
      Parameters:
      unit - A unique identifier of B2BUnitModel
    • getParentUnit

      <T extends B2BUnitModel> T getParentUnit(B2BUnitModel unit)
      Gets parent unit based on the given unit
      Parameters:
      unit - A B2BUnitModel object
      Returns:
      A B2BUnitModel object which denotes the parent unit of the given unit
    • removeAddressEntry

      void removeAddressEntry(String unitUid, String addressId)
      Removes the address from a given unit
      Parameters:
      unitUid - A unique identifier of B2BUnitModel
      addressId - A unique identifier of AddressModel
    • saveAddressEntry

      void saveAddressEntry(B2BUnitModel unitForUid, AddressModel addressModel)
      Sets a given address for a unit
      Parameters:
      unitForUid - A unique identifier of B2BUnitModel
      addressModel - AddressModel object which is getting added to unit
    • getAddressForCode

      AddressModel getAddressForCode(B2BUnitModel unit, String id)
      Gets a AddressModel object for a given unit
      Parameters:
      unit - A unique identifier of B2BUnitModel
      id - A unique identifier of AddressModel
      Returns:
      AddressModel object
    • editAddressEntry

      void editAddressEntry(B2BUnitModel unitModel, AddressModel addressModel)
      Save updated AddressModel object to a unit
      Parameters:
      unitModel - A unique identifier of B2BUnitModel
      addressModel - AddressModel object for given unit
    • getPagedUsersForUnit

      SearchPageData<B2BCustomerModel> getPagedUsersForUnit(PageableData pageableData, String unit)
      Gets list of SearchPageData B2BCustomerModel for a given unit for pagination provided with required pagination parameters with PageableData
      Parameters:
      pageableData - Pagination information
      unit - A unique identifier of B2BUnitModel
      Returns:
      Collection of paginated B2BCostCenterModel objects
    • getUnitForUid

      B2BUnitModel getUnitForUid(String unitUid)
      Gets the unit for uid.
      Parameters:
      unitUid - the unit uid
      Returns:
      the unit for uid