public ActionResult <Owner> Post([FromBody] DTOOwner owner) { try { Owner newOwner = new Owner { FirstName = owner.FirstName, LastName = owner.LastName, Address = owner.Address, Email = owner.Email, PhoneNumber = owner.PhoneNumber }; if (owner.PreviousOwnedPets != null) { List <PetOwner> petList = new List <PetOwner>(); for (int i = 0; i < owner.PreviousOwnedPets.Length; i++) { petList.Add(new PetOwner() { PetID = owner.PreviousOwnedPets[i], Pet = _petService.ReadPetByID(owner.PreviousOwnedPets[i]), Owner = newOwner }); } newOwner.PreviousOwnedPets = petList; } return(_ownerService.CreateOwner(newOwner)); } catch (Exception e) { return(BadRequest(e.Message)); } }
public ActionResult <Owner> Put(int id, [FromBody] DTOOwner owner) { try { Owner oldOwner = _ownerService.ReadOwner(id); if (owner.FirstName != null) { oldOwner.FirstName = owner.FirstName; } if (owner.LastName != null) { oldOwner.LastName = owner.LastName; } if (owner.Address != null) { oldOwner.Address = owner.Address; } if (owner.Email != null) { oldOwner.Email = owner.Email; } if (owner.PhoneNumber != null) { oldOwner.PhoneNumber = owner.PhoneNumber; } if (owner.PreviousOwnedPets != null) { List <PetOwner> petList = new List <PetOwner>(); for (int i = 0; i < owner.PreviousOwnedPets.Length; i++) { petList.Add(new PetOwner() { PetID = owner.PreviousOwnedPets[i], Pet = _petService.ReadPetByID(owner.PreviousOwnedPets[i]), Owner = oldOwner, OwnerID = oldOwner.Id.Value }); } oldOwner.PreviousOwnedPets = petList; } return(_ownerService.UpdateOwner(oldOwner)); } catch (Exception e) { return(BadRequest(e.Message)); } }