Exemplo n.º 1
0
        public UsuariosApi BuscaUsuarioApi(UsuariosApi ParamUserApi)
        {
            UsuariosApi entidad = new UsuariosApi();

            using (SqlConnection conexion = new SqlConnection(ConfigurationManager.ConnectionStrings[ConfigurationManager.AppSettings["cnnSql"]].ConnectionString))
            {
                using (SqlCommand comando = new SqlCommand("users_UsuarioApi", conexion))
                {
                    comando.CommandType = System.Data.CommandType.StoredProcedure;
                    comando.Parameters.AddWithValue("@Codigo", ParamUserApi.Codigo);
                    comando.Parameters.AddWithValue("@UserName", ParamUserApi.UserName);
                    comando.Parameters.AddWithValue("@Clave", ParamUserApi.Clave);
                    comando.Parameters.AddWithValue("@Nombre", ParamUserApi.Nombre);
                    comando.Parameters.AddWithValue("@Rol", ParamUserApi.Rol);
                    conexion.Open();
                    SqlDataReader reader = comando.ExecuteReader();
                    while (reader.Read())
                    {
                        entidad          = new UsuariosApi();
                        entidad.Codigo   = Convert.ToInt32(reader["Codigo"]);
                        entidad.UserName = reader["UserName"].ToString();
                        entidad.Clave    = reader["Clave"].ToString();
                        entidad.Nombre   = reader["Nombre"].ToString();
                        entidad.Rol      = reader["Rol"].ToString();
                    }

                    conexion.Close();
                }
            }
            return(entidad);
        }
Exemplo n.º 2
0
        private TokenResponse Respuest()
        {
            TokenResponse respuesta    = new TokenResponse();
            string        controladora = "Auth";
            string        metodo       = "Post";
            var           resultado    = "";
            UsuariosApi   usuapi       = new UsuariosApi();

            usuapi.Codigo   = Convert.ToInt32(ConfigurationManager.AppSettings["UsuApiCodigo"]);
            usuapi.UserName = ConfigurationManager.AppSettings["UsuApiUserName"];
            usuapi.Clave    = ConfigurationManager.AppSettings["UsuApiClave"];
            usuapi.Nombre   = ConfigurationManager.AppSettings["UsuApiNombre"];
            usuapi.Rol      = ConfigurationManager.AppSettings["UsuApiRol"];
            using (WebClient usuarioapi = new WebClient())
            {
                usuarioapi.Headers.Clear();//borra datos anteriores
                //establece el tipo de dato de tranferencia
                usuarioapi.Headers[HttpRequestHeader.ContentType] = jsonMediaType;
                //typo de decodificador reconocimiento carecteres especiales
                usuarioapi.Encoding = UTF8Encoding.UTF8;
                //convierte el objeto de tipo Usuarios a una trama Json
                var    usuarioJson  = JsonConvert.SerializeObject(usuapi);
                string rutacompleta = RutaApi + controladora;
                resultado = usuarioapi.UploadString(new Uri(rutacompleta), usuarioJson);
                respuesta = JsonConvert.DeserializeObject <TokenResponse>(resultado);
            }
            return(respuesta);
        }
Exemplo n.º 3
0
        private async void ActualizarUsuario()
        {
            UsuariosApi api      = new UsuariosApi();
            Usuario     userEdit = new Usuario();

            userEdit.idUsuario     = int.Parse(txtIdUsuario.Text);
            userEdit.username      = txtUsername.Text;
            userEdit.password      = txtPassword.Text;
            userEdit.pnombre       = txtPnombre.Text;
            userEdit.snombre       = txtSnombre.Text;
            userEdit.appat         = txtAppat.Text;
            userEdit.apmat         = txtApmat.Text;
            userEdit.email         = txtEmail.Text;
            userEdit.fonoCelular   = txtFonoCelular.Text;
            userEdit.fonoFijo      = txtFonoFijo.Text;
            userEdit.tipoUsuario   = int.Parse(txtTipoUsuario.Text);
            userEdit.alumnoRegular = int.Parse(txtAlumnoRegular.Text);
            userEdit.idCarrera     = int.Parse(txtIdCarrera.Text);
            userEdit.idInstitucion = int.Parse(txtIdInstitucion.Text);
            Task <bool> tarea = api.EditarUsuario(userEdit);
            await Task.WhenAll(tarea);

            if (tarea.Result)
            {
                Toast.MakeText(this, "¡Editado con exito!", ToastLength.Short).Show();
            }
            else
            {
                Toast.MakeText(this, "¡Error al editar!", ToastLength.Short).Show();
            }
        }
Exemplo n.º 4
0
        public async void CargarUsers()
        {
            UsuariosApi api = new UsuariosApi();
            await api.TraerTodo();

            lista    = api.listaUsuarios;
            mAdapter = new RecyclerAdapter(lista);
            mRecyclerView.SetAdapter(mAdapter);
        }
Exemplo n.º 5
0
        public async void borrar()
        {
            UsuariosApi api = new UsuariosApi();
            Usuario     usu = this.TraerListaUsuariosLocal().FirstOrDefault(p => p.idUsuario == IDuser);
            await api.EliminarUsuario(usu);

            Intent intent = new Intent(this, typeof(PanelUsuarios));

            StartActivity(intent);
        }
Exemplo n.º 6
0
        public IHttpActionResult Valida([FromBody] UsuariosApi usuarioAutentica)
        {
            //validaciones antes de procesar
            if (string.IsNullOrEmpty(usuarioAutentica.Clave) ||
                string.IsNullOrEmpty(usuarioAutentica.UserName))
            {
                return(BadRequest("Debe enviar la clave o codigo"));
            }

            //validas los datos
            //validacion contra la bd
            UsuariosApi usuarioapi = new UsuariosApi();

            usuarioapi = new UsuarioApiLN().BuscaUsuarioApi(usuarioAutentica);

            if ((usuarioapi.Codigo <= 0))
            {
                return(BadRequest("Credenciales no validas"));
            }
            var expireTime = ConfigurationManager.AppSettings["JWT_EXPIRE_MINUTES"];

            //crear la semilla
            string clave = ConfigurationManager.AppSettings["JWT_SECRET_KEY"];

            byte[] claveEnBytes = Encoding.UTF8.GetBytes(clave);
            //para convertir la clave que esta como un arreglo de bytes en simetrica
            SymmetricSecurityKey key = new SymmetricSecurityKey(claveEnBytes);

            //generar algoritmo de ofuscacion
            SigningCredentials cred = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);

            //payload
            var _Claims = new[] {
                new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
                new Claim(JwtRegisteredClaimNames.NameId, usuarioAutentica.UserName.ToString()),
                //new Claim("nombre", "David"),
                new Claim("nombre", usuarioapi.Nombre),
                // new Claim("apellidos", "Espinoza"),
                new Claim("rol", usuarioapi.Rol),
                // new Claim(JwtRegisteredClaimNames.Email, "*****@*****.**"),
                // new Claim(ClaimTypes.Role, "admin")
            };

            //encriptador
            JwtSecurityToken jwtSecurityToken = new JwtSecurityToken(
                audience: ConfigurationManager.AppSettings["JWT_AUDIENCE_TOKEN"],
                issuer: ConfigurationManager.AppSettings["JWT_ISSUER_TOKEN"],
                expires: DateTime.UtcNow.AddMinutes(Convert.ToInt32(expireTime)), //DateTime.Now.AddMinutes(10),
                claims: _Claims,
                signingCredentials: cred
                );


            string token = new JwtSecurityTokenHandler().WriteToken(jwtSecurityToken);


            return(Ok(new TokenResponse
            {
                Token = token,
                User = usuarioAutentica.UserName
            }));
        }
 public UsuariosApi BuscaUsuarioApi(UsuariosApi PamUsuarioApi)
 {
     return(new UsuarioApiAD().BuscaUsuarioApi(PamUsuarioApi));
 }