public async Task <IActionResult> Delete(int id) { DepartmentContact departmentContact = _repository.GetDepartmentContactsOnContactId(id); _repository.Delete(departmentContact); await _repository.SaveChangesAsync(); return(RedirectToAction(nameof(HomeController.Index))); }
public async Task <IActionResult> Put([FromBody] Message[] jsonPeople) { if (jsonPeople[0].DepartmentName == null || jsonPeople[0].DepartmentName == "") { List <DepartmentContact> departmentContacts = await _repository.GetAsync().ConfigureAwait(false); foreach (Message p in jsonPeople) { string matchingDepartmentName = null; try { HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, $"Home/GetDepartmentName/{p.DepartmentId}"); HttpClient client = _clientFactory.CreateClient("departments"); HttpResponseMessage response = await client.SendAsync(request); matchingDepartmentName = await response.Content.ReadAsStringAsync(); } catch (Exception) { // Log } DepartmentContact departmentContact = departmentContacts.Where(c => c.ContactId == p.Id).First(); departmentContact.ContactId = p.Id; departmentContact.ContactName = p.Name; departmentContact.DepartmentId = Int32.Parse(p.DepartmentId); departmentContact.DepartmentName = matchingDepartmentName ?? "Unknown Department"; departmentContact.LastUpdated = DateTime.Now; } _repository.UpdateRange(departmentContacts); await _repository.SaveChangesAsync(); return(Ok()); } else { IEnumerable <DepartmentContact> contactsToUpdate = _repository.GetDepartmentContactsOnDepartmentId(Int32.Parse(jsonPeople[0].DepartmentId)); contactsToUpdate.ToList().ForEach(c => c.DepartmentName = jsonPeople[0].DepartmentName); if (ModelState.IsValid) { _repository.UpdateRange(contactsToUpdate); await _repository.SaveChangesAsync(); } return(Ok()); } }
// GET: Home/Details/{id:int?} public async Task <IActionResult> Details(int?id) { if (id == null) { return(NotFound()); } DepartmentContact departmentContact = await _repository.GetByIDAsync(id.Value).ConfigureAwait(false); if (departmentContact == null) { return(NotFound()); } return(View(departmentContact)); }
public async Task <IActionResult> Post([FromBody] Message jsonPerson) { List <DepartmentContact> departmentContacts = await _repository.GetAsync().ConfigureAwait(false); string matchingDepartmentName = null; try { HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, $"Home/GetDepartmentName/{jsonPerson.DepartmentId}"); HttpClient client = _clientFactory.CreateClient("departments"); HttpResponseMessage response = await client.SendAsync(request); matchingDepartmentName = await response.Content.ReadAsStringAsync(); } catch (Exception) { // Log } DepartmentContact departmentContact = new DepartmentContact { Id = departmentContacts.Count, ContactId = jsonPerson.Id, ContactName = jsonPerson.Name, DepartmentId = Int32.Parse(jsonPerson.DepartmentId), DepartmentName = matchingDepartmentName ?? "Unknown Department", LastUpdated = DateTime.Now }; if (ModelState.IsValid) { _repository.Insert(departmentContact); await _repository.SaveChangesAsync(); } return(Ok()); }