コード例 #1
0
 public ActionResult ChangePass([FromBody] UsuarioPass model)
 {
     using (var transaction = Context.Database.BeginTransaction())
     {
         try
         {
             Usuario Usr = Context.Usuario.Where(x => x.Correo.ToUpper() == model.Correo.ToUpper() && Desencriptar(x.Contrasena) == model.Password && x.UserName.ToUpper() == model.NombreUsuario.ToUpper()).FirstOrDefault();
             if (Usr != null)
             {
                 Usr.Contrasena           = Encriptar(model.NewPasswrd);
                 Context.Entry(Usr).State = EntityState.Modified;
                 Context.SaveChanges();
                 transaction.Commit();
                 return(Ok());
             }
             else
             {
                 return(BadRequest("No se logro validar el usuario para el cambio de la contraseña."));
             }
         }
         catch (Exception Exc)
         {
             transaction.Rollback();
             return(BadRequest("Error al actualizar la contraseña del usuario, error: " + Exc.Message.ToString()));
         }
     }
 }
コード例 #2
0
        public dynamic IndexPass()
        {
            UsuarioPass UP       = new UsuarioPass();
            Response    response = new Response();

            response.Code         = 200;
            response.Successfully = true;
            response.Message      = "";
            response.Result       = UP;
            return(UP);
        }
コード例 #3
0
 public ActionResult GetObjPass()
 {
     try
     {
         UsuarioPass UP = new UsuarioPass();
         return(Ok(UP));
     }
     catch (Exception ex)
     {
         return(BadRequest("Error al obtener el objeto de Usuarios para cambio de Contraseña, error: " + ex.Message.ToString()));
     }
 }
コード例 #4
0
        public IHttpActionResult CPass(UsuarioPass UP)
        {
            int      Id_Usuario;
            Response response = new Response();

            DB = new SlabEntities();
            if (!string.IsNullOrEmpty(UP.NombreUsuario) && !string.IsNullOrEmpty(UP.Correo) && !string.IsNullOrEmpty(UP.Password) && !string.IsNullOrEmpty(UP.NewPasswrd))
            {
                TokenGenerator TG     = new TokenGenerator();
                string         result = TG.DecodeTokenAwt(Request.Headers.Authorization.ToString().Replace("Bearer ", "")).Result;
                if (!string.IsNullOrEmpty(result))
                {
                    Id_Usuario = int.Parse(result.Split('|')[0]);
                    Usuario us = DB.Usuario.Where(x => x.Correo.ToUpper().Equals(UP.Correo) && x.Usuario1.ToUpper().Equals(UP.NombreUsuario) && x.Id == Id_Usuario).FirstOrDefault();
                    if (us != null)
                    {
                        if (response.Desencriptar(us.Contrasena) == UP.Password)
                        {
                            return(Ok(UT.ChangePass(UP.NewPasswrd, us.Id)));
                        }
                        else
                        {
                            return(BadRequest("La contraseña actual no coincide."));
                        }
                    }
                    else
                    {
                        return(BadRequest("El usuario logueado no corresponde al que se le cambiara la contraseña."));
                    }
                }
                else
                {
                    return(BadRequest("No se logro validar la autenticacion del usuario."));
                }
            }
            else
            {
                return(BadRequest("La informacion ingresada esta incorrecta."));
            }
        }