示例#1
0
 public clsTurnoVista(clsMedico medico, clsPaciente paciente, DateTime fecha, int idUsuario)
 {
     this.medico = medico;
     this.paciente = paciente;
     this.fecha = fecha;
     this.costo = 0;
     this.idUsuario = idUsuario;
     this.estado = false;
     
 }
示例#2
0
 public clsTurnoVista(int id, clsMedico medico, clsPaciente paciente, DateTime fecha, float costo, int idUsuario, bool estado)
 {
     this.id = id;
     this.medico = medico;
     this.paciente = paciente;
     this.fecha = fecha;
     this.costo = costo;
     this.idUsuario = idUsuario;
     this.estado = estado;
 }
示例#3
0
        private clsPaciente metodoP(IEntidad pac2)
        {
            clsPacienteDatos pac = (clsPacienteDatos)pac2;
            clsObraSocial aux;
            clsPaciente paciente = new clsPaciente();

            try
            {
                paciente.Id = pac.Id;
                paciente.Nombre = pac.Nombre;
                paciente.Apellido = pac.Apellido;
                paciente.Dni = pac.Dni;
                paciente.Telefono = pac.Telefono;
                aux = (clsObraSocial)manejaOs.buscaPorId(pac2.Id);
                paciente.ObraSocial = aux.Nombre;
            }
            catch (SqlException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }


            return paciente;
        }
示例#4
0
        private void dgvPacientes_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (!columnasTurno)     //Si todavia no tengo columnas en losturnos sin pagar las creo.
            {
                CrearColumnasTurno();
            }

            if (dgvTurnos.Rows.Count > 0)           //Si tengo algunas cargadas en los turnos sin pagar, las borro.
            {
                dgvTurnos.Rows.Clear();
            }

            if (dgvTurnosAPagar.Rows.Count > 0)      //Borro todos los posibles turnos a pagar previamente seleccionados.
            {
                dgvTurnosAPagar.Rows.Clear();
            }



            //TOMO EL ID DEL PACIENTE SELECCIONADO
            int idPas = int.Parse(dgvPacientes.Rows[dgvPacientes.CurrentRow.Index].Cells[0].Value.ToString());


            PacienteActual = reposPaciente.buscarPorId(idPas);


            List<clsTurnoVista> ListaTurnos = reposTurno.obtenerTurnoPaciente(idPas);
            List<clsSobreTurnoVista> ListaSobreTurnos = reposSobreTurno.obtenerSobreturnoPaciente(idPas);

            foreach (clsTurnoVista turn in ListaTurnos)
            {
                if (turn.Estado == false)
                {
                    dgvTurnos.Rows.Add(turn.Id, turn.Fecha, turn.Costo, "Turno");       //LO AGREGO SI NO HAN SIDO PAGADOS AÚN
                }

            }

            foreach (clsSobreTurnoVista sobr in ListaSobreTurnos)
            {
                if (sobr.Estado == false)
                {
                    dgvTurnos.Rows.Add(sobr.Id, sobr.Fecha, sobr.Costo, "SobreTurno");  //LO AGREGO SI NO HAN SIDO PAGADOS AÚN
                }

            }



            pnlTurno.Enabled = true;
        }
示例#5
0
        private void btnFiltrar_Click(object sender, EventArgs e)
        {
            
            if(checkBoxMedico.Checked)
            {
                if(string.IsNullOrWhiteSpace(cbMedico.Text))
                {
                    MessageBox.Show("Debe seleccionar un medico para continuar", "¡Advertencia!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {                    

                    //Borro todas las filas.
                    if (dgvPacientes.Rows.Count > 0)
                    {
                        dgvPacientes.Rows.Clear();
                    }

                    if(dgvTurnos.Rows.Count > 0)
                    {
                        dgvTurnos.Rows.Clear();
                    }



                    clsMedico medicoSeleccionado = new clsMedico();

                    List<clsMedico> listaMedicos = new List<clsMedico>();

                    listaMedicos = reposMedico.obtenerMedicos();            //Traigo todos los medicos

                    foreach(clsMedico med in listaMedicos)
                    {
                        if (med.Apellido == cbMedico.Text)
                            medicoSeleccionado = med;
                    }                                                       //Encuentro el medico seleccionado y traigo todos sus turnos

                    listaTurnos = reposTurno.obtenerTurnoMedico(medicoSeleccionado.Id);         //Traigo todos los turnos dados por ese medico
                    listaSobreTurnos = reposSobreTurno.obtenerSobreTurnoMedico(medicoSeleccionado.Id);        //Traigo todos los sobre turnos dados por ese medico


                    clsPaciente pas = new clsPaciente();        //Variable a la que se le asigna el paciente de cada turno.


                    foreach(clsTurnoVista turn in listaTurnos)   //Recorro todos los turnos obteniendo el paciente de cada uno.
                    {
                        if(turn.Fecha > dtpDesde.Value && turn.Fecha < dtpHasta.Value && turn.Estado == true)
                        {                            
                            pas = reposPaciente.buscarPorId(turn.Paciente.Id);
                            
                            if(pas != null)         //Pregunto por si el paciente fue dado de baja.
                            {
                                dgvPacientes.Rows.Add(pas.Id,pas.Nombre, pas.Apellido, pas.Dni, pas.ObraSocial, pas.Telefono);
                                                            
                            }

                                
                        }


                    }

                    foreach(clsSobreTurnoVista turn in listaSobreTurnos)
                    {
                        if(turn.Fecha > dtpDesde.Value && turn.Fecha < dtpHasta.Value && turn.Estado == true)
                        {
                            
                            pas = reposPaciente.buscarPorId(turn.Paciente.Id);

                            if(pas != null)
                            {
                                dgvPacientes.Rows.Add(pas.Id,pas.Nombre, pas.Apellido, pas.Dni, pas.ObraSocial, pas.Telefono);
                            }

                        }


                    }



                }
            }
            else                //QUE EL CHECK BOX DE MEDICO NO FUE SELECCIONADO
            {

                //Borro todas las filas.
                if (dgvPacientes.Rows.Count > 0)
                {
                    dgvPacientes.Rows.Clear();
                }


                List<clsTurnoVista> listaTurnos = new List<clsTurnoVista>();
                listaTurnos = reposTurno.TurnoEntreFechas(dtpDesde.Value, dtpHasta.Value);    //Guardo todos los turnos existentes entre las fechas seleccionadas.

                List<clsSobreTurnoVista> listaSobreTurnos = new List<clsSobreTurnoVista>();
                listaSobreTurnos = reposSobreTurno.TurnoEntreFechas(dtpDesde.Value, dtpHasta.Value);


                clsPaciente pas = new clsPaciente(); //Variable para ir asignando pacientes y mostrarlos

                foreach(clsTurnoVista turn in listaTurnos)
                {
                    if (turn.Fecha > dtpDesde.Value && turn.Fecha < dtpHasta.Value && turn.Estado == true)
                    {
                        pas = reposPaciente.buscarPorId(turn.Paciente.Id);

                        if(pas != null)
                        {                          
                            dgvPacientes.Rows.Add(pas.Id,pas.Nombre, pas.Apellido, pas.Dni, pas.ObraSocial, pas.Telefono);                        
                            
                        }
                        
                    }
                }


                foreach(clsSobreTurnoVista turn in listaSobreTurnos)
                {
                    if(turn.Fecha > dtpDesde.Value && turn.Fecha < dtpHasta.Value && turn.Estado == true)
                    {
                        pas = reposPaciente.buscarPorId(turn.Paciente.Id);

                        if(pas != null)
                        {
                            dgvPacientes.Rows.Add(pas.Id,pas.Nombre, pas.Apellido, pas.Dni, pas.ObraSocial, pas.Telefono);                        

                        }
                    }
                }

        


            }


            


        }
示例#6
0
        private void actualizoXpaciente()
        {
            if (pacientes.Count > 0)
            {
                p = pacientes[cbPacientes.SelectedIndex];
                turnos.Clear();
                tur.Clear();
                turnos = rt.obtenerTurnoPaciente(p.Id);
                if (turnos.Count > 0)
                {
                    dgvTurnos.Rows.Clear();
                    foreach (clsTurnoVista t in turnos)
                    {
                        if (t.Estado)
                        {
                            dgvTurnos.Rows.Add(t.Paciente.nomCompleto(), t.Fecha, "SI");
                            tur.Add(new clsReporteTurnos(t.Paciente.nomCompleto(), t.Fecha, "SI"));
                        }
                        else
                        {
                            dgvTurnos.Rows.Add(t.Paciente.nomCompleto(), t.Fecha, "NO");
                            tur.Add(new clsReporteTurnos(t.Paciente.nomCompleto(), t.Fecha, "NO"));
                        }
                    }
                }
                else
                {
                    dgvTurnos.Rows.Clear();
                }

                sobreTurnos.Clear();
                stur.Clear();
                sobreTurnos = rst.obtenerSobreturnoPaciente(p.Id);
                if (sobreTurnos.Count > 0)
                {
                    dgvSobreturnos.Rows.Clear();
                    foreach (clsSobreTurnoVista t in sobreTurnos)
                    {
                        if (t.Estado)
                        {
                            dgvSobreturnos.Rows.Add(t.Paciente.nomCompleto(), t.Fecha, "SI");
                            stur.Add(new clsReporteTurnos(t.Paciente.nomCompleto(), t.Fecha, "SI"));
                        }
                        else
                        {
                            dgvSobreturnos.Rows.Add(t.Paciente.nomCompleto(), t.Fecha, "NO");
                            stur.Add(new clsReporteTurnos(t.Paciente.nomCompleto(), t.Fecha, "NO"));
                        }
                    }
                }
                else
                {
                    dgvSobreturnos.Rows.Clear();
                }
            }
        }
示例#7
0
        public List<clsPaciente> obtenerAlfabeticamente(string letra)
        {
            DataTable tabla;
            List<clsPaciente> lista = new List<clsPaciente>();
            clsObraSocial aux2;

            tabla = manejaPaciente.BuscarApellidoPorLetra(letra);

            foreach (DataRow aux in tabla.Rows)
            {
                aux2 = (clsObraSocial)manejaOs.buscaPorId(Convert.ToInt32(aux["obra"]));
                if (aux2 != null)
                {
                    clsPaciente pac = new clsPaciente();

                    pac.Id = Convert.ToInt32(aux["id"]);
                    pac.Nombre = aux["nombre"].ToString();
                    pac.Apellido = aux["apellido"].ToString();
                    pac.Dni = Convert.ToInt64(aux["dni"]);

                    pac.ObraSocial = aux2.Nombre;
                    pac.Telefono = Convert.ToInt64(aux["telefono"]);


                    lista.Add(pac);
                }

            }
            return lista;
        }