public async Task <IActionResult> SearchContactsAsync(SearchContactsViewModel searchModel) { try { ContactSearchDto searchDto = new ContactSearchDto { Name = searchModel.Name, TelephoneNumber1 = searchModel.TelephoneNumber1, TelephoneNumber2 = searchModel.TelephoneNumber2, Address = searchModel.Address, Email = searchModel.Email, Profession = searchModel.Profession, CompanyId = searchModel.CompanyId }; var contacts = await contactService.SearchContactsAsync(searchDto); ContactsListViewModel viewModel = new ContactsListViewModel() { Contacts = contacts, Companies = await companyService.GetAsync() }; return(View("Views/Contact/ContactsList.cshtml", viewModel)); } catch (Exception ex) { ErrorViewModel errorModel = new ErrorViewModel(); errorModel.ErrorMessage = ex.Message.ToString(); return(View("Views/Shared/Error.cshtml", errorModel)); } }
public async Task <List <ContactDto> > SearchContactsAsync(ContactSearchDto searchDto) { var contacts = await dbContext.Contact.Where(c => ((searchDto.Name == null) || ((searchDto.Name != null) && c.Name == searchDto.Name)) && ((searchDto.Address == null) || ((searchDto.Address != null) && c.Address == searchDto.Address)) && ((searchDto.Email == null) || ((searchDto.Email != null) && c.Email == searchDto.Email)) && ((searchDto.Profession == null) || ((searchDto.Profession != null) && c.Profession == searchDto.Profession)) && (((searchDto.CompanyId == null) || (searchDto.CompanyId == 0)) || ((searchDto.CompanyId != null) && c.CompanyId == searchDto.CompanyId)) && ((searchDto.TelephoneNumber2 == null) || ((searchDto.TelephoneNumber2 != null) && c.TelephoneNumber2 == searchDto.TelephoneNumber2)) && ((searchDto.TelephoneNumber1 == null) || ((searchDto.TelephoneNumber1 != null) && c.TelephoneNumber1 == searchDto.TelephoneNumber1))) .Include(c => c.Company) .ToListAsync(); var contactsDtos = contacts.Select(c => mapper.Map <ContactDto>(c)).ToList(); return(contactsDtos); }
public async Task <List <ContactDto> > SearchContactsAsync(ContactSearchDto searchDto) { var contacts = await litigationPlannerUnitOfWork.ContactRepository.SearchContactsAsync(searchDto); return(contacts); }