Exemplo n.º 1
0
        public CollectionOperationResult <EventModel> GetRecords(EventSourceParameters parameters)
        {
            try
            {
                var rawModels = Repository
                                .GetAsync(i =>
                                          (parameters.PersonIds.Any() || parameters.PersonIds.Contains(i.PersonId)) &&
                                          (String.IsNullOrEmpty(parameters.KeyPhrase) ||
                                           i.Content.Contains(parameters.KeyPhrase,
                                                              StringComparison.InvariantCultureIgnoreCase)))
                                .Result;

                var orderedModels = rawModels.OrderByDescending(model => model.EventDate).AsQueryable();
                var pagedModels   = PagesList <EventModel> .Init(orderedModels, parameters.PageNumber, parameters.PerPage);

                return(CollectionSuccess(OperationTypes.Read, pagedModels));
            }
            catch (Exception e)
            {
                return(CollectionError(OperationTypes.Read, ServerMessages.CannotLoadRecords));
            }
        }
 private PagesList <PersonModel> ToPagesList(List <PersonModel> result)
 {
     //TODO
     return(PagesList <PersonModel> .Init(result, 1, result.Count()));
 }