Beispiel #1
0
        public async Task <List <GetEventListModel> > SearchForEvent(EventSearchFilter filter)
        {
            var repositoryFilter = _mapper.Map <RepositoryEventSearchFilter>(filter);
            var entities         = await _eventRepository.SearchForEvent(repositoryFilter);

            return(_mapper.Map <List <GetEventListModel> >(entities));
        }
Beispiel #2
0
        public async Task <ActionResult <List <GetEventListModel> > > SearchForEvent(EventSearchFilter eventSearchFilter)
        {
            var validationResult = _eventValidation.ValidateSearchForEvent(eventSearchFilter);

            if (!validationResult.ValidationResult)
            {
                return(BadRequest(validationResult.ValidationMessage));
            }
            return(await _eventLogic.SearchForEvent(eventSearchFilter));
        }
Beispiel #3
0
        public (bool ValidationResult, string ValidationMessage) ValidateSearchForEvent(EventSearchFilter eventSearchFilter)
        {
            if (eventSearchFilter.MinAge.HasValue && eventSearchFilter.MaxAge.HasValue && eventSearchFilter.MinAge > eventSearchFilter.MaxAge)
            {
                return(false, ErrorDictionary.GetErrorMessage(15, _culture));
            }
            if (eventSearchFilter.Status.HasValue && !Enum.IsDefined(typeof(EventStatus), eventSearchFilter.Status))
            {
                return(false, ErrorDictionary.GetErrorMessage(13, _culture));
            }
            if (eventSearchFilter.Type.HasValue && !Enum.IsDefined(typeof(EventType), eventSearchFilter.Type))
            {
                return(false, ErrorDictionary.GetErrorMessage(14, _culture));
            }
            var cities = _cityLogic.GetCities().Result;

            if (eventSearchFilter.CityId.HasValue)
            {
                if (!cities.Any(x => x.CityId == eventSearchFilter.CityId))
                {
                    return(false, ErrorDictionary.GetErrorMessage(30, _culture));
                }
            }
            return(true, string.Empty);
        }
 public EventsModel EventSearch(EventSearchFilter filter = null)
 {
     var request = EventbriteRequest.Get("event_search", filter);
     return ExecuteRequest<EventsModel>(request);
 }