Interface IFormRecordMessageDao

    • Method Detail

      • getAllBySenderUserProfile

        List<FormRecordMessage> getAllBySenderUserProfile​(IEntityContext ec,
                                                          UserProfile sender)
        Returns all messages sent by the given user profile.
        Parameters:
        ec - the entity context
        sender - the user profile of the sender
        Returns:
        all messages of the sender
      • getByChatAndUser

        PagedResult<FormRecordMessage> getByChatAndUser​(IEntityContext ec,
                                                        UUID chatUuid,
                                                        IUser user,
                                                        int page,
                                                        int pageSize)
        Finds the messages for the form record chat given by its UUID if the given user can access the chat.
        Parameters:
        ec - entity context for accessing the database.
        chatUuid - the UUID of the chat
        user - to get the form record messages for.
        page - to get.
        pageSize - size of the page to get.
        Returns:
        a list of form record messages the user has access to ordered by their creation instant (desc). null if the chat given by the UUID could not be found.
        See Also:
        getByUser(IEntityContext, IUser)
      • getMessagePage

        PagedResult<BaseFormRecordMessageDTO> getMessagePage​(IEntityContext ec,
                                                             PageQuery pageQuery,
                                                             FormRecordMessagesQuery messagesQuery,
                                                             boolean skipCount)
        Returns a page of form record messages for the given page query and messages query.
        Parameters:
        ec - entity context for database transactions.
        pageQuery - page query to get the messages.
        messagesQuery - messagesQuery to apply to the messages.
        skipCount - whether to skip the count query.
        Returns:
        a list of form record messages in the order defined by the messages query.
        Since:
        8.4.0
      • getByUuid

        FormRecordMessage getByUuid​(IEntityContext ec,
                                    UUID uuid)
        Finds the message for the given UUID.
        Parameters:
        ec - entity context for accessing the database
        uuid - the UUID of the message
        Returns:
        The message with the given UUID
      • getByUuidAndUser

        FormRecordMessage getByUuidAndUser​(IEntityContext ec,
                                           UUID uuid,
                                           IUser requestingUser)
        Finds the message for the given UUID, which the given user can access.
        Parameters:
        ec - entity context for accessing the database
        uuid - the UUID of the message
        requestingUser - user requesting the messages.
        Returns:
        The message with the given UUID which the given user can access and null otherwise.
        See Also:
        getByUser(IEntityContext, IUser)
      • getChatMessages

        List<FormRecordMessage> getChatMessages​(IEntityContext ec,
                                                UUID chatUuid)
        Returns all messages for the given chat UUID ordered by their sent instant (desc). This is intended for displaying the chat in the backoffice inbox.
        Parameters:
        ec - entity context for accessing the database
        chatUuid - the UUID of the chat
        Returns:
        a list of all form record messages for the chat ordered by their sent instant (desc).
      • getDetailsByUuidAndUser

        DetailedFormRecordMessageDTO getDetailsByUuidAndUser​(IEntityContext ec,
                                                             UUID uuid,
                                                             IUser requestingUser,
                                                             Locale locale)
        Returns the detailed form record message for the given UUID.
        Parameters:
        ec - entity context for accessing the database
        uuid - the UUID of the message
        requestingUser - user requesting the messages.
        locale - the locale for which to return the message (metadata)
        Returns:
        The detailed form record message with the given UUID
        Since:
        8.4.0
      • getUnreadByUser

        PagedResult<FormRecordMessage> getUnreadByUser​(IEntityContext ec,
                                                       IUser user,
                                                       int page,
                                                       int pageSize)
        Finds all unread form record messages the given user has access to. Unread messages can only be gotten for users with UserProfiles. For users without a profile all messages will be returned.
        Parameters:
        ec - entity context for database transactions.
        user - to get the unread form record messages for.
        page - to get.
        pageSize - size of the page to get.
        Returns:
        a list of form record messages the user has access to ordered by their creation instant (desc).
        See Also:
        getByUser(IEntityContext, IUser)