コード例 #1
0
        private async void btnBuscar_Click(object sender, EventArgs e)
        {
            encontrados.Clear();
            pacientes.Clear();
            client = new FireSharp.FirebaseClient(config);
            var data = await client.GetTaskAsync("PACIENTES");

            try
            {
                citas = data.ResultAs <Dictionary <string, Cita> >();

                foreach (var Cita in citas)
                {
                    pacientes.Add(Cita.Value.citaId.ToString());
                }

                for (int i = 0; i < pacientes.Count; i++)
                {
                    FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + pacientes[i]);

                    Cita obj = recuperacion.ResultAs <Cita>();
                    if (txtbNombreBusq.Text.ToUpper() == obj.nombrePaciente.ToUpper())
                    {
                        encontrados.Add(obj.citaId.ToString());

                        lbPaciente.Text = obj.nombrePaciente;
                        lbDia.Text      = obj.day;
                        lbMes.Text      = obj.mounth;
                        lbAño.Text      = obj.year;
                        lbHora.Text     = obj.hora;
                        lbMin.Text      = obj.minuto;
                        lbCorreo.Text   = obj.correoPaciente;
                        lbTel.Text      = "tel. " + obj.telefonoPciente;
                    }
                }
                if (encontrados.Count != 0)
                {
                    MessageBox.Show("Se encontraron " + encontrados.Count.ToString() + " pacientes.");
                }
                else
                {
                    MessageBox.Show("No se encontraron pacientes.");
                }
            }
            catch
            {
                MessageBox.Show("No hay registros en la base de datos.");
            }
        }
コード例 #2
0
        private async void btnSig_Click(object sender, EventArgs e)
        {
            if (seleccionado < encontrados.Count - 1)
            {
                seleccionado++;
                FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + encontrados[seleccionado]);

                Cita obj = recuperacion.ResultAs <Cita>();
                txtbNombre.Text = obj.nombrePaciente;
                txtbHora.Text   = "Hora: " + obj.hora + ":" + obj.minuto;
                txtbID.Text     = obj.citaId.ToString();
                txtbEdad.Text   = obj.edad + "años";
                txtbCorreo.Text = obj.correoPaciente;
                txtbTel.Text    = "tel. " + obj.telefonoPciente;
            }
        }
コード例 #3
0
        private async void btnConsultaListo_Click(object sender, EventArgs e)
        {
            var idcon = new Cita
            {
                citaId = long.Parse(comboAño.Text + comboMes.Text + comboDia.Text + comboHora.Text + comboMin.Text)
            };

            client = new FireSharp.FirebaseClient(config);
            FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + idcon.citaId);

            Cita obj = recuperacion.ResultAs <Cita>();

            MessageBox.Show("Paciente :" + obj.nombrePaciente + "\nFecha : " + obj.day + "/" + obj.mounth + "/" + obj.year + "\nHora" + obj.hora + ":" + obj.minuto, "BASE DE DATOS", MessageBoxButtons.OK);

            this.Close();
        }
コード例 #4
0
        private async void btnBefore_Click(object sender, EventArgs e)
        {
            this.Actualizar();
            MessageBox.Show("Botón atrás");
            if (contadorAtras >= iReg)
            {
                MessageBox.Show("NO HAGO NADA");
            }
            else
            {
                //MessageBox.Show("yA");
                contadorAtras++;
                contadorAdelante--;
                //MessageBox.Show(iReg.ToString());
                navegante = iReg - contadorAtras;
                try
                {
                    //MessageBox.Show(navegante.ToString());
                    FirebaseResponse response = await client.GetTaskAsync("PACIENTES/" + direcciones[navegante]);

                    if (response.Body != null)
                    {
                        Cita obj = response.ResultAs <Cita>();
                        lbPaciente.Text     = obj.nombrePaciente;
                        aux                 = navegante - iReg;
                        lbSimpleEstado.Text = ("Lugar " + aux.ToString());
                        lbTel.Text          = obj.telefonoPciente;
                        lbCorreo.Text       = obj.correoPaciente;
                        lbDia.Text          = obj.day;
                        lbAño.Text          = obj.year;
                        lbMes.Text          = obj.mounth;
                        estado--;
                    }
                    else
                    {
                        ActualizarAll();
                        contadorAtras = 0;
                    }
                }
                catch (Exception)
                {
                    ActualizarAll();
                    contadorAtras = 0;
                };
            }
        }
コード例 #5
0
        private async void btnAnt_Click(object sender, EventArgs e)
        {
            if (seleccionado > 0)
            {
                seleccionado--;
                FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + encontrados[seleccionado]);

                Cita obj = recuperacion.ResultAs <Cita>();
                LbPaciente.Text = obj.nombrePaciente;
                lbFecha.Text    = obj.day + "/" + obj.mounth + "/" + obj.year;
                lbHora.Text     = "Hora: " + obj.hora + ":" + obj.minuto;
                lbId.Text       = obj.citaId.ToString();
                lbEdad.Text     = obj.edad + "años";
                lbCorreo.Text   = obj.correoPaciente;
                lbTel.Text      = "tel. " + obj.telefonoPciente;
            }
        }
コード例 #6
0
        private async void btnAfter_Click(object sender, EventArgs e)
        {
            this.Actualizar();
            MessageBox.Show("Boton adelante");
            if (contadorAdelante == registros - iReg - 1)
            {
                MessageBox.Show("No hago nada");
            }
            else
            {
                contadorAdelante++;
                contadorAtras--;
                navegante = iReg + contadorAdelante;
                try
                {
                    MessageBox.Show("navegante:" + navegante.ToString() + " contador ad" + contadorAdelante.ToString() + "cont atra:" + contadorAtras);
                    FirebaseResponse response = await client.GetTaskAsync("PACIENTES/" + direcciones[navegante]);

                    if (response.Body != null)
                    {
                        Cita obj = response.ResultAs <Cita>();
                        lbPaciente.Text     = obj.nombrePaciente;
                        aux                 = navegante - iReg;
                        lbSimpleEstado.Text = ("Lugar " + aux.ToString());
                        lbTel.Text          = obj.telefonoPciente;
                        lbCorreo.Text       = obj.correoPaciente;
                        lbDia.Text          = obj.day;
                        lbAño.Text          = obj.year;
                        lbMes.Text          = obj.mounth;
                        estado--;
                    }
                    else
                    {
                        ActualizarAll();
                        contadorAdelante = 0;
                        contadorAtras    = 0;
                    }
                }
                catch
                {
                    ActualizarAll();
                    contadorAdelante = 0;
                }
            }
        }
コード例 #7
0
        private async void btnAnt_Click(object sender, EventArgs e)
        {
            if (seleccionado > 0)
            {
                seleccionado--;
                FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + encontrados[seleccionado]);

                Cita obj = recuperacion.ResultAs <Cita>();
                lbPaciente.Text = obj.nombrePaciente;
                lbDia.Text      = obj.day;
                lbMes.Text      = obj.mounth;
                lbAño.Text      = obj.year;
                lbHora.Text     = obj.hora;
                lbMin.Text      = obj.minuto;
                lbCorreo.Text   = obj.correoPaciente;
                lbTel.Text      = "tel. " + obj.telefonoPciente;
            }
        }
コード例 #8
0
        private async void btnConsultaListo_Click(object sender, EventArgs e)
        {
            pacientes.Clear();
            client = new FireSharp.FirebaseClient(config);
            var data = await client.GetTaskAsync("PACIENTES");

            try
            {
                citas = data.ResultAs <Dictionary <string, Cita> >();

                foreach (var Cita in citas)
                {
                    pacientes.Add(Cita.Value.citaId.ToString());
                }
                for (int i = 0; i < pacientes.Count; i++)
                {
                    FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + pacientes[i]);

                    Cita   obj = recuperacion.ResultAs <Cita>();
                    string id  = comboAño.Text + comboMes.Text + comboDia.Text + comboHora.Text + comboMin.Text;
                    if (id == obj.citaId.ToString())
                    {
                        MessageBox.Show("Paciente :" + obj.nombrePaciente + "\nFecha : " + obj.day + "/" + obj.mounth + "/" + obj.year + "\nHora" + obj.hora + ":" + obj.minuto, "BASE DE DATOS", MessageBoxButtons.OK);
                        disponible = false;
                    }
                }
                if (disponible == true)
                {
                    MessageBox.Show("El horario está disponible");
                }
                disponible = true;
            }
            catch (SystemException error)
            {
                MessageBox.Show(error.Message);
            }

            this.Close();
        }
コード例 #9
0
        private async void btnEliminarCita_Click(object sender, EventArgs e)
        {
            if (encontrados.Count != 0)
            {
                this.Enabled = false;
                client       = new FireSharp.FirebaseClient(config);
                var cita = new Cita
                {
                    citaId = long.Parse(encontrados[seleccionado])
                };
                FirebaseResponse response = await client.DeleteTaskAsync("PACIENTES/" + cita.citaId);

                MessageBox.Show("Se ha borrado la cita exitosamente de " + cita.citaId, "Base de datos");
                encontrados.Clear();
                pacientes.Clear();
                this.Close();
            }
            else
            {
                MessageBox.Show("No hay algún paciente seleccionado.");
            }
        }
コード例 #10
0
        private async void btnBefore_Click(object sender, EventArgs e)
        {
            if (seleccionado <= 0)
            {
                MessageBox.Show("No hay más pacientes.");
            }
            else
            {
                seleccionado--;
                try
                {
                    FirebaseResponse response = await client.GetTaskAsync("PACIENTES/" + pacientes[seleccionado]);

                    if (response.Body != null)
                    {
                        Cita obj = response.ResultAs <Cita>();
                        lbPaciente.Text = obj.nombrePaciente;
                        //lbSimpleEstado.Text = ("Lugar " + aux.ToString());
                        lbTel.Text    = obj.telefonoPciente;
                        lbCorreo.Text = obj.correoPaciente;
                        lbDia.Text    = obj.day;
                        lbAño.Text    = obj.year;
                        lbMes.Text    = obj.mounth;
                        lbHora.Text   = obj.hora;
                        lbMin.Text    = obj.minuto;
                        lbEdad.Text   = "Edad: " + obj.edad;
                    }
                    else
                    {
                        ActualizarAll();
                    }
                }
                catch (Exception)
                {
                    ActualizarAll();
                };
            }
        }
コード例 #11
0
        private async void btnAfter_Click(object sender, EventArgs e)
        {
            if (seleccionado == pacientes.Count - 1)
            {
                MessageBox.Show("No hay más pacientes.");
            }
            else
            {
                seleccionado++;
                try
                {
                    FirebaseResponse response = await client.GetTaskAsync("PACIENTES/" + pacientes[seleccionado]);

                    if (response.Body != null)
                    {
                        Cita obj = response.ResultAs <Cita>();
                        lbPaciente.Text = obj.nombrePaciente;
                        lbTel.Text      = obj.telefonoPciente;
                        lbCorreo.Text   = obj.correoPaciente;
                        lbDia.Text      = obj.day;
                        lbAño.Text      = obj.year;
                        lbMes.Text      = obj.mounth;
                        lbHora.Text     = obj.hora;
                        lbMin.Text      = obj.minuto;
                        lbEdad.Text     = "Edad: " + obj.edad;
                    }
                    else
                    {
                        ActualizarAll();
                    }
                }
                catch
                {
                    ActualizarAll();
                }
            }
        }
コード例 #12
0
        public async void ActualizarAll()
        {
            client = new FireSharp.FirebaseClient(config);

            año        = DateTime.Now.ToString("yyyy");
            mes        = DateTime.Now.ToString("MM");
            dia        = DateTime.Now.ToString("dd");
            hora       = DateTime.Now.ToString("HH");
            min        = DateTime.Now.ToString("mm");
            idcomparer = long.Parse(año + mes + dia + hora + min);
            citas.Clear();
            direcciones.Clear();

            var data = await client.GetTaskAsync("PACIENTES");

            if (data.Body != "null")
            {
                btnBefore.Enabled = true;
                btnAfter.Enabled  = true;

                citas = data.ResultAs <Dictionary <string, Cita> >();

                foreach (var Cita in citas)
                {
                    direcciones.Add(Cita.Value.citaId);
                }
                registros = direcciones.Count;
                iReg      = registros - 1;
                for (int i = 0; i < registros; i++)
                {
                    if (direcciones[iReg] < idcomparer)
                    {
                        break;
                    }
                    else if (direcciones[iReg] > idcomparer)
                    {
                        iReg--;
                    }
                    else
                    {
                        iReg--;
                        break;
                    }
                }
                if (iReg + 1 != registros)
                {
                    iReg++;//Ya tienes el paciente a mostrar
                    FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + direcciones[iReg]);

                    Cita obj = recuperacion.ResultAs <Cita>();
                    #region ETIQUETAS INCIIALES
                    lbSimpleEstado.Text = "PROXIMO PACIENTE";
                    lbPaciente.Text     = obj.nombrePaciente;
                    lbAño.Text          = obj.year;
                    lbMes.Text          = obj.mounth;
                    lbDia.Text          = obj.day;
                    lbEdad.Text         = obj.edad;
                    lbHora.Text         = obj.hora;
                    lbMin.Text          = obj.minuto;
                    lbTel.Text          = obj.telefonoPciente;
                    lbCorreo.Text       = obj.correoPaciente;
                    #endregion

                    /*if (iReg + 1 == registros)
                     * {
                     *
                     *  btnAfter.Enabled = false;
                     *  if (navegante == 0)
                     *  {
                     *
                     *      btnBefore.Enabled = false;
                     *  }
                     *  else
                     *  {
                     *      btnBefore.Enabled = true;
                     *  }
                     * }
                     * else if (navegante != 0)
                     * {
                     *
                     *  btnBefore.Enabled = true;
                     *  btnAfter.Enabled = true;
                     * }
                     * else
                     * {
                     *
                     *  btnBefore.Enabled = false;
                     * }
                     */
                }
                else
                {
                    iReg++;
                    //btnAfter.Enabled = true;
                    //btnBefore.Enabled = true;



                    lbSimpleEstado.Text = "SIN PRÓXIMA CONSULTA";
                    lbAño.Text          = "--";
                    lbMes.Text          = "--";
                    lbDia.Text          = "--";
                    lbHora.Text         = "--";
                    lbMin.Text          = "--";
                    lbCorreo.Text       = "";
                    lbTel.Text          = "";
                    lbEdad.Text         = "";
                    lbPaciente.Text     = "Hola, todo listo para registrar";
                }
            }
            else //EN EL CASO DE QUE NO HAYA REGISTROS EN LA BD
            {
                iReg              = 0;
                contadorAdelante  = 10;
                btnAfter.Enabled  = false;
                btnBefore.Enabled = false;
            }
            //El paciente a mostrar será
        }
コード例 #13
0
        public async void Actualizar()
        {
            horarios.Clear();
            pacientes.Clear();
            client = new FireSharp.FirebaseClient(config);
            var data = await client.GetTaskAsync("PACIENTES");

            for (int i = 0; i < 24; i++)
            {
                if (i < 9)
                {
                    horarios.Add("0" + (i + 1).ToString());
                    horarios.Add("0" + (i + 1).ToString());
                }
                else
                {
                    horarios.Add((i + 1).ToString());
                    horarios.Add((i + 1).ToString());
                }
            }
            for (int i = 0; i < horarios.Count; i++)
            {
                if (i % 2 == 0)
                {
                    horarios[i] += ":00";
                }
                else
                {
                    horarios[i] += ":30";
                }
            }
            try
            {
                if (data.Body != "null")
                {
                    citas = data.ResultAs <Dictionary <string, Cita> >();

                    foreach (var Cita in citas)
                    {
                        pacientes.Add(Cita.Value.citaId.ToString());
                    }

                    for (int i = 0; i < pacientes.Count; i++)
                    {
                        FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + pacientes[i]);

                        Cita obj = recuperacion.ResultAs <Cita>();
                        if (DateTime.Now.ToString("yyyy") == obj.year && DateTime.Now.ToString("MM") == obj.mounth && DateTime.Now.ToString("dd") == obj.day)
                        {
                            for (int j = 0; j < horarios.Count; j++)
                            {
                                string horaAux = obj.hora + ":" + obj.minuto;
                                if (horarios[j] == horaAux)
                                {
                                    horarios.RemoveAt(j);
                                }
                            }
                        }
                    }
                    if (horarios.Count != 0)
                    {
                        MessageBox.Show("Hay " + horarios.Count.ToString() + " horarios disponibles el día de hoy.");
                        horaLabel.Text = horarios[seleccionado];
                    }
                    else
                    {
                        MessageBox.Show("No hay horarios diponibles el día de hoy.");
                        horaLabel.Text = "--:--";
                    }
                }
            }
            catch
            {
                MessageBox.Show("No hay registros en la base de datos.");
                horaLabel.Text = horarios[seleccionado];
            }
        }
コード例 #14
0
        public async void ActualizarAll()
        {
            lbSimpleEstado.Text = "";
            client = new FireSharp.FirebaseClient(config);
            año    = DateTime.Now.ToString("yyyy");
            mes    = DateTime.Now.ToString("MM");
            dia    = DateTime.Now.ToString("dd");
            hora   = DateTime.Now.ToString("HH");
            min    = DateTime.Now.ToString("mm");
            pacientes.Clear();
            client = new FireSharp.FirebaseClient(config);
            var data = await client.GetTaskAsync("PACIENTES");

            if (data.Body != "null")
            {
                citas = data.ResultAs <Dictionary <string, Cita> >();
                foreach (var Cita in citas)
                {
                    pacientes.Add(Cita.Value.citaId.ToString());
                }

                for (int i = 0; i < pacientes.Count; i++)
                {
                    if (long.Parse(pacientes[i]) < long.Parse(año + mes + dia + hora + min))
                    {
                        if (pacientes.Count == 1 || i == (pacientes.Count - 1))
                        {
                            seleccionado = i;
                        }
                        else
                        {
                            seleccionado = i + 1;
                        }
                    }
                }

                FirebaseResponse response = await client.GetTaskAsync("PACIENTES/" + pacientes[seleccionado]);

                Cita obj = response.ResultAs <Cita>();
                lbPaciente.Text = obj.nombrePaciente;
                lbTel.Text      = obj.telefonoPciente;
                lbCorreo.Text   = obj.correoPaciente;
                lbDia.Text      = obj.day;
                lbAño.Text      = obj.year;
                lbMes.Text      = obj.mounth;
                lbHora.Text     = obj.hora;
                lbMin.Text      = obj.minuto;
                lbEdad.Text     = "Edad: " + obj.edad;
            }
            else
            {
                lbSimpleEstado.Text = "TODAVÍA NO HAY REGISTROS ";
                lbPaciente.Text     = "Hola, todo listo para su primer registro";
                lbTel.Text          = "tel. ------------";
                lbCorreo.Text       = "mail: ----------";
                lbDia.Text          = "--";
                lbAño.Text          = "--";
                lbMes.Text          = "--";
                lbHora.Text         = "--";
                lbMin.Text          = "--";
                lbEdad.Text         = "Edad: --";
            }
        }
コード例 #15
0
        private async void btnConfirmarCambio_Click(object sender, EventArgs e)
        {
            if (encontrados.Count != 0)
            {
                client = new FireSharp.FirebaseClient(config);
                var cita = new Cita
                {
                    citaId = long.Parse(encontrados[seleccionado])
                };
                //Sección de recuperación
                FirebaseResponse recuperacion = await client.GetTaskAsync("PACIENTES/" + cita.citaId);

                Cita obj = recuperacion.ResultAs <Cita>();
                switch (tipoCambio)
                {
                case 1:     //CAMBIO DE FECHA
                            //Sección de insersión
                    var citaModificada = new Cita
                    {
                        day             = comboDia2.Text,
                        mounth          = comboMes2.Text,
                        year            = comboAño2.Text,
                        hora            = comboHora2.Text,
                        minuto          = comboMin2.Text,
                        citaId          = long.Parse(comboAño2.Text + comboMes2.Text + comboDia2.Text + comboHora2.Text + comboMin2.Text),
                        nombrePaciente  = obj.nombrePaciente,
                        telefonoPciente = obj.telefonoPciente,
                        correoPaciente  = obj.correoPaciente
                    };
                    SetResponse response = await client.SetTaskAsync("PACIENTES/" + citaModificada.citaId, citaModificada);

                    FirebaseResponse eliminar = await client.DeleteTaskAsync("PACIENTES/" + obj.citaId);

                    this.Close();
                    break;

                case 2:     //CAMBIO DE NOMBRE
                    var citaModificada2 = new Cita
                    {
                        day             = obj.day,
                        mounth          = obj.mounth,
                        year            = obj.year,
                        hora            = obj.hora,
                        minuto          = obj.minuto,
                        citaId          = obj.citaId,
                        nombrePaciente  = txtbModificacion.Text,
                        telefonoPciente = obj.telefonoPciente,
                        correoPaciente  = obj.correoPaciente
                    };
                    FirebaseResponse response2 = await client.UpdateTaskAsync("PACIENTES/" + cita.citaId, citaModificada2);

                    this.Close();
                    break;

                case 3:      //CAMBIO DE TELÉFONO
                    var citaModificada3 = new Cita
                    {
                        day             = obj.day,
                        mounth          = obj.mounth,
                        year            = obj.year,
                        hora            = obj.hora,
                        minuto          = obj.minuto,
                        citaId          = obj.citaId,
                        nombrePaciente  = obj.nombrePaciente,
                        telefonoPciente = txtbModificacion.Text,
                        correoPaciente  = obj.correoPaciente
                    };
                    FirebaseResponse response3 = await client.UpdateTaskAsync("PACIENTES/" + cita.citaId, citaModificada3);

                    Cita resultado3 = response3.ResultAs <Cita>();
                    MessageBox.Show("Modificación realizada en" + resultado3.citaId, "BASE DE DATOS", MessageBoxButtons.OK);
                    this.Close();
                    break;

                case 4:      //CAMBIO DE CORREO
                    var citaModificada4 = new Cita
                    {
                        day             = obj.day,
                        mounth          = obj.mounth,
                        year            = obj.year,
                        hora            = obj.hora,
                        minuto          = obj.minuto,
                        citaId          = obj.citaId,
                        nombrePaciente  = obj.nombrePaciente,
                        telefonoPciente = obj.telefonoPciente,
                        correoPaciente  = txtbModificacion.Text
                    };
                    FirebaseResponse response4 = await client.UpdateTaskAsync("PACIENTES/" + cita.citaId, citaModificada4);

                    Cita resultado4 = response4.ResultAs <Cita>();
                    this.Close();
                    break;
                }
                encontrados.Clear();
                pacientes.Clear();
            }
            else
            {
                MessageBox.Show("No se ha seleccionado ninguna cita.");
            }
        }