public ActionResult Create([Bind(Include = "UsernameApp,PasswordApp")] Employees employees) { if (employees.UsernameApp == null || employees.PasswordApp == null) { ModelState.AddModelError("", "Los campos son obligatorios"); return(View(employees)); } var existeUsuario = db.Employees.Include(e => e.Employees2).Where(p => p.UsernameApp == employees.UsernameApp); if (ModelState.IsValid) { if (existeUsuario.SingleOrDefault() != null) { ModelState.AddModelError("", "El usuario ya existe"); return(View(employees)); } employees.PasswordApp = EncriptersUtil.MD5(employees.PasswordApp); Random rd = new Random(); employees.LastName = "Employeed" + rd.Next(1, 1000).ToString(); db.Employees.Add(employees); db.SaveChanges(); Session["MensajeRegistro"] = "Usuario registrado correctamente, inicie sesión por favor."; return(RedirectToAction("Login", "Home")); } return(View(employees)); }
public ActionResult Login(Employees dto) { IQueryable <Employees> employees = null; if (dto.UsernameApp == null || dto.PasswordApp == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var existeUsuario = db.Employees.Include(e => e.Employees2).Where(p => p.UsernameApp == dto.UsernameApp); if (ModelState.IsValid) { if (existeUsuario.SingleOrDefault() == null) { ModelState.AddModelError("", "El usuario no existe"); return(View(dto)); } dto.PasswordApp = EncriptersUtil.MD5(dto.PasswordApp); employees = db.Employees.Include(e => e.Employees2).Where(p => p.UsernameApp == dto.UsernameApp && p.PasswordApp == dto.PasswordApp); if (employees.SingleOrDefault() == null) { ModelState.AddModelError("", "La contraseña es incorrecta"); return(View(dto)); } } FormsAuthentication.SetAuthCookie(dto.EmployeeID.ToString(), false); var singleOrDefault = employees.SingleOrDefault(); if (singleOrDefault != null) { Session["Usuario"] = singleOrDefault.UsernameApp; } string authId = dto.EmployeeID.ToString(); Session["AuthID"] = authId; var cookie = new HttpCookie("AuthID") { Value = authId }; Response.Cookies.Add(cookie); return(RedirectToAction("Index", "Orders")); }