public async Task <ActionResult> SavePerson([FromBody] SavePersonDto person) { var newPerson = _mapper.Map <Person>(person); await _service.SavePerson(newPerson); return(Created(string.Empty, newPerson.Id)); }
public PersonDto UpdatePerson(SavePersonDto savePersonDto) { var sameNamePerson = _repository.GetByName(savePersonDto.Name); var sameNamePersonIsExists = sameNamePerson != null && sameNamePerson.Id != savePersonDto.Id; if (sameNamePersonIsExists) { throw new InvalidOperationException("Database already contains a person with the same name"); } long id = (long)savePersonDto.Id; var person = _repository.GetById(id); if (person == null) { return(null); } _mapper.Map(savePersonDto, person); _repository.Update(person); _repository.Save(); return(CreatePersonDto(person)); }
public async Task <string> SavePersonAsync(SavePersonDto person) { var personJson = JsonConvert.SerializeObject(person); var buffer = System.Text.Encoding.UTF8.GetBytes(personJson); var byteContent = new ByteArrayContent(buffer); byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var response = await _httpClient.PostAsync($"person/", byteContent); return(await Task.Run(() => string.Empty)); }
public IActionResult Post([FromBody] SavePersonDto savePersonDto) { if (savePersonDto.Id == null) { var personDto = _personService.CreatePerson(savePersonDto); return(Ok(personDto)); } else { return(BadRequest()); } }
public PersonDto CreatePerson(SavePersonDto savePersonDto) { var sameNamePerson = _repository.GetByName(savePersonDto.Name); var sameNamePersonIsExists = sameNamePerson != null; if (sameNamePersonIsExists) { throw new InvalidOperationException("Database already contains a person with the same name"); } var person = _mapper.Map <SavePersonDto, Person>(savePersonDto); _repository.Create(person); _repository.Save(); return(CreatePersonDto(person)); }
public IActionResult Put(int id, [FromBody] SavePersonDto savePersonDto) { if (savePersonDto.Id == null) { savePersonDto.Id = id; var personDto = _personService.UpdatePerson(savePersonDto); if (personDto != null) { return(Ok(personDto)); } else { return(NotFound()); } } else { return(BadRequest()); } }