예제 #1
0
        public IActionResult updateEMPL(int id, [FromBody] UserInfo user)
        {
            string tokenString      = Request.Headers["Authorization"].ToString();
            var    jwtEncodedString = tokenString.Substring(7); // trim 'Bearer ' from the start since its just a prefix for the token string
            var    token            = new JwtSecurityToken(jwtEncodedString: jwtEncodedString);
            string usuarioRequest   = token.Claims.First(c => c.Type == "Usuario").Value;
            string roleRequest      = token.Claims.First(c => c.Type == "Role").Value;
            string nombre           = token.Claims.First(c => c.Type == "Nombre").Value;
            string idsucursal       = token.Claims.First(c => c.Type == "id_sucursal").Value;
            string idempl           = token.Claims.First(c => c.Type == "Id").Value;



            _logger.LogInformation("Sucursal: " + user.id_sucursal.ToString());

            if (roleRequest == "ADM")
            {
                UserInfo dato = new BLL.Usuario().EmplUpdateBLL(user, id);
                if (dato != null)
                {
                    user.Password = user.Password != null ? user.Password : "";
                    new BLL.Auditoria().loggearEnModuloAuditoria(new ENTITY.Auditoria("EMPL", usuarioRequest, $"Se ah actualizado   Al usaurio =>{user.Usuario} Nuevos Datos({user.id_sucursal}-{user.Nombre}-{user.Role}-{user.Password })", int.Parse("1"), int.Parse(idempl)));

                    return(Ok(new { EMPLupdate = dato }));
                }
                return(BadRequest(new { MSJ = "Verifique los datos de entrada." }));
            }
            else
            {
                return(Unauthorized(new { MSJ = "Esta funcionalidad solo esta disponible para administradores" }));
            }
        }
예제 #2
0
파일: frmLogin.cs 프로젝트: fdoaragon/SICOB
 private void button1_Click(object sender, EventArgs e)
 {
     if (textBox2.Text.Trim()==string.Empty || textBox3.Text.Trim()==string.Empty)
         return;
     Usuario u = new Usuario(textBox2.Text.Trim());
     if (u.Nuevo || u.Datos.Contrasena!=textBox3.Text)
     {
         MessageBox.Show("Usuario o contraseña incorrecto", "Inicio", MessageBoxButtons.OK, MessageBoxIcon.Error);
         textBox3.Text = "";
         textBox3.Focus();
         return;
     }
     if (u.Datos.IdCaja != 0 && u.Datos.IdCaja != (int)cbxCaja.SelectedValue)
     {
         MessageBox.Show("No tiene permisos para accesar a este equipo", "Inicio", MessageBoxButtons.OK, MessageBoxIcon.Error);
         return;
     }
     Properties.Settings.Default.Uusario = textBox2.Text;
     Properties.Settings.Default.Caja = (int)cbxCaja.SelectedValue;
     Properties.Settings.Default.Save();
     //Properties.Settings.Default.Upgrade();
     Globales.IdCaja = (int)cbxCaja.SelectedValue;
     Globales.user = u;
     this.Close();
 }
예제 #3
0
        public IActionResult Login([FromBody] UserInfo userInfo)
        {
            _logger.LogInformation("Usaurio: " + userInfo.Usuario);
            if (ModelState.IsValid)
            {
                String[] resCore = new BLL.Usuario().LoginBLL(userInfo);
                if ("OK".Equals(resCore[0]))
                {
                    userInfo.Role        = resCore[2];
                    userInfo.Direccion   = resCore[3];
                    userInfo.Nombre      = resCore[4];
                    userInfo.Id          = int.Parse(resCore[5]);
                    userInfo.id_sucursal = int.Parse(resCore[6]);


                    return(BuildToken(userInfo));
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Invalid login attempt.");
                    return(NotFound(new { res = new { Stado = resCore[0], Info = resCore[1] } }));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
예제 #4
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (SEGURIDAD.Sesion._Instance != null)
     {
         BLL.Usuario gestorUsuario = new BLL.Usuario();
         gestorUsuario.Logout();
         Session["ID"]       = null;
         Session["Usuario"]  = null;
         Session["Password"] = null;
         Session["Pemiso"]   = null;
         Session["Estado"]   = null;
         Session["DVH"]      = null;
     }
 }
예제 #5
0
        public IActionResult CreateUser([FromBody] UserInfo model)
        {
            if (model.Role != null)
            {
                string tokenString      = Request.Headers["Authorization"].ToString();
                var    jwtEncodedString = tokenString.Substring(7); // trim 'Bearer ' from the start since its just a prefix for the token string
                var    token            = new JwtSecurityToken(jwtEncodedString: jwtEncodedString);
                string usuarioRequest   = token.Claims.First(c => c.Type == "Usuario").Value;
                string roleRequest      = token.Claims.First(c => c.Type == "Role").Value;
                string nombre           = token.Claims.First(c => c.Type == "Nombre").Value;
                string idsucursal       = token.Claims.First(c => c.Type == "id_sucursal").Value;
                string id = token.Claims.First(c => c.Type == "Id").Value;

                if (roleRequest == "ADM")
                {
                    roleRequest = "1";
                }

                new BLL.Auditoria().loggearEnModuloAuditoria(new ENTITY.Auditoria("EMPL", usuarioRequest, $"Se esta creando al Empleado ==>{model.Usuario} con rol ==>{model.Role}  Sucursal del nuevo Empleado ==>{model.id_sucursal} ", int.Parse(roleRequest), int.Parse(id)));
            }



            _logger.LogInformation("Usaurio=>" + model.Usuario + "Pasword =>" + model.Password + "Role=>" + model.Role);
            if (ModelState.IsValid)
            {
                if (model.Role == null)
                {
                    model.Role = "3";
                }
                string[] resultado = new BLL.Usuario().CrearUsuario(model);
                if ("OK".Equals(resultado[0]))
                {
                    return(Ok(new { res = new { Stado = resultado[0], Info = resultado[1] } }));
                }
                else
                {
                    return(BadRequest(new { res = new { Stado = resultado[0], Info = resultado[1] } }));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
예제 #6
0
    protected void LogIn(object sender, EventArgs e)
    {
        if (!string.IsNullOrWhiteSpace(UserName.Text) && !string.IsNullOrWhiteSpace(Password.Text))
        {
            BLL.Usuario gestorUsuario    = new BLL.Usuario();
            BE.Usuario  UsuarioIngresado = new BE.Usuario();
            UsuarioIngresado.Username = UserName.Text;
            UsuarioIngresado.Password = Password.Text;
            gestorUsuario.Login(UsuarioIngresado);
            gestorUsuario.Informar += InformarMsg;
            if (SEGURIDAD.Sesion._Instance != null)
            {
                Session["ID"]             = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.ID;
                Session["Usuario"]        = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.Username;
                Session["Password"]       = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.Password;
                Session["Pemiso"]         = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.Permiso;
                Session["Estado"]         = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.Estado;
                Session["DVH"]            = SEGURIDAD.Sesion._Instance.UsuarioEnSesion.DVH;
                SEGURIDAD.Sesion.Intentos = 0;
                Redirigir();
            }
            else
            {
                SEGURIDAD.Sesion.Intentos++;

                if (SEGURIDAD.Sesion.Intentos == 3)
                {
                    UserName.Enabled = false;
                    Password.Enabled = false;
                }
                InformarMsg("Usuario y/o contraseña incorrectos");
            }
        }
        else
        {
            ErrorMessage.Visible = true;
        }
    }
예제 #7
0
        protected void btnAceptar_Click(object sender, EventArgs e)
        {
            usu = new Usuario();

            int idciudad = 0;
            int.TryParse(ddlCiudad.SelectedValue, out idciudad);

            usu.NombreUsuario = tbNombreUsuario.Text;
            usu.Contrasena = tbContrasena.Text;
            usu.Nombre = tbNombre.Text;
            usu.Apellido = tbApellido.Text;
            usu.FechaNacimiento = tbFechaNacimiento.Text;
            usu.Cedula = tbCedula.Text;
            usu.Telefono = tbTelefono.Text;
            usu.IdCiudad = idciudad;
            usu.Direccion = tbDireccion.Text;
            usu.Correo = tbCorreo.Text;

            if (usu.insertar())
            {
                Msg.Text = "Se ha registrado exitosamente!";
            }
        }
예제 #8
0
        public IActionResult getUsuario(int id)
        {
            string tokenString      = Request.Headers["Authorization"].ToString();
            var    jwtEncodedString = tokenString.Substring(7); // trim 'Bearer ' from the start since its just a prefix for the token string
            var    token            = new JwtSecurityToken(jwtEncodedString: jwtEncodedString);
            string roleRequest      = token.Claims.First(c => c.Type == "Role").Value;

            if (roleRequest == "ADM")
            {
                UserInfo[] usuarios = new BLL.Usuario().GetusersBLL(id);


                if (usuarios != null)
                {
                    return(Ok(new { usuarios = usuarios }));
                }

                return(BadRequest(new { data = "Hubo un error" }));
            }
            else
            {
                return(Unauthorized(new { MSJ = "Esta funcionalidad solo esta disponible para administradores" }));
            }
        }