示例#1
0
        public async Task <Response> Handle(AtivarUsuario request, CancellationToken cancellationToken)
        {
            if (request == null)
            {
                return(new Response(false, "Identifique o usuário", null));
            }

            Usuario usuario = await _repositorioUsuario.ObterUsuarioPorEmail(request.Email);

            //var cod = usuario.UsuarioAtivacoes.FirstOrDefault(a => a.CodigoAtivacao == request.CodigoDeAtivacao);

            if (usuario == null)
            {
                return(new Response(false, "Usuário não encontrado", request.Email));
            }

            usuario.Ativar(request.CodigoDeAtivacao);

            if (usuario.Invalid)
            {
                return(new Response(false, "Usuário inválido", usuario.Notifications));
            }

            _repositorioUsuario.Editar(usuario);
            var result = new Response(true, "Usuário ativado com sucesso", null);

            return(await Task.FromResult(result));
        }
示例#2
0
        public async Task <IActionResult> AtivarUsuario([FromBody] AtivarUsuario request)
        {
            try
            {
                var response = await _mediator.Send(request, CancellationToken.None);

                return(await ResponseAsync(response));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }