public IActionResult UpdateOrganization(Guid id, [FromBody] OrganizationForUpdateDto organization) { if (organization == null) { _logger.LogError("OrganizationForUpdateDto object sent from client is null."); return(BadRequest("OrganizationForUpdateDto object is null")); } if (!ModelState.IsValid) { _logger.LogError("Invalid model state for the OrganizationForUpdateDto object"); return(UnprocessableEntity(ModelState)); } var organizationEntity = _repository.Organization.GetOrganization(id, trackChanges: true); if (organizationEntity == null) { _logger.LogInfo($"Organization with id: {id} doesn't exist in the database."); return(NotFound()); } _mapper.Map(organization, organizationEntity); _repository.Save(); return(NoContent()); }
public void TrackOrganizationUpdate(Organization organization, OrganizationForUpdateDto organizationForUpdate) { var organizationWithoutChildren = _mapper.Map <OrganizationWithoutChildrenDto>(organizationForUpdate); _mapper.Map(organizationWithoutChildren, organization); _context.Organizations.Update(organization); }
public async Task <IActionResult> UpdateOrganization(Guid id, [FromBody] OrganizationForUpdateDto organization) { /* if (organization == null) * { * _logger.LogError("OrganizationForUpdateDto object sent from client is null."); * return BadRequest("OrganizationForUpdateDto object is null"); * } * * if (!ModelState.IsValid) { * _logger.LogError("Invalid model state for the EmployeeForUpdateDto object"); * return UnprocessableEntity(ModelState); * } */ var organizationEntity = HttpContext.Items["organization"] as Organization; /* var organizationEntity = await _repository.Organization.GetOrganizationAsync(id, trackChanges: true); * if (organizationEntity == null) * { * _logger.LogInfo($"Organization with id: {id} doesn't exist in the database."); * return NotFound(); * } */ _mapper.Map(organization, organizationEntity); await _repository.SaveAsync(); return(NoContent()); }
public async Task <IActionResult> UpdateOrganization(Guid id, [FromBody] OrganizationForUpdateDto organization) { var organizationEntity = HttpContext.Items["organization"] as Organization; _mapper.Map(organization, organizationEntity); await _repository.SaveAsync(); return(NoContent()); }
public void DeletePhones(OrganizationForUpdateDto organization, Organization organizationFromContext) { if (organization.DeletedPhones.Count > 0) { foreach (var deletedPhone in organization.DeletedPhones) { foreach (var phone in organizationFromContext.Phones) { if (phone.PhoneId == deletedPhone.PhoneId) { _context.Phones.Remove(phone); } } } } }
public void DeleteAddresses(OrganizationForUpdateDto organization, Organization organizationFromContext) { if (organization.DeletedAddresses.Count > 0) { foreach (var deletedAddress in organization.DeletedAddresses) { foreach (var address in organizationFromContext.Addresses) { if (address.AddressId == deletedAddress.AddressId) { _context.Addresses.Remove(address); } } } } }
public async Task <IActionResult> UpdateOrganization(int userId, int id, OrganizationForUpdateDto organizationForUpdateDto) { if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } var organizationFromRepo = await _repo.GetOrganization(userId, id); _mapper.Map(organizationForUpdateDto, organizationFromRepo); if (await _repo.SaveAll()) { return(Ok()); } throw new Exception("Organization update failed on save"); }
public IActionResult UpdateOrganization(Guid organizationId, [FromBody] OrganizationForUpdateDto organization) { if (organizationId == new Guid()) { return(BadRequest()); } if (!_unitOfWork.Organizations.IsOrganizationExists(organizationId)) { return(NotFound()); } if (organization == null) { return(BadRequest()); } var organizationFromContext = _unitOfWork.Organizations.GetOrganization(organizationId, true); _unitOfWork.Organizations.TrackOrganizationUpdate(organizationFromContext, organization); _unitOfWork.Phones.UpdateAndAddPhones(organization.Phones, organizationFromContext.Phones, organizationId); _unitOfWork.Addresses.UpdateAndAddAddresses(organization.Addresses, organizationFromContext.Addresses, organizationId); _unitOfWork.Phones.DeletePhones(organization, organizationFromContext); _unitOfWork.Addresses.DeleteAddresses(organization, organizationFromContext); if (!_unitOfWork.Complete()) { return(StatusCode(500, "A problem happened while handling your request!")); } return(NoContent()); }