public IHttpActionResult iniciarSesion([FromBody] DTOLogin log) { try { if (log == null) { return(Content(HttpStatusCode.BadRequest, "No.")); } EPersona res = cGeneral.iniciarSesion(log.email, log.password, log.rol); DTOEpToken ept = new DTOEpToken(); ept.id = res.id; ept.Password = "******"; ept.Correo = res.Correo; ept.Documento = res.Documento; ept.TipoDocumento = res.TipoDocumento; ept.pNombre = res.pNombre; ept.sNombre = res.sNombre; ept.pApellido = res.pApellido; ept.sApellido = res.sApellido; ept.tokenJWT = TokenGenerator.GenerateTokenJwt(log.email); return(Ok(ept)); } catch (Exception) { return(NotFound()); } }
public ActionResult registrarse(DTORegistro persona) { EPersona per = new EPersona(); per.id = persona.id; per.Documento = persona.Documento; per.Correo = persona.Correo; string source = persona.Password; using (SHA256 sha256Hash = SHA256.Create()) { string hash = GetHash(sha256Hash, source); per.Password = hash; } per.TipoDocumento = (int)persona.TipoDocumento; per.pNombre = persona.pNombre; per.sNombre = persona.sNombre; per.pApellido = persona.pApellido; per.sApellido = persona.sApellido; if (pxi.existEmail(persona.Correo)) { ViewBag.Message = "El correo ya existe."; return(View()); } else { pxi.crearPersona(per); //return RedirectToAction("Index"); DTOLogin log = new DTOLogin(); log.email = persona.Correo; log.password = per.Password; log.rol = "Usuario"; DTOEpToken res = pxg.iniciarSesion(log); Session["idPersona"] = res.id; Session["pNombre"] = res.pNombre; Session["sNombre"] = res.sNombre; Session["pApellido"] = res.pApellido; Session["sApellido"] = res.sApellido; Session["Correo"] = res.Correo; Session["Password"] = res.Password; //ojo que es "null" Session["tokenJWT"] = res.tokenJWT; //cargo el token TipoDoc r = (TipoDoc)res.TipoDocumento; Session["TipoDocumento"] = r.ToString(); Session["Documento"] = res.Documento; Session["Rol"] = log.rol; return(RedirectToAction("Index", "usuario")); } }
public ActionResult Login(DTOLogForm logf) { Session.Clear(); DTOLogin log = new DTOLogin(); log.email = logf.email; string source = logf.password; using (SHA256 sha256Hash = SHA256.Create()) { string hash = GetHash(sha256Hash, source); log.password = hash; } log.rol = logf.rol.ToString(); DTOEpToken res = pxg.iniciarSesion(log); if (res.pNombre == "Error") { ViewBag.Message = "Usuario no registrado"; return(View()); } else { if (res.pNombre == "ErrorRol") { ViewBag.Message = "Rol Incorrecto"; return(View()); } else { Session["idPersona"] = res.id; Session["pNombre"] = res.pNombre; Session["sNombre"] = res.sNombre; Session["pApellido"] = res.pApellido; Session["sApellido"] = res.sApellido; Session["Correo"] = res.Correo; Session["Password"] = res.Password; //ojo que es "null" Session["tokenJWT"] = res.tokenJWT; //cargo el token TipoDoc r = (TipoDoc)res.TipoDocumento; Session["TipoDocumento"] = r.ToString(); Session["Documento"] = res.Documento; Session["Rol"] = log.rol; if (log.rol == "Admin") { return(RedirectToAction("admin")); } if (log.rol == "SuperAdmin") { return(RedirectToAction("superAdmin")); } if (log.rol == "Usuario") { return(RedirectToAction("usuario")); } if (log.rol == "Conductor") { return(RedirectToAction("conductor")); } return(RedirectToAction("Index")); } } }