Ejemplo n.º 1
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            //Controlar Turno nuevo y Turno modificado
            Turno turno = new Turno();

            turno.Comentario           = txtComentario.Text.Trim();
            turno.FechaAlta            = DateTime.Now;
            turno.FechaTurno           = dtpFecha.Value;
            turno.HoraFin              = dtpHoraHasta.Value;
            turno.HoraInicio           = dtpHoraDesde.Value;
            turno.EstadoTurno          = new EstadoTurno();
            turno.EstadoTurno.IdEstado = 4;
            turno.EstadoTurno.Nombre   = "Generado";
            turno.Paciente             = (Paciente)cmbPaciente.SelectedItem;
            turno.Profesional          = (Profesional)cmbProfesional.SelectedItem;

            List <Practica> practicas = new List <Practica>();

            foreach (Practica practica in lstPracticas.Items)
            {
                practicas.Add(practica);
            }
            turno.Practicas = practicas;

            GestorDeTurnos gestorDeTurnos = new GestorDeTurnos();
            int            idTurno        = gestorDeTurnos.tomarTurno(turno);

            if (idTurno > 0)
            {
                turno.IdTurno                                = idTurno;
                bgwDibujadorDeNuevoTurno                     = new BackgroundWorker();
                bgwDibujadorDeNuevoTurno.DoWork             += new DoWorkEventHandler(bgwDibujadorDeTurnoNuevo_DoWork);
                bgwDibujadorDeNuevoTurno.ProgressChanged    += new ProgressChangedEventHandler(bgwDibujadorDeTurnoNuevo_ProgressChanged);
                bgwDibujadorDeNuevoTurno.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bgwDibujadorDeTurnoNuevo_RunWorkerCompleted);
                bgwDibujadorDeNuevoTurno.RunWorkerAsync(turno);
            }
            else
            {
                MessageBox.Show("No se ha registrado el turno", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 2
0
        private void mostrarDatosTurno(object sender, EventArgs e)
        {
            Control        control        = (Control)sender;
            int            idTurno        = Convert.ToInt32(((Turno)control.Tag).IdTurno);
            GestorDeTurnos gestorDeTurnos = new GestorDeTurnos();
            Turno          turno          = gestorDeTurnos.obtenerTurnoPorId(idTurno);

            if (turno != null)
            {
                cmbPaciente.Text    = turno.Paciente.ToString();
                cmbProfesional.Text = turno.Profesional.ToString();
                dtpFecha.Value      = turno.FechaTurno;
                dtpHoraDesde.Value  = turno.HoraInicio;
                dtpHoraHasta.Value  = turno.HoraFin;
                lstPracticas.Items.Clear();
                foreach (Practica practica in turno.Practicas)
                {
                    lstPracticas.Items.Add(practica);
                }
            }
        }
Ejemplo n.º 3
0
        void bgwBuscadorDeTurnosSemanales_DoWork(object sender, DoWorkEventArgs e)
        {
            ArrayList parametros    = e.Argument as ArrayList;
            DateTime  fechaDesde    = (DateTime)parametros[0];
            DateTime  fechaHasta    = (DateTime)parametros[1];
            int       idProfesional = (int)parametros[2];

            GestorDeTurnos gestorDeTurnos = new GestorDeTurnos();
            List <Turno>   lsTurnos       = gestorDeTurnos.obtenerTurnosPorSemana(fechaDesde, fechaHasta, idProfesional);

            if (lsTurnos != null)
            {
                //lsFlowLayout es un listado con todos los turnos que luegon se dibujarán
                List <FlowLayoutPanel> lsFlowLayoutTurnos = new List <FlowLayoutPanel>();
                foreach (Turno turno in lsTurnos)
                {
                    //configurarDibujoDeTurno devuelve el FlowLayout turno listo para agregar
                    lsFlowLayoutTurnos.Add(configurarDibujoDeTurno(turno));
                }
                e.Result = lsFlowLayoutTurnos;
            }
        }
Ejemplo n.º 4
0
        private void confirmarTurno(object sender, EventArgs e)
        {
            Turno          turno          = (((Button)sender).Tag) as Turno;
            GestorDeTurnos gestorDeTurnos = new GestorDeTurnos();

            if (gestorDeTurnos.tomarTurnoAConfirmar(turno))
            {
                //Elimino para volver a dibujar como si fuera un nuevo turno
                tlpTurnos.Controls.RemoveByKey(turno.IdTurno.ToString());

                turno.EstadoTurno.IdEstado                   = IDTURNOCONFIRMADO;
                bgwDibujadorDeNuevoTurno                     = new BackgroundWorker();
                bgwDibujadorDeNuevoTurno.DoWork             += new DoWorkEventHandler(bgwDibujadorDeTurnoNuevo_DoWork);
                bgwDibujadorDeNuevoTurno.ProgressChanged    += new ProgressChangedEventHandler(bgwDibujadorDeTurnoNuevo_ProgressChanged);
                bgwDibujadorDeNuevoTurno.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bgwDibujadorDeTurnoNuevo_RunWorkerCompleted);
                bgwDibujadorDeNuevoTurno.RunWorkerAsync(turno);
                MessageBox.Show("Turno confirmado", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                MessageBox.Show("No se ha podido confirmar el turno", "Atención", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }