public FrmMenuAcaoCurso(Curso curso, string acao)
        {
            InitializeComponent();
            CursoNegocios cursoNegocios = new CursoNegocios();
            if (acao == "Inserir Curso")
            {
                this.Text = "Inserir Curso";
            }
            else if (acao == "Alterar Curso")
            {
                this.Text = "Alterar Curso";
                textBoxAcaoCursoID.Text = curso.CursoID.ToString();
                textBoxAcaoCursoNome.Text = curso.CursoNome;
                comboBoxAcaoCursoUnidadeNome.Text = curso.CursoUnidadeNome;
                cursoold = curso;
            }
            else if(acao == "Consultar Curso")
            {
                this.Text = "Consultar Curso";
                textBoxAcaoCursoID.Text = curso.CursoID.ToString();
                textBoxAcaoCursoNome.Text = curso.CursoNome;
                textBoxAcaoCursoUnidadeNome.Text = curso.CursoUnidadeNome;

                buttonAcaoCursoConfirmar.Hide();
                buttonAcaoCursoCancelar.Hide();
                textBoxAcaoCursoNome.ReadOnly = true;
                textBoxAcaoCursoUnidadeNome.Location = new Point(68, 87);
                textBoxAcaoCursoUnidadeNome.Visible = true;
                comboBoxAcaoCursoUnidadeNome.Visible = false;
                labelAcaoCursoCO.Hide();
            }
        }
        public CursoColecao ConsultarPorNome(string nome, string unidade)
        {
            //Criar uma nova coleção de clientes (aqui ela está vazia)
            CursoColecao cursoColecao = new CursoColecao();

            acessoDadosSqlServer.LimparParametros();
            DataTable dataTableCurso;

            if (unidade == "")
            {
                acessoDadosSqlServer.AdicionarParametros("@CursoNome", nome);
                dataTableCurso = acessoDadosSqlServer.ExecutarConsulta(CommandType.Text, "SELECT CursoID AS ID, CursoNome AS Curso, UnidadeNome AS Unidade FROM tblCurso INNER JOIN tblUnidade ON CursoUnidadeID = UnidadeID WHERE CursoNome LIKE '%' + @CursoNome + '%'");
            }
            else
            {
                acessoDadosSqlServer.AdicionarParametros("@CursoUnidadeID", RetornaIDCurso(unidade));
                acessoDadosSqlServer.AdicionarParametros("@CursoNome", nome);
                dataTableCurso = acessoDadosSqlServer.ExecutarConsulta(CommandType.Text, "SELECT CursoID AS ID, CursoNome AS Curso, UnidadeNome AS Unidade FROM tblCurso INNER JOIN tblUnidade ON CursoUnidadeID = UnidadeID WHERE (CursoNome LIKE '%' + @CursoNome + '%') and (CursoUnidadeID = @CursoUnidadeID)");
            }

            //Percorrer o DataTable e transformar em coleção de cliente
            //Cada linha do DataTable é um cliente
            foreach (DataRow linha in dataTableCurso.Rows)
            {
                //Criar um cliente vazio
                //Colocar os dados da linha dele
                //Adicionar ele na coleção
                Curso curso = new Curso();
                curso.CursoID = Convert.ToInt32(linha["ID"]);
                curso.CursoNome = Convert.ToString(linha["Curso"]);
                curso.CursoUnidadeNome = Convert.ToString(linha["Unidade"]);
                cursoColecao.Add(curso);
            }
            return cursoColecao;
        }
        private void buttonInserirCursoConfirmar_Click(object sender, EventArgs e)
        {
            Curso curso = new Curso();
            curso.CursoNome = textBoxInserirCursoNome.Text;
            curso.CursoUnidadeID = Convert.ToInt32(textBoxInserirCursoUnidadeID.Text);
            curso.CursoCoordenador = Convert.ToInt32(textBoxInserirCursoCoordenadorID.Text);

            if (curso.CursoNome == "" || curso.CursoUnidadeID.ToString() == "" ||
                curso.CursoCoordenador.ToString() == "")
            {
                MessageBox.Show("Favor preencher todos os campos!");
            }
            else
            {
                CursoNegocios cursoNegocios = new CursoNegocios();
                string retorno = cursoNegocios.Inserir(curso);

                try
                {
                    int cursoID = Convert.ToInt32(retorno);

                    MessageBox.Show("Registro inserido com sucesso! Código cadastrado: " + cursoID.ToString());
                    this.DialogResult = DialogResult.Yes;
                }
                catch
                {
                    MessageBox.Show("Não foi possível completar a operação! Detalhes: " + retorno, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    this.DialogResult = DialogResult.No;
                }
            }
        }
        public CursoColecao ConsultarPorNome(string nome)
        {
            //Criar uma nova coleção de clientes (aqui ela está vazia)
            CursoColecao cursoColecao = new CursoColecao();

            acessoDadosSqlServer.LimparParametros();
            acessoDadosSqlServer.AdicionarParametros("@CursoNome", nome);
            DataTable dataTableCurso = acessoDadosSqlServer.ExecutarConsulta(CommandType.StoredProcedure, "uspCursoConsultarPorNome");

            //Percorrer o DataTable e transformar em coleção de cliente
            //Cada linha do DataTable é um cliente
            foreach (DataRow linha in dataTableCurso.Rows)
            {
                //Criar um cliente vazio
                //Colocar os dados da linha dele
                //Adicionar ele na coleção
                Curso curso = new Curso();
                curso.CursoID = Convert.ToInt32(linha["CursoID"]);
                curso.CursoNome = Convert.ToString(linha["CursoNome"]);
                curso.CursoUnidadeID = Convert.ToInt32(linha["CursoUnidadeID"]);
                curso.CursoCoordenador = Convert.ToInt32(linha["CursoCoordenador"]);
                cursoColecao.Add(curso);
            }
            return cursoColecao;
        }
        public FrmMenuAlterarCurso(Curso curso)
        {
            InitializeComponent();

            textBoxAlterarCursoNome.Text = curso.CursoNome;
            textBoxAlterarCursoUnidadeID.Text = curso.CursoUnidadeID.ToString();
            textBoxAlterarCursoCoordenadorID.Text = curso.CursoCoordenador.ToString();

            cursoold = curso;
        }
        public string Excluir(Curso curso)
        {
            try
            {
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@CursoID", curso.CursoID);
                string CursoID = acessoDadosSqlServer.ExecutarManipulacao(CommandType.Text, "DELETE FROM tblCurso WHERE CursoID = @CursoID SELECT @CursoID AS RETORNO").ToString();

                return CursoID;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        public string Excluir(Curso curso)
        {
            try
            {
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@CursoID", curso.CursoID);
                string CursoID = acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspCursoExcluir").ToString();

                return CursoID;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        public string Alterar(Curso curso)
        {
            try
            {
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@CursoID", curso.CursoID);
                acessoDadosSqlServer.AdicionarParametros("@CursoNome", curso.CursoNome);
                acessoDadosSqlServer.AdicionarParametros("@CursoUnidadeID", Convert.ToInt32(curso.CursoUnidadeID));
                string CursoID = acessoDadosSqlServer.ExecutarManipulacao(CommandType.Text, "UPDATE tblCurso SET CursoNome = @CursoNome, CursoUnidadeID = @CursoUnidadeID WHERE CursoID = @CursoID SELECT @CursoID AS RETORNO").ToString();

                return CursoID;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        public string Alterar(Curso curso)
        {
            try
            {
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@CursoID", curso.CursoID);
                acessoDadosSqlServer.AdicionarParametros("@CursoNome", curso.CursoNome);
                acessoDadosSqlServer.AdicionarParametros("@CursoUnidade", curso.CursoUnidadeID);
                acessoDadosSqlServer.AdicionarParametros("@CursoCoordenador", curso.CursoCoordenador);
                string CursoID = acessoDadosSqlServer.ExecutarManipulacao(CommandType.StoredProcedure, "uspCursoAlterar").ToString();

                return CursoID;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        public string Inserir(Curso curso)
        {
            try
            {
                acessoDadosSqlServer.LimparParametros();
                acessoDadosSqlServer.AdicionarParametros("@CursoNome", curso.CursoNome);
                acessoDadosSqlServer.AdicionarParametros("@CursoUnidadeID", Convert.ToInt32(curso.CursoUnidadeID));
                string CursoID = acessoDadosSqlServer.ExecutarManipulacao(CommandType.Text, "INSERT INTO tblCurso (CursoNome,CursoUnidadeID) VALUES (@CursoNome,@CursoUnidadeID) SELECT @@IDENTITY AS RETORNO").ToString();

                return CursoID;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        private void buttonAcaoCursoConfirmar_Click(object sender, EventArgs e)
        {
            if (this.Text == "Inserir Curso")
            {
                Curso curso = new Curso();
                CursoNegocios cursoNegocios = new CursoNegocios();

                curso.CursoNome = textBoxAcaoCursoNome.Text;
                curso.CursoUnidadeNome = "";

                if (comboBoxAcaoCursoUnidadeNome.Text != "")
                {
                    curso.CursoUnidadeNome = comboBoxAcaoCursoUnidadeNome.Text.ToString();
                    curso.CursoUnidadeID = cursoNegocios.RetornaIDCurso(curso.CursoUnidadeNome);
                }

                if (curso.CursoNome == "" || curso.CursoUnidadeNome == "")
                {
                    MessageBox.Show("Favor preencher todos os campos!");
                }
                else
                {
                    string retorno = cursoNegocios.Inserir(curso);

                    try
                    {
                        int cursoID = Convert.ToInt32(retorno);

                        MessageBox.Show("Registro inserido com sucesso! Código cadastrado: " + cursoID.ToString());
                        this.DialogResult = DialogResult.Yes;
                    }
                    catch
                    {
                        MessageBox.Show("Não foi possível completar a operação! Detalhes: " + retorno, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        this.DialogResult = DialogResult.No;
                    }
                }
            }

            if (this.Text == "Alterar Curso")
            {
                Curso curso = new Curso();
                CursoNegocios cursoNegocios = new CursoNegocios();

                curso.CursoID = Convert.ToInt32(textBoxAcaoCursoID.Text);
                curso.CursoNome = textBoxAcaoCursoNome.Text;
                curso.CursoUnidadeNome = Convert.ToString(comboBoxAcaoCursoUnidadeNome.Text);

                if (curso.CursoUnidadeNome != "")
                {
                    curso.CursoUnidadeID = cursoNegocios.RetornaIDCurso(curso.CursoUnidadeNome);
                }

                if (curso.CursoNome == cursoold.CursoNome && curso.CursoUnidadeNome == cursoold.CursoUnidadeNome)
                {
                    MessageBox.Show("Os campos não foram alterados");
                }
                else
                {

                    if (curso.CursoNome == "" || curso.CursoUnidadeNome == "")
                    {
                        MessageBox.Show("Favor preencher todos os campos!");
                    }
                    else
                    {
                        string retorno = cursoNegocios.Alterar(curso);

                        try
                        {
                            int cursoID = Convert.ToInt32(retorno);

                            MessageBox.Show("Registro inserido com sucesso! Código: " + cursoID.ToString());
                            this.DialogResult = DialogResult.Yes;
                        }
                        catch
                        {
                            MessageBox.Show("Não foi possível completar a operação! Detalhes: " + retorno, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            this.DialogResult = DialogResult.No;
                        }
                    }
                }
            }
        }