private void btnConfirmar_Click(object sender, EventArgs e)
        {
            try
            {
                PainelMovimento.Enabled = true;
                txMedico.Enabled = false;
                txDia.Enabled = false;
                btnConfirmar.Enabled = false;
                btnLimpar.Enabled = true;
                this.ActiveControl = txProntuario;
                MOVIMENTOTableAdapter mov = new MOVIMENTOTableAdapter();
                idMovimento = (int)mov.RetornaIDMovimento((int)txMedico.SelectedValue, txDia.SelectedItem.ToString());
                CarregaHoraConsulta();
            }
            catch (Exception er)
            {

                MessageBox.Show(er.Message);
            }
        }
        private void txNomeMedico_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                btnLimpar.Enabled = true;
                Controles.Enabled = true;
                txNomeMedico.Enabled = false;
                MEDICOSTableAdapter med = new MEDICOSTableAdapter();
                idMedico = (int)med.RetornaIDMedico(txNomeMedico.Text);
                MOVIMENTOTableAdapter mov = new MOVIMENTOTableAdapter();
                idMovimento = (int)mov.RetornaIDMovimento(idMedico, DateTime.Now.ToShortDateString());
                painelMovimento.Text = "Movimento: " + txNomeMedico.Text + " - " + DateTime.Now.ToShortDateString();
                this.ActiveControl = txProntuarioDesistencia;
                ExibeConsultas();
                timerDesistencias.Enabled = true;
                Horarios = new ArrayList();
                var x = DtgDadosConsultas[6, 0].Value;

                Horarios = new ArrayList();
                Horarios.Add(x);
                foreach (DataGridViewRow linha in DtgDadosConsultas.Rows)
                {
                    x = linha.Cells[6].Value;
                    if (!x.Equals(Horarios[Horarios.Count - 1]))
                        Horarios.Add(x);
                }
            }
            catch (Exception err)
            {

                MessageBox.Show(err.Message);
            }
        }
        private void ExibeConsultas()
        {
            try
            {
                #region Movimento
            DtgDadosConsultas.DataSource = null;
            MOVIMENTOTableAdapter mov = new MOVIMENTOTableAdapter();
            DtgDadosConsultas.DataSource = mov.RetornaMovimentoDia(idMovimento);
            DtgDadosConsultas.Columns[0].Visible = false;
            DtgDadosConsultas.Columns[1].Visible = false;
            DtgDadosConsultas.Columns[2].Visible = false;
            DtgDadosConsultas.Columns[3].Visible = false;
            DtgDadosConsultas.Columns[4].Visible = false;
            DtgDadosConsultas.Columns[5].Visible = false;
            int indice = 1;
            foreach (DataGridViewRow linha in DtgDadosConsultas.Rows)
            {
                if (linha.IsNewRow) continue;
                linha.HeaderCell.Value = indice.ToString();
                indice++;
            }
            DtgDadosConsultas.AutoResizeRowHeadersWidth(DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);

            #endregion

                #region Desistencias
            DESISTENCIASTableAdapter des = new DESISTENCIASTableAdapter();
            dtgDesistencias.DataSource = des.RetornaDesistencias(idMovimento);
            dtgDesistencias.Columns["IDDESISTENCIA"].Visible = false;
            dtgDesistencias.Columns["IDMOVIMENTO"].Visible = false;
            indice = 1;
            foreach (DataGridViewRow linha in dtgDesistencias.Rows)
            {
                if (linha.IsNewRow) continue;
                linha.HeaderCell.Value = indice.ToString();
                indice++;
            }
            dtgDesistencias.AutoResizeRowHeadersWidth(DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);

            #endregion

            }
            catch (Exception err)
            {

                MessageBox.Show(err.Message);
            }
        }
        private void txMedico_TextChanged(object sender, EventArgs e)
        {
            try
            {

                txDia.Items.Clear();
                if (txMedico.SelectedItem != null)
                {
                    MOVIMENTOTableAdapter movimento = new MOVIMENTOTableAdapter();
                    DataTable tbDias = movimento.RetornaDiasMovimento((int)txMedico.SelectedValue);
                    DateTime mes = DateTime.Now;
                    DateTime dia = new DateTime();
                    foreach (DataRow linha in tbDias.Rows)
                    {
                        dia = (DateTime)linha["DATA"];
                        if (dia.Month == mes.Month || dia.Month == (mes.Month + 1))
                            txDia.Items.Add(dia.ToShortDateString());
                    }
                }
                txDia.ResetText();
                txDia.SelectedItem = null;
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }
        private void CarregaHoraConsulta()
        {
            try
            {
                txProntuario.ReadOnly = false;
                VAGASTableAdapter vagas = new VAGASTableAdapter();
                DataTable tbHora = vagas.RetornaHorarios(idMovimento);
                foreach (DataRow linh in tbHora.Rows)
                {
                    var nome = linh["NOME"].ToString();
                    var hora = linh["HORARIO"].ToString();
                    var idvaga = linh["IDVAGA"].ToString();
                    var pront = linh["PRONTUARIO"].ToString();
                    if (nome.Equals(""))
                    {
                        txIdvaga.Text = idvaga;
                        txHora.Text = hora;
                        break;
                    }
                }

                if (txIdvaga.Text.Equals(""))
                {
                    MessageBox.Show("Não há mais vagas para a data e o médico selecionado!");
                    txProntuario.ReadOnly = true;
                }

                MOVIMENTOTableAdapter view = new MOVIMENTOTableAdapter();
                DtgDadosConsultas.DataSource= view.RetornaMovimentoDia(idMovimento);
                DtgDadosConsultas.Columns[0].Visible = false;
                DtgDadosConsultas.Columns[1].Visible = false;
                DtgDadosConsultas.Columns[2].Visible = false;
                DtgDadosConsultas.Columns[3].Visible = false;
                DtgDadosConsultas.Columns[4].Visible = false;
                DtgDadosConsultas.Columns[5].Visible = false;
                DtgDadosConsultas.Columns[9].Visible = false;

                int indice = 1;
                foreach (DataGridViewRow linha in DtgDadosConsultas.Rows)
                {
                    if (linha.IsNewRow) continue;
                    linha.HeaderCell.Value = indice.ToString();
                    indice++;
                }

                DtgDadosConsultas.AutoResizeRowHeadersWidth(DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders);
            }
            catch (Exception err)
            {

                MessageBox.Show(err.Message);
            }
        }
        private void InsereMovimento(string _nome, int _idMedico)
        {
            try
            {
                DateTime dtInicio = DateTime.Parse(dataInicio);
                DateTime dtFim = DateTime.Parse(dataFim);
                TimeSpan dias = dtFim - dtInicio;
                MOVIMENTOTableAdapter movimento;
                VAGASTableAdapter vagas;
                int dia = dtInicio.Day;
                int mes = dtInicio.Month;
                int ano = dtInicio.Year;
                for (int i = 0; i <= dias.Days; i++)
                {
                    progressBar1.Value += 3;
                    string _data = dia + "/" + mes + "/" + ano;
                    dtInicio = DateTime.Parse(_data);
                    movimento = new MOVIMENTOTableAdapter();
                    int qtdMovimento = (int)movimento.ContaMovimento(dtInicio.ToShortDateString(),_idMedico);
                    if (qtdMovimento == 0)
                    {
                        movimento.Insert(_idMedico, dtInicio, null);
                        int idMovimento = (int)movimento.RetornaUltimoID();
                        //int idMovimento = 1;
                        InsereVagas(idMovimento, dtInicio, _nome);
                        vagas = new VAGASTableAdapter();
                        int qtdVagas = (int)vagas.ContaVagas(idMovimento);
                        if (qtdVagas < 1)
                            movimento.DeletaMovimentoNulo(idMovimento);
                        else
                            movimento.AtualizaNumVagas(qtdVagas, idMovimento);
                    }

                    dia++;
                }
                progressBar1.Value = 100;
            }
            catch (Exception err)
            {

                MessageBox.Show(err.Message);
            }
        }