public ActionResult Alterar(tblFuncionario funcionario, FormCollection formulario)
 {
     int idFuncionario = Convert.ToInt32(formulario["idFuncionario"]);
     if (Session["ADMINISTRADOR"] != null)
     {
         if (Ferramenta.ValidarEmail(funcionario.email))
         {
             using (CarOnlineEntities DB = new CarOnlineEntities())
             {
                 funcionario = DB.tblFuncionario.FirstOrDefault(a => a.idFuncionario.Equals(idFuncionario));
                 funcionario.bairro = formulario["bairro"];
                 funcionario.endereco = formulario["endereco"];
                 funcionario.email = formulario["email"];
                 funcionario.senha = formulario["senha"];
                 funcionario.celular = formulario["celular"];
                 funcionario.telefone = formulario["telefone"];
                 funcionario.nome = formulario["nome"];
                 funcionario.idCargo = Convert.ToInt32(formulario["Cargos"]);
                 funcionario.idCidade = Convert.ToInt32(formulario["Cidades"]);
                 funcionario.idTipoPermissao = Convert.ToInt32(formulario["TipoPermissao"]);
                 DB.SaveChanges();
             }
             TempData["mensagemRetorno"] = "Funcionário " + funcionario.nome + " alterado(a) com sucesso!";
             return RedirectToAction("Consulta");
         }
         else
         {
             TempData["mensagemRetorno"] = "O formato do email é inválido!";
             return RedirectToAction("Alteracao", new { id=idFuncionario });
         }
     }
     else
         return RedirectToAction("Index", "Login", new { area = "administrativo" });
 }
        public ActionResult ValidarLogin(FormCollection formulario)
        {
            tblAdministrador dadosAdministrador = new tblAdministrador();
            tblFuncionario dadosFuncionario = new tblFuncionario();

            if (Ferramenta.ValidarEmail(formulario["emailAdministrador"]))
            {
                using (CarOnlineEntities DB = new CarOnlineEntities())
                {
                    string emailAdministrador = formulario["emailAdministrador"];
                    string senhaAdministrador = formulario["senhaAdministrador"];
                    var query = DB.tblAdministrador.FirstOrDefault(a => a.email.Equals(emailAdministrador) && a.senha.Equals(senhaAdministrador));
                    if (query != null)
                    {
                        dadosAdministrador = (tblAdministrador)query;
                        Session["ADMINISTRADOR"] = dadosAdministrador;
                        return RedirectToAction("Index", "Principal", new { area = "administrativo" });
                    }
                    else
                    {
                        var query2 = DB.tblFuncionario.FirstOrDefault(a => a.email.Equals(emailAdministrador) && a.senha.Equals(senhaAdministrador));
                        if (query2 != null)
                        {
                            dadosFuncionario = (tblFuncionario)query2;
                            Session["FUNCIONARIO"] = dadosFuncionario;
                            return RedirectToAction("Index", "Principal", new { area = "administrativo" });
                        }
                        else
                        {
                            TempData["mensagemRetorno"] = "Email ou senha inválidos!";
                            return RedirectToAction("Index", "Login", new { area = "administrativo" });
                        }
                    }
                }
            }
            else
            {
                TempData["mensagemRetorno"] = "O formato do email é inválido!";
                return RedirectToAction("Index", "Login", new { area = "administrativo" });
            }
        }
 public ActionResult Alteracao(int id)
 {
     if (Session["ADMINISTRADOR"] != null)
     {
         tblFuncionario funcionario = new tblFuncionario();
         using (CarOnlineEntities DB = new CarOnlineEntities())
         {
             List<tblCargo> cargos = DB.tblCargo.Where(c => c.ativo.Equals("S")).ToList();
             List<tblPais> paises = DB.tblPais.ToList();
             List<tblEstado> estados = DB.tblEstado.ToList();
             List<tblCidade> cidades = DB.tblCidade.ToList();
             List<tblTipoPermissao> tipoPermissao = DB.tblTipoPermissao.ToList();
             ViewBag.Paises = new SelectList(paises, "idPais", "nome");
             funcionario = DB.tblFuncionario.FirstOrDefault(a => a.idFuncionario.Equals(id));
             ViewBag.Estados = new SelectList(estados, "idEstado", "nome", funcionario.tblCidade.idEstado);
             ViewBag.Cargos = new SelectList(cargos, "idCargo", "descricao", funcionario.idCargo);
             ViewBag.Cidades = new SelectList(cidades, "idCidade", "nome",funcionario.idCidade);
             ViewBag.TipoPermissao = new SelectList(tipoPermissao, "idTipoPermissao", "descricao",funcionario.idTipoPermissao);
             return View(funcionario);
         }
     }
     else
         return RedirectToAction("Index", "Login", new { area = "administrativo" });
 }
 /// <summary>
 /// Deprecated Method for adding a new object to the tblFuncionario EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddTotblFuncionario(tblFuncionario tblFuncionario)
 {
     base.AddObject("tblFuncionario", tblFuncionario);
 }
 /// <summary>
 /// Create a new tblFuncionario object.
 /// </summary>
 /// <param name="idFuncionario">Initial value of the idFuncionario property.</param>
 /// <param name="nome">Initial value of the nome property.</param>
 /// <param name="idCidade">Initial value of the idCidade property.</param>
 /// <param name="bairro">Initial value of the bairro property.</param>
 /// <param name="endereco">Initial value of the endereco property.</param>
 /// <param name="email">Initial value of the email property.</param>
 /// <param name="dataCadastro">Initial value of the dataCadastro property.</param>
 /// <param name="idCargo">Initial value of the idCargo property.</param>
 /// <param name="idTipoPermissao">Initial value of the idTipoPermissao property.</param>
 public static tblFuncionario CreatetblFuncionario(global::System.Int32 idFuncionario, global::System.String nome, global::System.Int32 idCidade, global::System.String bairro, global::System.String endereco, global::System.String email, global::System.DateTime dataCadastro, global::System.Int32 idCargo, global::System.Int32 idTipoPermissao)
 {
     tblFuncionario tblFuncionario = new tblFuncionario();
     tblFuncionario.idFuncionario = idFuncionario;
     tblFuncionario.nome = nome;
     tblFuncionario.idCidade = idCidade;
     tblFuncionario.bairro = bairro;
     tblFuncionario.endereco = endereco;
     tblFuncionario.email = email;
     tblFuncionario.dataCadastro = dataCadastro;
     tblFuncionario.idCargo = idCargo;
     tblFuncionario.idTipoPermissao = idTipoPermissao;
     return tblFuncionario;
 }
 public ActionResult DeletarFuncionario(int id)
 {
     if (Session["ADMINISTRADOR"] != null)
     {
         tblFuncionario funcionario = new tblFuncionario();
         using (CarOnlineEntities DB = new CarOnlineEntities())
         {
             funcionario = DB.tblFuncionario.FirstOrDefault(a => a.idFuncionario.Equals(id));
             DB.DeleteObject(funcionario);
             DB.SaveChanges();
             //TempData["mensagemRetorno"] = "Funcionario " + funcionario.nome + " deletado(a) com sucesso!";
             return Json(null);
         }
     }
     else
         return RedirectToAction("Index", "Login", new { area = "administrativo" });
 }
 public ActionResult Cadastrar(tblFuncionario funcionario,FormCollection formulario)
 {
     if (Session["ADMINISTRADOR"] != null)
     {
         if (Ferramenta.ValidarEmail(funcionario.email))
         {
             if (!Ferramenta.EmailCadastrado(funcionario.email, "FUNCIONARIO"))
             {
                 using (CarOnlineEntities DB = new CarOnlineEntities())
                 {
                     funcionario.idCidade = Convert.ToInt32(formulario["Cidades"]);
                     funcionario.idCargo = Convert.ToInt32(formulario["Cargos"]);
                     funcionario.idTipoPermissao = Convert.ToInt32(formulario["TipoPermissao"]);
                     funcionario.dataCadastro = DateTime.Now;
                     DB.tblFuncionario.AddObject(funcionario);
                     DB.SaveChanges();
                 }
                 TempData["mensagemRetorno"] = "Funcionário " + funcionario.nome + " cadastrado(a) com sucesso!";
                 return RedirectToAction("Consulta");
             }
             else
             {
                 TempData["mensagemRetorno"] = "O email informado já está cadastrado!";
                 return RedirectToAction("Cadastro");
             }
         }
         else
         {
             TempData["mensagemRetorno"] = "O formato do email é inválido!";
             return RedirectToAction("Cadastro");
         }
     }
     else
         return RedirectToAction("Index", "Login", new { area = "administrativo" });
 }