コード例 #1
0
 public Medicos(string username, string pass, string nome, string horaentrada, string horasaida, int niss, Especialidades especialidade) : base(username, pass)
 {
     Nome          = nome;
     HoraEntrada   = horaentrada;
     HoraSaida     = horasaida;
     Niss          = niss;
     Especialidade = especialidade;
 }
コード例 #2
0
        /// <summary>
        /// Botão de Selecionar Especialidade. Instância um objeto da class Especialidades, com o nome da especialidade selecionada.
        /// Se o utilizador deseja selecioná-la para inserção do médico, envia o objeto para o form de Adicionar Médico, através do método GetFormSelecionarEspecialidade;
        /// </summary>
        private void BotaoSelecionarEspecialidade(object sender, EventArgs e)
        {
            if (lvListaEspecialidades.SelectedItems.Count > 0)
            {
                string especialidadeSelecionada = lvListaEspecialidades.SelectedItems[0].SubItems[1].Text.ToString();

                Especialidades especialidade = new Especialidades(especialidadeSelecionada);

                //Mensagem de Confirmação
                DialogResult confirmacaoAdicionar = MessageBox.Show("Tem a certeza qe deseja selecionar a especialidade '" + especialidadeSelecionada + "' ?", "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                if (confirmacaoAdicionar == DialogResult.Yes)
                {
                    formAdicionarMedico.GetFormSelecionarEspecialidade(especialidade);
                    formAdicionarMedico.Show();
                    Close();
                }
            }
        }
コード例 #3
0
        private void FormMenu_Load(object sender, EventArgs e)
        {
            connect.Open();

            DataSet       dados = new DataSet();
            SqlCommand    query = new SqlCommand();
            SqlDataReader results;
            string        queryString;

            //Carregar Especialidades
            queryString       = "SELECT nome FROM especialidade";
            query.CommandText = queryString;
            query.Connection  = connect;

            results = query.ExecuteReader();

            if (results.HasRows)
            {
                while (results.Read())
                {
                    Especialidades especialidade = new Especialidades(results["nome"].ToString());
                    registosEspecialidades.Add(especialidade);
                }
            }

            results.Close();
            //----------------------------------------

            //Carregar Pacientes

            queryString = "SELECT nome, telefone, niss"
                          + " FROM paciente";
            query.CommandText = queryString;
            query.Connection  = connect;

            results = query.ExecuteReader();

            if (results.HasRows)
            {
                while (results.Read())
                {
                    Pacientes paciente = new Pacientes(
                        results[0].ToString(),
                        Convert.ToInt32(results[1]),
                        Convert.ToInt32(results[2])
                        );

                    registosPacientes.Add(paciente);
                }
            }

            results.Close();
            //----------------------------------------

            //Carregar Médicos
            queryString = "SELECT username, password, medico.nome, medico.hora_entrada, medico.hora_saida, medico.niss, especialidade.nome"
                          + " FROM utilizador"
                          + " JOIN medico ON utilizador.Id = medico.id_utilizador"
                          + " JOIN especialidade ON especialidade.Id = medico.id_especialidade";
            query.CommandText = queryString;
            query.Connection  = connect;

            results = query.ExecuteReader();

            if (results.HasRows)
            {
                while (results.Read())
                {
                    Especialidades especialidade = registosEspecialidades
                                                   .Where(esp => esp.Nome.Equals(results[6].ToString())).First();

                    Medicos medico = new Medicos(
                        results[0].ToString(),
                        results[1].ToString(),
                        results[2].ToString(),
                        results[3].ToString(),
                        results[4].ToString(),
                        Convert.ToInt32(results[5]),
                        especialidade
                        );
                    registosMedicos.Add(medico);
                }
            }

            results.Close();
            //----------------------------------------

            //Carregar marcações

            queryString = "SELECT paciente.nome, data, hora, medico.nome"
                          + " FROM marcacao"
                          + " JOIN medico ON marcacao.id_medico = medico.id_utilizador"
                          + " JOIN paciente ON marcacao.id_paciente = paciente.id";
            query.CommandText = queryString;
            query.Connection  = connect;

            results = query.ExecuteReader();

            if (results.HasRows)
            {
                while (results.Read())
                {
                    Pacientes paciente = registosPacientes.Where(p => p.Nome.Equals(results[0].ToString())).First();
                    Medicos   medico   = registosMedicos.Where(m => m.Nome.Equals(results[3].ToString())).First();

                    Marcacao marcacao = new Marcacao(
                        paciente,
                        Convert.ToDateTime(results[1].ToString()),
                        results[2].ToString(),
                        medico,
                        false
                        );

                    registosMarcacoes.Add(marcacao);
                }
            }

            results.Close();
            //----------------------------------------

            connect.Close();
        }
コード例 #4
0
        /// <summary>
        /// Botão de Adicionar Médico. Verifica se os campos estão vazios, e
        /// </summary>
        private void BotaoAdicionarMedico(object sender, EventArgs e)
        {
            if (tbNome.Text.Length > 0 && tbNSS.Text.Length > 0)
            {
                if (tbEspecialidade.Text.Length > 0)
                {
                    int    nissMedico;
                    string nissForm = tbNSS.Text.Trim();

                    //Converte o NISS inserido para um inteiro. Se não conter caratéres ou caratéres especiais, devolve um boolean de tipo true.
                    if (Int32.TryParse(nissForm, out nissMedico))
                    {
                        //Se a hora de entrada inserida é antes da hora de saida inserida, devolve true.
                        if (dtpHoraEntrada.Value.CompareTo(dtpHoraSaida.Value) < 0)
                        {
                            string         usernameMedico      = tbUsername.Text.Trim();
                            string         passwordMedico      = mtbPassword.Text;
                            string         nomeMedico          = tbNome.Text.Trim();
                            string         horaEntradaMedico   = dtpHoraEntrada.Text;
                            string         horaSaidaMedico     = dtpHoraSaida.Text;
                            Especialidades especialidadeMedico = especialidadeSelecionada;

                            //Mensagem de Confirmação
                            DialogResult confirmacaoAdicionar = MessageBox.Show("Tem a certeza qe deseja inserir o médico '" + nomeMedico + "' ?", "Confirmação", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                            if (confirmacaoAdicionar == DialogResult.Yes)
                            {
                                //Se a especialidade selecionada é do tipo Especialidades. (Redundante, usado apenas para validar o valor de retorno do form de Selecionar Especialidade)
                                if (especialidadeMedico is Especialidades)
                                {
                                    Medicos medico = new Medicos(usernameMedico, passwordMedico, nomeMedico, horaEntradaMedico, horaSaidaMedico, nissMedico, especialidadeMedico);

                                    try
                                    {
                                        if (medico.VerificarDadosMedico())
                                        {
                                            if (medico.Adicionar())
                                            {
                                                MessageBox.Show("Médico inserido com sucesso", "Sucesso", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                                formGestaoMedicos.RefreshTabelaMedicos();
                                                formGestaoMedicos.Show();
                                                Close();
                                            }
                                        }

                                        else
                                        {
                                            MessageBox.Show("O médico inserido já existe.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                        }
                                    }

                                    catch (Exception)
                                    {
                                        MessageBox.Show("Ocorreu um erro na inserção do médico.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    }
                                }
                            }
                        }

                        else
                        {
                            MessageBox.Show("O horário escolhido é inválido.", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }

                else
                {
                    MessageBox.Show("Não preencheu a especialidade do médico a inserir", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

            else
            {
                MessageBox.Show("Preencha todos os dados para a inserção do médico", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #5
0
        /// <summary>
        /// Método para receber a especialidade selecionada, no form de Selecionar Especialidade.
        /// </summary>
        /// <param name="especialidade">Especialidade Selecionada</param>
        public void GetFormSelecionarEspecialidade(Especialidades especialidade)
        {
            tbEspecialidade.Text = especialidade.Nome;

            especialidadeSelecionada = especialidade;
        }