protected void LoginButton_Click(object sender, EventArgs e) { DULoggin loggin = new DULoggin(); DLUsuario inicio = new DLUsuario(); loggin.UserName = L_Autenticate.UserName.ToString(); loggin.Clave = L_Autenticate.Password.ToString(); loggin.Session = Session.SessionID; loggin = inicio.IniciarSesion(loggin); Session["nombre"] = loggin.Nombre; Session["user_id"] = loggin.UserId; Session["rol"] = loggin.Rol; Session["mensajeLogin"] = loggin.Mensaje; Response.Redirect(loggin.Url); }
public DUUsuario loginVisitante(DULoggin user) { using (var db = new Mapeo("usuario")) { DUUsuario du = new DUUsuario(); List <DUUsuario> resul = db.uUsuario.Where(x => x.UserName == user.UserName && x.Clave == user.Clave).ToList(); List <DUInicio> ini = db.uInicio.Where(x => x.UserName == user.UserName).ToList(); List <DUConfig> con = db.uConfig.ToList(); if (resul.Count() > 0 && resul.First().Estado == 1) { if (ini.Count() > 0 && ini.First().Estado == 1) { DUInicio fin = ini.First(); DUConfig act = con.Where(x => x.Nombre == "activos").First(); if (fin.Activos < act.Numero) { fin.Activos = fin.Activos + 1; fin.Intentos = 0; fin.FechaFin = DateTime.Now.AddMinutes(15); db.SaveChanges(); return(db.uUsuario.Where(x => x.UserName == user.UserName && x.Clave == user.Clave).First()); } else { du.Id = -1; return(du); } } else if (ini.Count() > 0 && ini.First().Estado == 2) { du.Id = -2; return(du); } else { DUInicio inicio = new DUInicio(); inicio.UserName = user.UserName; inicio.Intentos = 0; inicio.Activos = 1; inicio.Estado = 1; inicio.FechaFin = DateTime.Now; db.uInicio.Add(inicio); db.SaveChanges(); return(db.uUsuario.Where(x => x.UserName == user.UserName && x.Clave == user.Clave).First()); } } else if (resul.Count() > 0 && resul.First().Estado == 2) { du.Id = -2; return(du); } else { if (ini.Count() > 0 && ini.First().Estado == 1) { DUInicio fin = ini.First(); DUConfig act = con.Where(x => x.Nombre == "intentos").First(); fin.Intentos = fin.Intentos + 1; if (fin.Intentos >= act.Numero) { fin.Estado = 2; } fin.FechaFin = DateTime.Now.AddMinutes(15); db.SaveChanges(); du.Id = -3; return(du); } else if (ini.Count() > 0 && ini.First().Estado == 2) { du.Id = -2; return(du); } else { DUInicio inicio = new DUInicio(); inicio.UserName = user.UserName; inicio.Intentos = 0; inicio.Activos = 1; inicio.Estado = 1; inicio.FechaFin = DateTime.Now; db.uInicio.Add(inicio); db.SaveChanges(); du.Id = -3; return(du); } } } }
//valida y inicia sesion de usuario public DULoggin IniciarSesion(DULoggin login) { DULoggin usuario = new DULoggin(); daoUsuario datos = new daoUsuario(); daoAuthentication auten = new daoAuthentication(); try { DUUsuario tabla = datos.loginVisitante(login); Int32 id = tabla.Id; if (id > 0) { usuario.Nombre = tabla.Nombre; usuario.UserId = "" + tabla.Id; usuario.Rol = "" + tabla.Rol; DUAuthentication datosUsuario = new DUAuthentication(); DUMac datosConexion = new DUMac(); /* ipAddress = HttpContext.Current.Request.UserHostAddress; * mac = Utilidades.Mac.GetMAC(ref ipAddress);*/ datosUsuario.UserId = tabla.Id; datosUsuario.Ip = datosConexion.ip(); datosUsuario.Mac = datosConexion.mac(); datosUsuario.Session = login.Session; datosUsuario.FechaInicio = DateTime.Now; auten.guardadoSession(datosUsuario); if (tabla.Rol == 1) { usuario.Url = "~/View/Inicio_Usuario.aspx"; usuario.Mensaje = "Bienvenido"; } else { usuario.Url = "~/View/Inicio_Admin.aspx"; usuario.Mensaje = "Bienvenido"; } } else if (id == -1) { usuario.Url = "~/View/Login_Visitante.aspx"; usuario.Mensaje = "Maximo usuarios activos."; } else if (id == -2) { usuario.Url = "~/View/Login_Visitante.aspx"; usuario.Mensaje = "Usuario Bloqueado intente mas tarde."; } else { usuario.Url = "~/View/Login_Visitante.aspx"; usuario.Mensaje = "Usuario o contraseña incorrectas."; } return(usuario); } catch { usuario.Url = "~/View/Login_Visitante.aspx"; usuario.Mensaje = "Usuario o contraseña incorrectas."; return(usuario); } }