public IActionResult Edit([Bind] VacancyResponse vacancyData) { if (!ModelState.IsValid) { var vacancy = VacancyService.Get(vacancyData.Id); vacancyData.Organization = vacancy.Organization.ToResponse(); return(View(vacancyData)); } var storedModel = VacancyService.Get(vacancyData.Id); var updateRequest = storedModel.ToUpdateCommandBy(vacancyData); var updated = VacancyService.Update(vacancyData.Id, updateRequest); var expectedUpdated = vacancyData.ToModel(); var success = updated.IsIdenticTo(expectedUpdated); var model = new IndexPageStatusModel { StatusId = $"{nameof(Edit)}:{success}", VacancyId = vacancyData.Id }; return(RedirectToAction(nameof(Index), model)); }
protected void AssertContentAs200(VacancyResponse expected, VacancyResponse actual) { AssertGuid(actual.Id); Assert.NotNull(actual.Title); Assert.NotNull(actual.Organization); Assert.NotNull(actual.Description); Assert.NotNull(actual.EmploymentType); }
protected void AssertContentAs200(VacancyResponse expected, VacancyResponse actual) { AssertGuid(actual.Id); Assert.Equal(expected.Title, actual.Title); Assert.Equal(expected.Description, actual.Description); Assert.Equal(expected.Salary, actual.Salary); Assert.Equal(expected.ContactPhone, actual.ContactPhone); AssertPerson(expected.ContactPerson, actual.ContactPerson); }
public static VacancyUpdateModel ToUpdateCommandBy( this VacancyModel origin, VacancyResponse updated) { var updateModel = new VacancyUpdateModel(); updateModel.Title = GenerateUpdate(origin.Title, updated.Title); updateModel.Description = GenerateUpdate(origin.Description, updated.Description); updateModel.Salary = GenerateUpdate(origin.Salary, updated.Salary); updateModel.ContactPerson = GenerateUpdate(origin.ContactPerson, updated.ContactPerson); updateModel.ContactPhone = GenerateUpdate(origin.ContactPhone, updated.ContactPhone); updateModel.EmploymentType = GenerateUpdate( origin.EmploymentType?.ToList()?.ToStringName(), updated.EmploymentType?.ToList()); return(updateModel); }