private void Promover()
        {
            DocModel   ObjDoc;
            CargoModel ObjCargo;
            int        ContagemPontosDocente;
            bool       tempoValido;

            foreach (DataGridViewRow item in grdDoc.Rows)
            {
                if (item.Selected)
                {
                    ObjDoc   = ListaDoc.Find(e => e.Id == Convert.ToInt32(item.Cells[0].Value));
                    ObjCargo = ListaCargo.Find(e => e.Cargo == ObjDoc.Cargo);
                    ContagemPontosDocente = ContaPontos(ObjDoc.Id);                   //Consulta pontuação total do docente
                    tempoValido           = ValidaTempo(ObjCargo.ID, ObjDoc.TempoXP); //Se o tempo do docente estiver de acordo tempoValido = true
                    if (ContagemPontosDocente >= ObjCargo.Pontuacao && ObjCargo.Vagas > 0 && tempoValido)
                    {
                        //ID: 9 = Professor Titular(Cargo Máximo)
                        if (ObjCargo.ID < 9)
                        {
                            ObjCargo.Vagas = ObjCargo.Vagas + 1;//Libera vaga do cargo atual
                            CtrlCargo.AtualizarCargo(ObjCargo);
                            ObjCargo       = ListaCargo.Find(e => e.ID == ObjCargo.ID + 1);
                            ObjCargo.Vagas = ObjCargo.Vagas - 1;//Ocupa uma vaga do cargo cargo novo
                            CtrlCargo.AtualizarCargo(ObjCargo);
                            ObjDoc.TempoXP = 0;
                            ObjDoc.Cargo   = ObjCargo.Cargo;
                            CtrlDocente.AtualizarDocente(ObjDoc);
                            MessageBox.Show("Professor promovido!", "Promoção Concluída!");
                        }
                        else
                        {
                            MessageBox.Show("Professor titular não precisa ser promovido!", "Promoção desnecessária!");
                        }
                    }
                    else
                    {
                        MessageBox.Show("Usuário: " + ObjDoc.Nome + "\nNão cumpre requisitos para ser promovido", "Erro!");
                    }
                }
            }

            MontaGrid();
        }
        private void AlterarDados()
        {
            DocenteController controller;

            try
            {
                if (txtNome.Text != "" || txtUsuario.Text != "" || txtSenha.Text != "")
                {
                    controller = new DocenteController();
                    if (txtNome.Text != "")
                    {
                        DocModel.Nome = txtNome.Text;
                    }

                    if (txtUsuario.Text != "")
                    {
                        DocModel.Usuario = txtUsuario.Text;
                    }

                    if (txtSenha.Text != "")
                    {
                        if (txtSenha.Text != txtConfirmaSenha.Text)
                        {
                            MessageBox.Show("Senhas precisam ser iguais");
                            return;
                        }
                        else
                        {
                            DocModel.Senha = txtSenha.Text;
                        }
                    }
                    controller.AtualizarDocente(DocModel);
                    MessageBox.Show("Atualização concluída!");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }