Esempio n. 1
0
        public ActionResult Login(Models.Usuario u)
        {
            try
            {
                if (u.strSenha == null)
                {
                    ModelState.AddModelError("strSenha", "Insira uma senha!");
                    return(View(u));
                }

                if (u.strMatricula.Length != 7)
                {
                    ModelState.AddModelError("strMatricula", "Insira uma matricula correta!");
                    return(View(u));
                }
                if (u.strSenha.Length < 1)
                {
                    ModelState.AddModelError("strSenha", "Insira uma senha para login!");
                    return(View(u));
                }

                using (BdJunto bd = new BdJunto())
                {
                    //tenta ´buscar os dados com as informações passadas
                    var v = bd.tbUsuario.Where(a => a.strMatricula.Equals(u.strMatricula) && a.strSenha.Equals(u.strSenha)).FirstOrDefault();
                    if (v != null)
                    {
                        //salva para depois usar
                        Session["usuID"] = v.idUsuario.ToString();
                        Session["nome"]  = v.strNome.ToString();
                        return(RedirectToAction("Index", "Home"));
                    }
                }

                ModelState.AddModelError("strMatricula", "Matricula ou Senha incorreta!");
                return(View(u));
            }
            catch (Exception a)
            {
                ModelState.AddModelError("strMatricula", "Erro!");
                return(View());
            }
        }
Esempio n. 2
0
        public ActionResult EntraToken(Models.Usuario u)
        {
            try
            {
                if (u.strMatricula.Length != 7)
                {
                    ModelState.AddModelError("strMatricula", "Insira uma matricula correta!");
                    return(View(u));
                }
                if (u.strToken.Length < 1)
                {
                    ModelState.AddModelError("strToken", "Insira o Token para login!");
                    return(View(u));
                }

                DateTime dataAtual = DateTime.Now.AddMinutes(-1);

                using (BdJunto bd = new BdJunto())
                {
                    //valida o usuário o token e a data de geração do token se ainda está válido
                    var v = bd.tbUsuario.Where(a => a.strMatricula.Equals(u.strMatricula) && a.strToken.Equals(u.strToken) && a.dtGeracaoToken > dataAtual).FirstOrDefault();
                    if (v != null)
                    {
                        Session["usuID"] = v.idUsuario.ToString();
                        Session["nome"]  = v.strNome.ToString();
                        return(RedirectToAction("Index", "Home"));
                    }
                }

                ModelState.AddModelError("strMatricula", "Matricula ou Token incorreto!");
                return(View(u));
            }
            catch (Exception a)
            {
                ModelState.AddModelError("strMatricula", "Erro!");
                return(View());
            }
        }
Esempio n. 3
0
        public ActionResult GeraToken(Models.Usuario u)
        {
            try
            {
                if (u.strMatricula.Length != 7)
                {
                    ModelState.AddModelError("strMatricula", "Insira uma matricula correta!");
                    return(View(u));
                }

                using (BdJunto bd = new BdJunto())
                {
                    var v = bd.tbUsuario.Where(a => a.strMatricula.Equals(u.strMatricula)).FirstOrDefault();
                    if (v != null)
                    {
                        Random nuAle = new Random();
                        //gera  um token e salva a data de geração, assim quando for consultar, validar conforme a data de geração
                        v.strToken        = nuAle.Next(100000, 999999).ToString();
                        v.dtGeracaoToken  = DateTime.Now;
                        db.Entry(v).State = System.Data.EntityState.Modified;
                        db.SaveChanges();

                        Session["matToken"] = v.strMatricula.ToString();
                        return(RedirectToAction("EntraToken", "Home"));
                    }
                }

                ModelState.AddModelError("strMatricula", "Matricula incorreta!");
                return(View(u));
            }
            catch (Exception a)
            {
                ModelState.AddModelError("strMatricula", "Erro!");
                return(View());
            }
        }