public ActionResult Adiciona(Pessoa funcionario)
        {
            if (ModelState.IsValid)
            {
                PessoasDAO  funcDAO = new PessoasDAO();
                UsuariosDAO userDAO = new UsuariosDAO();
                funcDAO.Adiciona(funcionario);

                Usuario user = new Usuario()
                {
                    User     = funcionario.Email,
                    Senha    = funcionario.Cpf,
                    PessoaId = funcionario.Id,
                };

                userDAO.Adiciona(user);
                RegistrarLog(funcionario, "REGISTROU");

                return(RedirectToAction("Index", "Funcionario"));
            }
            else
            {
                TipoPessoasDAO dao = new TipoPessoasDAO();
                ViewBag.TipoPessoas = dao.Lista();

                return(View("Form"));
            }
        }
        public ActionResult Editar(int id)
        {
            PessoasDAO     dao            = new PessoasDAO();
            Pessoa         funcionario    = dao.BuscaPorId(id);
            TipoPessoasDAO tipoPessoasDao = new TipoPessoasDAO();

            ViewBag.TipoPessoas  = tipoPessoasDao.Lista();
            ViewBag.Funcionarios = funcionario;

            return(View());
        }
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            Pessoa         user  = (Pessoa)filterContext.HttpContext.Session["UsuarioLogado"];
            TipoPessoasDAO dao   = new TipoPessoasDAO();
            TipoPessoa     cargo = dao.BuscaPorId(user.TipoPessoaId);


            if (cargo.Nome == "Funcionario")
            {
                filterContext.Result = new RedirectToRouteResult(
                    new RouteValueDictionary(
                        new { action = "Errors", controller = "Home" }));
            }
        }
        public ActionResult Form()
        {
            IList <TipoPessoa> tipoPessoas = new List <TipoPessoa>();
            TipoPessoasDAO     dao         = new TipoPessoasDAO();

            foreach (TipoPessoa pessoa in dao.Lista())
            {
                if (pessoa.Nome != "Cliente")
                {
                    tipoPessoas.Add(pessoa);
                }
            }
            ViewBag.TipoPessoas = tipoPessoas;

            return(View());
        }