Esempio n. 1
0
        /// <summary>
        /// se a lista tiver info, percorre as linhas na gridview,
        /// instancio o objeto Medico, para poder apagar a linha, selecionada, na gridview
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void PbLixo_Click(object sender, EventArgs e)
        {
            if (listaMedicos.Rows.Count > 0)
            {
                foreach (DataGridViewRow item in this.listaMedicos.SelectedRows)
                {
                    Medico apagar = (Medico)item.DataBoundItem;

                    foreach (Consulta consulta in Notificacoes.LerConsultas())
                    {
                        if (apagar.Nome == consulta.MedicoSelecionado.Nome && consulta.DiaConsulta > DateTime.UtcNow)
                        {
                            MessageBox.Show($"Não pode apagar o/a Dr/Dra {apagar.Nome}, pois tem consultas agendadas.",
                                            "ATENÇÂO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            return;
                        }
                    }
                    DialogResult resposta;

                    resposta = MessageBox.Show($"Tem a certeza que quer apagar o Dr {apagar.Nome}?",
                                               "Apagar", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

                    if (DialogResult.OK == resposta)
                    {
                        listaMedicos.Rows.RemoveAt(item.Index);
                        listaMedicos.Refresh();
                        MostraFicha();
                    }
                }
            }
        }
        /// <summary>
        /// construtor para uma nova consulta
        /// procuro nos ficheiros se a consulta com aquele medico existe naquele momento
        /// procuro nos ficheiros se a consulta com aquele animal existe naquele momento
        /// vejo se é fim de semana
        /// se estas 3 pesquisas foram falsas, marco a consulta e gravo no ficheiro
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void pbGuardar_Click_1(object sender, EventArgs e)
        {
            bool encontrei = false;

            if (ValidaAdiciona())
            {
                Consulta novaConsulta = new Consulta
                {
                    Tratamento        = cbConsultas.Text,
                    MedicoSelecionado = new Medico(cbMedicDisponivel.SelectedItem.ToString()),
                    NomeAnimal        = new Animal(animal.Nome.ToString()),
                    NomeCliente       = new Cliente(dono.Nome.ToString()),
                    DiaConsulta       = Convert.ToDateTime(dTimePConsultas.Value.ToString("dd/MM/yyyy")),
                    HoraConsulta      = cbHoras.Text,
                    ObsConsultas      = tbOBS.Text,
                };

                foreach (Consulta item in Notificacoes.LerConsultas())
                {
                    if (item.DiaConsulta.Equals(novaConsulta.DiaConsulta) &&
                        item.MedicoSelecionado.Nome.Equals(novaConsulta.MedicoSelecionado.Nome) &&
                        item.HoraConsulta.Equals(novaConsulta.HoraConsulta))
                    {
                        MessageBox.Show($"Dr/a {item.MedicoSelecionado.Nome} está em consulta a essa hora.\nEscolha outro horário ou outro Médico!",
                                        "ATENÇÃO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        encontrei = true;
                        break;
                    }
                    if (item.DiaConsulta.Equals(novaConsulta.DiaConsulta) &&
                        item.NomeAnimal.Nome.Equals(novaConsulta.NomeAnimal.Nome) &&
                        item.HoraConsulta.Equals(novaConsulta.HoraConsulta))
                    {
                        MessageBox.Show($"O animal {item.NomeAnimal.Nome} já tem uma Consulta para este dia, a esta hora",
                                        "ATENÇÃO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        encontrei = true;
                        break;
                    }
                }
                if (dTimePConsultas.Value.DayOfWeek == DayOfWeek.Saturday || dTimePConsultas.Value.DayOfWeek == DayOfWeek.Sunday)
                {
                    MessageBox.Show("A Clínica está fechada aos fins de semana.", "ATENÇÃO", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    encontrei = true;
                    LimparTexto();
                }

                if (!encontrei)
                {
                    if (cbConsultas.Text == "Outros")
                    {
                        novaConsulta.Tratamento = tbOutraConsulta.Text + " ; " + tbOBS.Text;
                    }
                    MensagemConfirmacao();
                }
            }
        }
Esempio n. 3
0
        private void PbNotificar_Click(object sender, EventArgs e)
        {
            Notificacoes notificar = new Notificacoes();

            notificar.ShowDialog();
        }