protected void Login_Conductor_Authenticate1(object sender, AuthenticateEventArgs e) { Conductor conductor = new Conductor(); conductor.Usuario = Login_Conductor.UserName; conductor.Contrasena = Login_Conductor.Password; ((Label)Login_Conductor.FindControl("LN_Mensaje")).Text = new LConductor().login(conductor); //Session["user"] = null; //Variable vacia (No ha iniciado sesión) conductor = new DaoConductor().login(conductor); MAC conexion = new MAC(); AccesoConductor accesoc = new AccesoConductor(); object s = Session["user"] = conductor; //Variable llena (Se inicio sesión) if (s != null) { Session["user"] = conductor; accesoc.FechaInicio = DateTime.Now; accesoc.Ip = conexion.ip(); accesoc.Mac = conexion.mac(); accesoc.Session = Session.SessionID; accesoc.IdConductor = conductor.IdConductor; new DaoSeguridadConductor().insertarAcceso(accesoc); } }
//Inserta acceso al iniciar sesion public async Task insertarAcceso(AccesoConductor accesoConductor) { using (var db = new MapeoConductor()) { db.accesoconductor.Add(accesoConductor); await db.SaveChangesAsync(); } }
//Cierra acceso al cerrar sesion public async Task cerrarAcceso(int id_conductor)//S { using (var db = new MapeoConductor()) { AccesoConductor acceso = db.accesoconductor.Where(x => x.IdConductor == id_conductor && x.FechaFin == null).FirstOrDefault(); acceso.FechaFin = DateTime.Now; db.accesoconductor.Attach(acceso); var entry = db.Entry(acceso); entry.State = EntityState.Modified; await db.SaveChangesAsync(); } }
public async Task <IHttpActionResult> login(LoginRequest login) { if (!ModelState.IsValid) { string error = "Entradas incorrectas"; foreach (var state in ModelState) { foreach (var item in state.Value.Errors) { error += $" {item.ErrorMessage}"; } } return(BadRequest(error)); } Conductor conductor = await new LConductor().login(login); if (conductor == null) { string mensaje = "Usuario y/ o contraseña incorrecta"; return(BadRequest(mensaje)); } else { var token = TokenGeneratorCo.GenerateTokenJwt(conductor); LCerrarSesionConductor conexion = new LCerrarSesionConductor(); AccesoConductor acceso = new AccesoConductor(); acceso.FechaInicio = DateTime.Now; acceso.Ip = conexion.ip(); acceso.Mac = conexion.mac(); acceso.Session = token; acceso.IdConductor = conductor.IdConductor; await new LCerrarSesionConductor().insertarAcceso(acceso); return(Ok(token)); } }
public async Task insertarAcceso(AccesoConductor acceso) { await new DaoSeguridadConductor().insertarAcceso(acceso); }