Interface TicketService

  • All Known Implementing Classes:
    DefaultTicketService

    public interface TicketService
    Service to provide mechanism to find CsTickets by various attributes. Also provides methods to retrieve lists of Agents, AgentGroups, Priorities, States, Intervention Types and Reasons based on the available instances at runtime.
    Spring Bean ID:
    ticketService
    • Method Detail

      • getAgentGroups

        java.util.List<CsAgentGroupModel> getAgentGroups()
        Retrieves a list of the AgentGroups.
        Returns:
        The list of AgentGroups
      • getAgentGroupsForBaseStore

        java.util.List<CsAgentGroupModel> getAgentGroupsForBaseStore​(BaseStoreModel store)
        Retrieves a list of the AgentGroups for the provided BaseStore
        Parameters:
        store - The BaseStore to retrieve AgentGroups for
        Returns:
        The list of AgentGroups
      • getAgents

        java.util.List<EmployeeModel> getAgents()
        Retrieves a list of the Agents as Employees.
        Returns:
        The list of Agents
      • getAgentsForBaseStore

        java.util.List<EmployeeModel> getAgentsForBaseStore​(BaseStoreModel store)
        Retrieves a list of the Agents as Employees for the provided BaseStore
        Parameters:
        store - The BaseStore to retrieve Agents for
        Returns:
        The list of Agents
      • getEventReasons

        java.util.List<CsEventReason> getEventReasons()
        Retrieves all available Event Reasons in the system.
        Returns:
        The list of Event Reasons
      • getEventsForTicket

        java.util.List<CsTicketEventModel> getEventsForTicket​(CsTicketModel ticket)
        Gets all ticket events for CsTicketModel object.
        Parameters:
        ticket - the CsTicketModel for which to return ticket events.
        Returns:
        A list of ticket events.
      • getTicketEventsForCustomerByTicket

        java.util.List<CsTicketEventModel> getTicketEventsForCustomerByTicket​(CsTicketModel ticket)
        Gets all ticket events for CsTicketModel object excluding private messages.
        Parameters:
        ticket - the CsTicketModel for which to return ticket events.
        Returns:
        A list of ticket events.
      • getInterventionTypes

        java.util.List<CsInterventionType> getInterventionTypes()
        Retrieves all available Intervention Types in the system.
        Returns:
        The list of Intervention Types
      • getResolutionTypes

        java.util.List<CsResolutionType> getResolutionTypes()
        Retrieves all available Resolution Types in the system.
        Returns:
        The list of Resolution Types
      • getTicketCategories

        java.util.List<CsTicketCategory> getTicketCategories()
        Retrieves all available Ticket Categories in the system.
        Returns:
        The list of Ticket Categories
      • getTicketForTicketEvent

        CsTicketModel getTicketForTicketEvent​(CsTicketEventModel ticketEvent)
        Gets the ticket for given CsTicketEventModel object.
        Parameters:
        ticketEvent - the ticket event
        Returns:
        the ticket
      • getTicketForTicketId

        CsTicketModel getTicketForTicketId​(java.lang.String ticketId)
        Lookup a specific ticket by ticket ID
        Parameters:
        ticketId - The id of the ticket to lookup
        Returns:
        The ticket with that Id
      • getTicketPriorities

        java.util.List<CsTicketPriority> getTicketPriorities()
        Retrieves all available Ticket Priorities in the system.
        Returns:
        The list of Ticket Priorities
      • getTicketsForAgent

        java.util.List<CsTicketModel> getTicketsForAgent​(EmployeeModel agent)
        Find all the tickets that are assigned to the Agent.
        Parameters:
        agent - The agent to find assigned tickets for
        Returns:
        A list of tickets matching search criteria
      • getTicketsForAgentGroup

        java.util.List<CsTicketModel> getTicketsForAgentGroup​(CsAgentGroupModel agentGroup)
        Find all the tickets assigned to the AgentGroup.
        Parameters:
        agentGroup - The AgentGroup to find assigned tickets for
        Returns:
        A list of tickets matching search criteria
      • getTicketsForCategory

        java.util.List<CsTicketModel> getTicketsForCategory​(CsTicketCategory... category)
        Find all the tickets that have the provided categories.
        Parameters:
        category - The category/categories for which to return tickets. The number of arguments is variable and may be zero, although zero arguments will return an empty list.
        Returns:
        A list of tickets matching search criteria
      • getTicketsForCustomer

        java.util.List<CsTicketModel> getTicketsForCustomer​(UserModel customer)
        Find all tickets that are associated with the customer.
        Parameters:
        customer - The customer to find tickets for
        Returns:
        A list of tickets matching search criteria
      • getTicketsForOrder

        java.util.List<CsTicketModel> getTicketsForOrder​(OrderModel order)
        Find all the tickets that are associated with the order.
        Parameters:
        order - The order to find tickets for
        Returns:
        A list of tickets matching search criteria
      • getTicketsForPriority

        java.util.List<CsTicketModel> getTicketsForPriority​(CsTicketPriority... priority)
        Find all the tickets that have the provided priorities.
        Parameters:
        priority - The priority/priorities for which to return tickets. The number of arguments is variable and may be zero, although zero arguments will return an empty list.
        Returns:
        A list of tickets matching search criteria
      • getTicketsForResolutionType

        java.util.List<CsTicketModel> getTicketsForResolutionType​(CsResolutionType... resolutionType)
        Find all the tickets that have the provided Resolution Type(s).
        Parameters:
        resolutionType - The Resolution Type(s) for which to return tickets. The number of arguments is variable and may be zero, although zero arguments will return an empty list.
        Returns:
        A list of tickets matching search criteria
      • getTicketsForState

        java.util.List<CsTicketModel> getTicketsForState​(CsTicketState... state)
        Find all the tickets that are in the provided states.
        Parameters:
        state - The state(s) for which to return tickets. The number of arguments is variable and may be zero, although zero arguments will return an empty list.
        Returns:
        A list of tickets matching search criteria
      • getTicketStates

        java.util.List<CsTicketState> getTicketStates()
        Retrieves all available Ticket States in the system.
        Returns:
        The list of Ticket States
      • getTicketType

        CommentTypeModel getTicketType​(java.lang.String type)
        Get the comment type given the code of that type
        Parameters:
        type - The type code of comment type to get
        Returns:
        The comment type represented by the type code
      • getTicketsForCustomerOrderByModifiedTime

        java.util.List<CsTicketModel> getTicketsForCustomerOrderByModifiedTime​(UserModel user)
        Find all tickets that are associated with the customer in order by Modified date and time.
        Parameters:
        user - the UserModel whose tickets to be returned
        Returns:
        List
      • getTicketsForCustomerOrderByModifiedTime

        SearchPageData<CsTicketModel> getTicketsForCustomerOrderByModifiedTime​(UserModel user,
                                                                               BaseSiteModel baseSite,
                                                                               PageableData pageableData)
        Find all tickets that are associated with the customer in order by Modified date and time.
        Parameters:
        user - the UserModel whose tickets to be returned
        baseSite - the base site
        pageableData - the pageable data
        Returns:
        List
      • getAssociatedObject

        AbstractOrderModel getAssociatedObject​(java.lang.String associatedCode,
                                               java.lang.String userUid,
                                               java.lang.String siteUid)
        Extract associatedTo object as AbstractOrderModel
        Parameters:
        associatedCode - code of associated object
        userUid - optional
        siteUid - optional
        Returns:
        AbstractOrderModel, nullable