public static AtributosConsultaCod AtributosConsultaFromDataSet(DataSet dataSet, int i, ConexaoBD conexaoBD)
        {
            AtributosConsultaCod atributos = new AtributosConsultaCod();

            atributos.CodConsulta = (int)dataSet.Tables[0].Rows[i].ItemArray[0];
            atributos.Proposito   = (string)dataSet.Tables[0].Rows[i].ItemArray[1];
            atributos.SetHorario((DateTime)dataSet.Tables[0].Rows[i].ItemArray[2], conexaoBD);
            atributos.UmaHora = (bool)dataSet.Tables[0].Rows[i].ItemArray[3];
            if (dataSet.Tables[0].Rows[i].ItemArray[4] != System.DBNull.Value)
            {
                atributos.Observacoes = (string)dataSet.Tables[0].Rows[i].ItemArray[4];
            }
            atributos.Status = ((string)dataSet.Tables[0].Rows[i].ItemArray[5])[0];
            atributos.SetEmailMedico((string)dataSet.Tables[0].Rows[i].ItemArray[6], conexaoBD);
            atributos.SetEmailPaciente((string)dataSet.Tables[0].Rows[i].ItemArray[7], conexaoBD);
            if (dataSet.Tables[0].Rows[i].ItemArray[8] != System.DBNull.Value)
            {
                atributos.Satisfacao = (int)dataSet.Tables[0].Rows[i].ItemArray[8];
            }
            if (dataSet.Tables[0].Rows[i].ItemArray[9] != System.DBNull.Value)
            {
                atributos.Comentario = (string)dataSet.Tables[0].Rows[i].ItemArray[9];
            }
            if (dataSet.Tables[0].Rows[i].ItemArray[10] != System.DBNull.Value)
            {
                atributos.HorarioSatisfacao = (DateTime)dataSet.Tables[0].Rows[i].ItemArray[10];
            }
            if (dataSet.Tables[0].Rows[i].ItemArray[11] != System.DBNull.Value)
            {
                atributos.MedicoJahViuSatisfacao = (bool)dataSet.Tables[0].Rows[i].ItemArray[11];
            }

            return(atributos);
        }
        protected static AtributosConsultaCod[] AuxConsultasOcorrendoEmHorario(DateTime horarioRedondo, bool umaHora,
                                                                               string emailMedico, string emailPaciente, ConexaoBD conexaoBD)
        {
            DateTime horarioConsultaDe1HAntes;

            if (horarioRedondo.Minute == 0)
            {
                horarioConsultaDe1HAntes = new DateTime(horarioRedondo.Year, horarioRedondo.Month,
                                                        horarioRedondo.Day, horarioRedondo.Hour - 1, 30, 0);
            }
            else
            {
                horarioConsultaDe1HAntes = new DateTime(horarioRedondo.Year, horarioRedondo.Month,
                                                        horarioRedondo.Day, horarioRedondo.Hour, 0, 0);
            }

            string cmdSelect = "select codConsulta, proposito, horario, umaHora, observacoes, status, " +
                               "emailMedico, emailPac, satisfacao, comentario, horarioSatisfacao from consulta where ";

            if (!String.IsNullOrEmpty(emailMedico))
            {
                cmdSelect += " emailMedico = '" + emailMedico + "' and ";
            }
            if (!String.IsNullOrEmpty(emailPaciente))
            {
                cmdSelect += " emailPac = '" + emailPaciente + "' and ";
            }
            cmdSelect += " (horario = '" + horarioRedondo + "' " +
                         " or (horario = '" + horarioConsultaDe1HAntes + "' and umaHora = 1)";
            if (umaHora)
            {
                DateTime horarioConsultaDe1HoraDepois = new DateTime(horarioRedondo.Year, horarioRedondo.Month,
                                                                     horarioRedondo.Day, (horarioRedondo.Minute == 0)?horarioRedondo.Hour:horarioRedondo.Hour + 1,
                                                                     (horarioRedondo.Minute == 0)?30:0, 0);
                cmdSelect += " or horario = '" + horarioConsultaDe1HoraDepois + "'";
            }
            cmdSelect += ")";

            DataSet dadosConsulta = conexaoBD.ExecuteSelect(cmdSelect);

            if (dadosConsulta.Tables[0].Rows.Count <= 0)
            {
                return(null);
            }

            AtributosConsultaCod[] atributosConsultas = new AtributosConsultaCod[dadosConsulta.Tables[0].Rows.Count];
            for (int i = 0; i < dadosConsulta.Tables[0].Rows.Count; i++)
            {
                atributosConsultas[i] = Consulta.AtributosConsultaFromDataSet(dadosConsulta, i, conexaoBD);
            }

            return(atributosConsultas);
        }
        public static AtributosConsultaCod DeCodigo(int codConsulta, ConexaoBD conexaoBD)
        {
            DataSet dataSet = conexaoBD.ExecuteSelect("select codConsulta, proposito, horario, umaHora, observacoes, status, " +
                                                      "emailMedico, emailPac, satisfacao, comentario, horarioSatisfacao, medicoJahViuSatisfacao " +
                                                      "from consulta where codConsulta = " + codConsulta);

            if (dataSet.Tables[0].Rows.Count != 1)
            {
                return(null);
            }

            AtributosConsultaCod atributos = Consulta.AtributosConsultaFromDataSet(dataSet, 0, conexaoBD);

            return(atributos);
        }
Пример #4
0
        public void AtualizarDadosConsulta(AtributosConsultaCod atributos)
        {
            switch (atributos.Status)
            {
            case 'n':     //'n' -> tem que ser no dia de hoje ou depois e observacoes tem que ser nulo
                DateTime finalHoje = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day,
                                                  23, 59, 59);
                if (atributos.Horario == null || atributos.Horario.CompareTo(finalHoje) < 0)
                {
                    throw new Exception("Uma consulta antes de hoje tem que não pode ser \"ainda não ocorrida\"!");
                }
                if (!String.IsNullOrEmpty(atributos.Observacoes))     //se observacoes nao eh nulo
                {
                    throw new Exception("Se a consulta foi cancelada não se pode ter observações!");
                }
                break;

            case 'c':                                             //'c' -> observacoes tem que ser null
                if (!String.IsNullOrEmpty(atributos.Observacoes)) //se observacoes nao eh nulo
                {
                    throw new Exception("Se a consulta foi cancelada não se pode ter observações!");
                }
                break;

            case 's':                                                                           //'s' -> o horario da consulta tem que ser depois da atual e observacoes tem que ter alguma coisa
                if (atributos.Horario == null || DateTime.Now.CompareTo(atributos.Horario) < 0) // se ainda nao foi
                {
                    throw new Exception("Para o status ser \"ocorrido\" o horário da consulta tem que ser antes do horário atual!");
                }
                if (String.IsNullOrEmpty(atributos.Observacoes))     //se observacoes eh nulo
                {
                    throw new Exception("A observação não pode ser nula para o status ser \"ocorrido\"!");
                }
                break;
            }

            if ((atributos.Status != 'n' && atributos.Status != 's' && atributos.Status != 'c') || String.IsNullOrEmpty(atributos.Proposito) ||
                atributos.Horario == null)
            {
                throw new Exception("Atributos da consulta invalido! Faltando dados!");
            }

            //proposito, medico, paciente, horario, duracao, status, observações
            this.conexaoBD.ExecuteInUpDel("update consulta set proposito='" + atributos.Proposito + "', horario='" + atributos.Horario + "', " +
                                          "umaHora= " + (atributos.UmaHora ? "1" : "0") + ", " + "status='" + atributos.Status + "', observacoes='" +
                                          atributos.Observacoes + "' " + "where codConsulta = " + atributos.CodConsulta);
        }
 //acoes de paciente
 public void RegistrarSatisfacao(AtributosConsultaCod atributosConsulta)
 {
     // ADICIONAR SATISFACAO (E TALVEZ COMENTARIO)
     if (String.IsNullOrEmpty(atributosConsulta.Comentario))
     {
         this.conexaoBD.ExecuteInUpDel("update consulta set " +
                                       " satisfacao = " + atributosConsulta.Satisfacao + ", medicoJahViuSatisfacao = 0, " +
                                       " horarioSatisfacao = '" + atributosConsulta.HorarioSatisfacao +
                                       "' where codConsulta=" + atributosConsulta.CodConsulta);
     }
     else
     {
         this.conexaoBD.ExecuteInUpDel("update consulta set comentario = '"
                                       + atributosConsulta.Comentario + "', satisfacao = " + atributosConsulta.Satisfacao +
                                       ", medicoJahViuSatisfacao = 0, horarioSatisfacao = '" + atributosConsulta.HorarioSatisfacao +
                                       "' where codConsulta=" + atributosConsulta.CodConsulta);
     }
 }
        public static AtributosConsultaCod[] TodasAsConsultas(ConexaoBD conexaoBD)
        {
            DataSet dataSet = conexaoBD.ExecuteSelect("select codConsulta, proposito, horario, umaHora, observacoes, status, " +
                                                      "emailMedico, emailPac, satisfacao, comentario, horarioSatisfacao, medicoJahViuSatisfacao from consulta " +
                                                      "order by horario desc");

            if (dataSet.Tables[0].Rows.Count <= 0)
            {
                return(null);
            }

            AtributosConsultaCod[] atributos = new AtributosConsultaCod[dataSet.Tables[0].Rows.Count];
            for (int i = 0; i < atributos.Length; i++)
            {
                atributos[i] = Consulta.AtributosConsultaFromDataSet(dataSet, i, conexaoBD);
            }

            return(atributos);
        }
        public static AtributosConsultaCod[] ConsultasDe(string email, bool ehMedico, bool ordenarPorSatisfacao, ConexaoBD conexaoBD)
        {
            DataSet dataSet = conexaoBD.ExecuteSelect("select codConsulta, proposito, horario, umaHora, observacoes, status, " +
                                                      "emailMedico, emailPac, satisfacao, comentario, horarioSatisfacao, medicoJahViuSatisfacao from consulta " +
                                                      "where " + (ehMedico?"emailMedico":"emailPac") + " = '" + email + "' order by "
                                                      + (ordenarPorSatisfacao? "horarioSatisfacao" : "horario") + " desc");

            if (dataSet.Tables[0].Rows.Count <= 0)
            {
                return(null);
            }

            AtributosConsultaCod[] atributos = new AtributosConsultaCod[dataSet.Tables[0].Rows.Count];
            for (int i = 0; i < atributos.Length; i++)
            {
                atributos[i] = Consulta.AtributosConsultaFromDataSet(dataSet, i, conexaoBD);
            }

            return(atributos);
        }
Пример #8
0
 //acoes medico
 public void MudarObservacoes(AtributosConsultaCod atributosConsulta)
 {
     this.conexaoBD.ExecuteInUpDel("update consulta set observacoes = '"
                                   + atributosConsulta.Observacoes + "', status='s' " +
                                   "where codConsulta=" + atributosConsulta.CodConsulta);
 }