示例#1
0
        public async Task <ActionResult> Put(int id, [FromBody] AmigoEdit model)
        {
            var result = await _amigoService.UpdateAmigoAsync(id, model);

            if (!result.Succeeded)
            {
                return(NotFound(result.Message));
            }

            return(NoContent());
        }
示例#2
0
        public async Task <QueryResult <string> > UpdateAmigoAsync(int id, [FromBody] AmigoEdit model)
        {
            try
            {
                var amigo = await _amigoRepository.GetAmigoAsync(id);

                if (amigo != null)
                {
                    var emailDiferente  = (amigo.Login.Email.ToUpper() != model.Email.ToUpper());
                    var emailCadastrado = await _amigoRepository.ValidateEmialAsync(model.Email);

                    if (emailDiferente && emailCadastrado != null)
                    {
                        return(new QueryResult <string>
                        {
                            Succeeded = false,
                            Message = "E-mail já cadastrado!"
                        });
                    }

                    amigo.Nome                  = model.Nome;
                    amigo.Telefone              = model.Telefone;
                    amigo.Login.Email           = model.Email.ToLower();
                    amigo.Login.NormalizedEmail = model.Email.ToUpper();
                    amigo.Login.Status          = AccountConstants.GetStatusDbUsuario(model.Status);

                    await _amigoRepository.UpdateAmigoAsync(amigo);

                    return(new QueryResult <string>
                    {
                        Succeeded = true,
                        Message = "Amigo editado com sucesso."
                    });
                }
                else
                {
                    return(new QueryResult <string>
                    {
                        Succeeded = false,
                        Message = "Erro, amigo não encontrado!"
                    });
                }
            }
            catch (Exception)
            {
                return(new QueryResult <string>
                {
                    Succeeded = false,
                    Message = "Erro, tente novamente!"
                });
            }
        }