public async Task <Contato> Update(Guid id, ContatoCreateOrUpdateDto contato)
        {
            var contatoDb = await GetById(id);

            contatoDb.Converter(contato);
            return(await _contatoRepository.Update(id, contatoDb));
        }
Exemplo n.º 2
0
 public void Converter(ContatoCreateOrUpdateDto contatoCreateOrUpdateDto)
 {
     Nome        = contatoCreateOrUpdateDto.Nome;
     Canal       = contatoCreateOrUpdateDto.Canal;
     Observacoes = contatoCreateOrUpdateDto.Observacoes;
     Valor       = contatoCreateOrUpdateDto.Valor;
 }
        public async Task <Contato> Create(ContatoCreateOrUpdateDto contato)
        {
            var contatoToCreate = new Contato(
                contato.Nome,
                contato.Canal,
                contato.Valor,
                contato.Observacoes);
            Contato novoContato = await _contatoRepository.Create(contatoToCreate);

            return(novoContato);
        }
        public async Task <ActionResult <ContatoDto> > Post([FromBody] ContatoCreateOrUpdateDto contatoCreateOrUpdateDto)
        {
            if (contatoCreateOrUpdateDto == null)
            {
                return(BadRequest(new Erro
                {
                    Mensagem = "Parâmetros inválidos",
                    StatusCode = "400"
                }));
            }

            Contato novoContato = await _contatoService.Create(contatoCreateOrUpdateDto);

            return(CreatedAtAction(nameof(Get), new { idContato = novoContato.Id }, new ContatoDto(novoContato)));
        }
        public async Task <IActionResult> Put(Guid idContato, [FromBody] ContatoCreateOrUpdateDto contato)
        {
            if (idContato == Guid.Empty)
            {
                return(BadRequest());
            }

            try
            {
                await _contatoService.Update(idContato, contato);
            }
            catch
            {
                if (_contatoService.GetById(idContato) == null)
                {
                    return(NotFound());
                }
            }

            return(NoContent());
        }