Пример #1
0
 public JsonResult Get()
 {
     try
     {
         Respuesta.RespuestaGenerica <DtoUsuarioGrilla> _respuesta = new Respuesta.RespuestaGenerica <DtoUsuarioGrilla>();
         var result = _service.Get();
         return(Json(_respuesta.RespuestaCorrectaGET(result, "Lista de usuarios.", "No se encontraron registros.")));
     }
     catch (Exception ex)
     {
         return(Json(_respuesta.RespuestaError(ex.ToString())));
     }
 }
Пример #2
0
        public object Post(
            [FromBody] UserAuth usuario,
            [FromServices] SigningConfigurations signingConfigurations,
            [FromServices] TokenConfiguration tokenConfigurations)
        {
            bool credenciaisValidas = false;

            if (usuario != null && !String.IsNullOrWhiteSpace(usuario.Login))
            {
                var usuarioBase = _service.Get(x => x.Login == usuario.Login && x.Senha == usuario.Password);
                credenciaisValidas = usuarioBase != null;
            }

            if (credenciaisValidas)
            {
                ClaimsIdentity identity = new ClaimsIdentity(
                    new GenericIdentity(usuario.Login, "Login"),
                    new[] {
                    new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString("N")),
                    new Claim(JwtRegisteredClaimNames.UniqueName, usuario.Login)
                }
                    );

                DateTime dataCriacao   = DateTime.Now;
                DateTime dataExpiracao = dataCriacao +
                                         TimeSpan.FromSeconds(tokenConfigurations.Seconds);

                var handler       = new JwtSecurityTokenHandler();
                var securityToken = handler.CreateToken(new SecurityTokenDescriptor
                {
                    Issuer             = tokenConfigurations.Issuer,
                    Audience           = tokenConfigurations.Audience,
                    SigningCredentials = signingConfigurations.SigningCredentials,
                    Subject            = identity,
                    NotBefore          = dataCriacao,
                    Expires            = dataExpiracao
                });
                var token = handler.WriteToken(securityToken);

                return(new
                {
                    authenticated = true,
                    created = dataCriacao.ToString("yyyy-MM-dd HH:mm:ss"),
                    expiration = dataExpiracao.ToString("yyyy-MM-dd HH:mm:ss"),
                    accessToken = $"Bearer {token}",
                    message = "OK"
                });
            }
            else
            {
                return(new
                {
                    authenticated = false,
                    message = "Falha ao autenticar"
                });
            }
        }
Пример #3
0
        public ServiceResponse <bool> Update(UsuarioDto usuario)
        {
            var result = new ServiceResponse <bool>();

            try
            {
                var entity = _service.Get(usuario.IdUsuario);
                if (entity != null)
                {
                    entity.Modify(usuario.Nome, usuario.Dt_Nascimento, usuario.Cep, usuario.Password);
                    if (entity.Valid)
                    {
                        result.Result = result.Object = _service.Update(entity);
                        if (!result.Result)
                        {
                            ((Notifiable)_service).Notifications
                            .ToList()
                            .ForEach(x => result.Messages.Add(x.Message));
                        }
                    }
                    else
                    {
                        entity.Notifications.ToList().ForEach(x => result.Messages.Add(x.Message));
                    }
                }
                else
                {
                    result.Messages.Add("Não foi possivel idenficar o Usuario");
                }
            }
            catch (Exception ex)
            {
                result.Messages.Add("Problema para alterar o usuario : " + ex.Message);
            }

            return(result);
        }