protected virtual IQueryable <WebHookEntity> BuildQuery(WebhookSearchCriteria searchCriteria, IWebHookRepository repository)
        {
            var query = repository.WebHooks;

            if (searchCriteria.IsActive.HasValue)
            {
                query = repository.WebHooks.Where(x => x.IsActive == searchCriteria.IsActive);
            }

            if (!string.IsNullOrWhiteSpace(searchCriteria.SearchPhrase))
            {
                query = query.Where(x => x.Name.Contains(searchCriteria.SearchPhrase));
            }

            if (!searchCriteria.EventIds.IsNullOrEmpty())
            {
                query = query.Where(x => x.IsAllEvents || x.Events.Any(y => searchCriteria.EventIds.Contains(y.EventId)));
            }

            return(query);
        }