public void Inserir(Funcionario funcionario)
 {
     using (contexto = new Contexto())
     {
         string strQuery = " INSERT INTO " + this.bancoFrequencia + "FUNCIONARIO(Matricula, Funcao, LoginRede) ";
         strQuery += string.Format(" VALUES('{0}', '{1}', '{2}') ", funcionario.Matricula, funcionario.Funcao, funcionario.LoginRede);
         contexto.ExecutaComando(strQuery);
     }
 }
 public void Salvar(Funcionario funcionario)
 {
     if (funcionario.IdFuncionario > 0)
     {
         Alterar(funcionario);
     }
     else
     {
         Inserir(funcionario);
     }
 }
 public void Alterar(Funcionario funcionario)
 {
     using (contexto = new Contexto())
     {
         string strQuery = " UPDATE " + this.bancoFrequencia + "FUNCIONARIO SET ";
         strQuery += string.Format(" Matricula = '{0}', ", funcionario.Matricula);
         strQuery += string.Format(" Funcao = '{0}', ", funcionario.Funcao);
         strQuery += string.Format(" LoginRede = '{0}' ", funcionario.LoginRede);
         strQuery += string.Format(" WHERE Matricula = '{0}' ", funcionario.Matricula);
         contexto.ExecutaComando(strQuery);
     }
 }
 public ActionResult Cadastrar(Funcionario funcionario)
 {
     if (!ModelState.IsValid)
     {
         appFuncionario.Salvar(funcionario);
         return RedirectToAction("Index");
     }
     else
     {
         ViewBag.Cidade = new SelectList(appCidade.ListarTodos(), "IdCidade", "NomeCidade");
         ViewBag.Estado = new SelectList(appEstado.ListarTodos(), "IdEstado", "NomeEstado");
         return View(funcionario);
     }
 }
 private void Alterar(Funcionario funcionario)
 {
     using (contexto = new Contexto())
     {
         string strQuery = " UPDATE FUNCIONARIO SET ";
         strQuery += string.Format(" Nome = '{0}', ", funcionario.Nome);
         strQuery += string.Format(" DataNascimento = '{0}', ", funcionario.DataNascimento);
         strQuery += string.Format(" CPF = '{0}', ", funcionario.CPF);
         strQuery += string.Format(" Cargo = '{0}', ", funcionario.Cargo);
         strQuery += string.Format(" Salario = {0}, ", funcionario.Salario);
         strQuery += string.Format(" IdCidade = {0}, ", funcionario.IdCidade);
         strQuery += string.Format(" IdEstado = {0} ", funcionario.IdEstado);
         strQuery += string.Format(" WHERE IdFuncionario = {0} ", funcionario.IdFuncionario);
         contexto.ExecutaComando(strQuery);
     }
 }
        public Funcionario ObterDadosFuncionario(string login, string dominio, string bancoFrequencia)
        {
            FuncionarioAplicacao funcionario = new FuncionarioAplicacao(bancoFrequencia);//pega do método
            Funcionario funcRetorno = null;//cria pra retornar
            List<Funcionario> listaFuncionario;//cria pra receber o método
            Funcionario objFuncionario = new Funcionario();//cria o objeto

            objFuncionario.LoginRede = dominio + "/" + login;//banco já pegou no método aplicação

            listaFuncionario = funcionario.ObterPesquisa(objFuncionario);

            if (listaFuncionario != null && listaFuncionario.Count > 0)
            {
                funcRetorno = listaFuncionario[0];//p/ receber tds
            }

            return funcRetorno;
        }
        private void insertarFuncionarios()
        {
            Funcionario fun = new Funcionario(0001, "Jose", "Perez", "12345678");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now, "08:00", "18:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(1), "08:00", "18:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(2), "08:00", "18:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(3), "08:00", "18:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(4), "08:00", "18:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(5), "08:00", "18:00");
            Funcionarios.Add(fun);

            fun = new Funcionario(0002, "Pedro", "Romani", "12345678");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now, "08:00", "12:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(1), "08:00", "12:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(2), "08:00", "12:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(3), "08:00", "12:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(4), "08:00", "12:00");
            fun.agregarDiaPlanificacion(1000, 0, DateTime.Now.AddDays(5), "08:00", "12:00");
            Funcionarios.Add(fun);

            fun = new Funcionario(0003, "Juan", "Solari", "12345678");
            Funcionarios.Add(fun);

            fun = new Funcionario(0004, "Jorge", "Perrune", "12345678");
            Funcionarios.Add(fun);

            fun = new Funcionario(0005, "Roberto", "Simpson", "12345678");
            Funcionarios.Add(fun);

            fun = new Funcionario(0006, "Martin", "Gonzalez", "12345678");
            Funcionarios.Add(fun);

            fun = new Funcionario(0007, "Rodrigo", "Fernandez", "12345678");
            Funcionarios.Add(fun);

            fun = new Funcionario(0008, "Pablo", "Nuñez", "12345678");
            Funcionarios.Add(fun);

        }
 public ActionResult Editar(Funcionario funcionario)
 {
     if (ModelState.IsValid)
     {
         appFuncionario.Salvar(funcionario);
         return RedirectToAction("Index");
     }
     else
     {
         return View(funcionario);
     }
 }
        //lista pode ter parâmetro
        public List<Funcionario> ObterPesquisa(Funcionario funcionario)
        {
            using (contexto = new Contexto())
            {
                string strQuery = null;

                if (funcionario.LoginRede != null)
                {
                    strQuery = " SELECT F.Matricula, F.Funcao, F.LoginRede FROM " + this.bancoFrequencia + "FUNCIONARIO as F with (nolock) ";
                    strQuery += " LEFT JOIN " + this.bancoFrequencia + "FUNCIONARIODADO as FD with (nolock) ON (F.Matricula = FD.Chapa) ";
                    strQuery += string.Format(" WHERE upper(FD.Status) <> 'DEMITIDO' AND F.LoginRede = '{0}' ", funcionario.LoginRede);
                    var retorno = contexto.ExecutaComandoComRetorno(strQuery);
                    return TransformaDataReaderEmLista(retorno);
                }
                else
                {
                    return null;
                }
            }
        }
        private List<Funcionario> TransformaDataReaderEmLista(SqlDataReader reader)
        {
            var funcionarios = new List<Funcionario>();

            while (reader.Read())
            {
                Funcionario funcionario = new Funcionario();
                funcionario.Matricula = reader["Matricula"].ToString();
                funcionario.Funcao = reader["Funcao"].ToString();
                funcionario.LoginRede = reader["LoginRede"].ToString();

                funcionarios.Add(funcionario);
            }

            reader.Close();
            return funcionarios;
        }
        private List<Funcionario> TransformaDataReaderEmLista(SqlDataReader reader)
        {
            var funcionarios = new List<Funcionario>();

            while (reader.Read())
            {
                Funcionario funcionario = new Funcionario();
                funcionario.IdFuncionario = int.Parse(reader["IdFuncionario"].ToString());
                funcionario.Nome = reader["Nome"].ToString();
                funcionario.DataNascimento = DateTime.Parse(reader["DataNascimento"].ToString());
                funcionario.CPF = reader["CPF"].ToString();
                funcionario.Cargo = reader["Cargo"].ToString();
                funcionario.Salario = Decimal.Parse(reader["Salario"].ToString());
                funcionario.IdCidade = int.Parse(reader["IdCidade"].ToString());
                funcionario.IdEstado = int.Parse(reader["IdEstado"].ToString());

                funcionario.Cidade = new Cidade();
                funcionario.Cidade.NomeCidade = reader["NomeCidade"].ToString();

                funcionario.Estado = new Estado();
                funcionario.Estado.NomeEstado = reader["NomeEstado"].ToString();

                funcionarios.Add(funcionario);
            }
            reader.Close();
            return funcionarios;
        }
 private void Inserir(Funcionario funcionario)
 {
     using (contexto = new Contexto())
     {
         string strQuery = " INSERT INTO FUNCIONARIO(Nome, DataNascimento, CPF, Cargo, Salario, IdCidade, IdEstado) ";
         strQuery += string.Format(" VALUES('{0}', '{1}', '{2}','{3}', {4}, {5}, {6}) ", funcionario.Nome, funcionario.DataNascimento,
             funcionario.CPF, funcionario.Cargo, funcionario.Salario, funcionario.IdCidade, funcionario.IdEstado);
         contexto.ExecutaComando(strQuery);
     }
 }