public List <Speciality> GetAll(SpecialityFilter filter) { IEnumerable <Speciality> result = base.GetAll(); result = result.Where(s => s.EducationLevel.Any(el => el.ToUpperInvariant() == PostgraduateEducationLevel.ToUpperInvariant())); if (filter != null) { if (!string.IsNullOrWhiteSpace(filter.SpecialityCode)) { result = result.Where(s => s.Code.ToUpperInvariant().Contains(filter.SpecialityCode.ToUpperInvariant())); } if (!string.IsNullOrWhiteSpace(filter.SpecialityName)) { result = result.Where(s => s.Name.ToUpperInvariant().Contains(filter.SpecialityName.ToUpperInvariant())); } if (!string.IsNullOrWhiteSpace(filter.ScientificSpecialityCode)) { result = result.Where(s => s.ScientificSpecialities.Any(d => d.Code.ToUpperInvariant() .Contains(filter.ScientificSpecialityCode.ToUpperInvariant()))); } if (!string.IsNullOrWhiteSpace(filter.ScientificSpecialityName)) { result = result.Where(s => s.ScientificSpecialities.Any(d => d.Name.ToUpperInvariant() .Contains(filter.ScientificSpecialityName.ToUpperInvariant()))); } } return(result.OrderBy(s => s.Name).ToList()); }
public IHttpActionResult Get([FromUri] SpecialityFilter filter) { try { List <SpecialityModel> list = _repository.GetAll(filter).Select(MapEntityToModel).ToList(); var content = new EntitiesListResult <SpecialityModel> { Data = list, Page = -1, PageSize = -1 }; ; content.Total = list.Count; return(Ok(content)); } catch (Exception e) { return(HandleException(e)); } }