public Boolean YaTieneAgenda(Medico medico)
        {
            SqlParameter idMedico       = new SqlParameter("@Medico_ID", medico.ID);
            SqlParameter idEspecialidad = new SqlParameter("@Especialidad_ID", ID);

            return(QueryAdapterMaggie.ejecutarSPBooleano("ESPECIALIDADMedicoPoseeAgenda", idMedico, idEspecialidad));
        }
        private void Buscar()
        {
            SqlParameter   nombre         = new SqlParameter("@Nombre", NombreProfesional());
            SqlParameter   apellido       = new SqlParameter("@Apellido", ApellidoProfesional());
            SqlParameter   dia            = new SqlParameter("@Dia", Dia());
            SqlParameter   idEspecialidad = new SqlParameter("@Especialidad_id", IDEspecialidad());
            SqlParameter   idPersona      = new SqlParameter("@Persona_id", PersonaID);
            SqlParameter   diaActual      = new SqlParameter("@FechaHoy", Properties.Settings.Default.fecha);
            List <DataRow> filas          = QueryAdapterMaggie.ejecutarSP("PERSONATurnos", nombre, apellido, dia, idEspecialidad, idPersona, diaActual);

            DataTable dataTable = new DataTable();

            foreach (DataRow fila in filas)
            {
                dataTable.ImportRow(fila);
            }

            ListadoDGV.DataSource = filas.Select(datarow =>
                                                 new {
                Nombre       = datarow["Nombre"],
                Apellido     = datarow["Apellido"],
                Especialidad = datarow["Especialidad"],
                Dia          = ((DateTime)datarow["Dia"]).ToString("dd/MM/yyyy"),
                Horario      = datarow["Horario"],
                IDTurno      = datarow["IDTurno"]
            }).ToList();
        }
        public static List <Especialidad> EspecialidadesPara(int id)
        {
            SqlParameter   idMedico = new SqlParameter("@Medico_id", id);
            List <DataRow> filas    = QueryAdapterMaggie.ejecutarSP("ESPECIALIDADEspecialidadesMedico", idMedico);

            return(Especialidad.Parse(filas));
        }
Exemple #4
0
        private bool RegistrarAgenda()
        {
            DataTable dias = new DataTable();

            dias.Columns.Add(new DataColumn("ID", typeof(int)));
            dias.Columns.Add(new DataColumn("INICIO", typeof(TimeSpan)));
            dias.Columns.Add(new DataColumn("FIN", typeof(TimeSpan)));

            foreach (Tuple <int, TimeSpan, TimeSpan> dia in DiasAtencionSeleccionados())
            {
                DataRow row = dias.NewRow();
                row["ID"]     = dia.Item1;
                row["INICIO"] = dia.Item2;
                row["FIN"]    = dia.Item3;
                dias.Rows.Add(row);
            }

            SqlParameter idMedico       = new SqlParameter("@Medico_id", ModelObjectMedico.ID);
            SqlParameter idEspecialidad = new SqlParameter("@Especialidad_id", Especialidad().ID);
            SqlParameter diaInicio      = new SqlParameter("@Dia_inicio", InicioRangoDP.Value);
            SqlParameter diaFin         = new SqlParameter("@Dia_Fin", FinRangoDP.Value);
            SqlParameter diasAtencion   = new SqlParameter("@Dias_Atencion", dias);


            return(QueryAdapterMaggie.ejecutarSPBooleano("Agendainsertarnueva", idMedico, idEspecialidad, diaInicio, diaFin, diasAtencion));
        }
        private void AfiliadoCancelarTurno(int tipoCancelacionID, string razon)
        {
            dynamic turnoSeleccionado = ListadoDGV.CurrentRow.DataBoundItem;

            SqlParameter idTurno           = new SqlParameter("@Turno_id", turnoSeleccionado.IDTurno);
            SqlParameter idTipoCancelacion = new SqlParameter("@Tipo_Cancelacion_id", tipoCancelacionID);
            SqlParameter descripcion       = new SqlParameter("@Descripcion", razon);

            QueryAdapterMaggie.ejecutarSP("CANCELACIONEliminarTurnoAfiliado", idTurno, idTipoCancelacion, descripcion);
        }
        private bool EstaOcupado(DataGridViewRow fila)
        {
            dynamic      horario         = fila.DataBoundItem;
            SqlParameter horarioTurno    = new SqlParameter("@Horario", horario.Horarios);
            SqlParameter idMedico        = new SqlParameter("@Medico_id", ModelObjectM.ID);
            SqlParameter idEspecialidad  = new SqlParameter("@Especialidad_id", ModelObjectE.ID);
            SqlParameter diaSeleccionado = new SqlParameter("@Dia_seleccionado", CalendarioTurnos.SelectionRange.Start.Date);
            SqlParameter fecha           = new SqlParameter("@Dia_id", DiaDeLaSemana());

            return(QueryAdapterMaggie.ejecutarSPBooleano("TURNOEstaOcupado", horarioTurno, idMedico, idEspecialidad, diaSeleccionado, fecha));
        }
Exemple #7
0
 private void ProfesionalCancelarTurno(int tipoCancelacionID, string razon)
 {
     foreach (DateTime diaSeleccionado in DiasSeleccionados())
     {
         SqlParameter idTipoCancelacion = new SqlParameter("@Tipo_Cancelacion_id", tipoCancelacionID);
         SqlParameter descripcion       = new SqlParameter("@Descripcion", razon);
         SqlParameter idProfesional     = new SqlParameter("@Medico_id", IDPersona);
         SqlParameter dia = new SqlParameter("@Dia", diaSeleccionado);
         QueryAdapterMaggie.ejecutarSP("CANCELACIONEliminarTurnoProfesional", dia, idTipoCancelacion, descripcion, idProfesional);
     }
 }
Exemple #8
0
        private bool NoColisiona(KeyValuePair <CheckBox, Tuple <ComboBox, ComboBox> > par)
        {
            DateTime _horarioInicio = DateTime.Parse(((TimeSpan)par.Value.Item1.SelectedItem).ToString());
            DateTime _horarioFin    = DateTime.Parse(((TimeSpan)par.Value.Item2.SelectedItem).ToString());

            SqlParameter idMedico      = new SqlParameter("@Medico_id", ModelObjectMedico.ID);
            SqlParameter idDia         = new SqlParameter("@Dia_id", IDDiaPara(par.Key));
            SqlParameter horarioInicio = new SqlParameter("@Inicio_Horario", _horarioInicio);
            SqlParameter horarioFin    = new SqlParameter("@Fin_Horario", _horarioFin);
            SqlParameter diaInicio     = new SqlParameter("@Inicio_Dia", InicioRangoDP.Value);
            SqlParameter diaFin        = new SqlParameter("@Fin_Dia", FinRangoDP.Value);

            return(!QueryAdapterMaggie.ejecutarSPBooleano("AGENDARangoColisionaConAgendaExistente", idDia, idMedico, horarioInicio, horarioFin, diaInicio, diaFin));
        }
        private void ConfirmarTurnoButton_Click(object sender, EventArgs e)
        {
            if (validaciones.All(validacion => validacion.SeCumple(this)))
            {
                SqlParameter idPersona         = new SqlParameter("@Paciente_id", PacienteID);
                SqlParameter fechaSeleccionada = new SqlParameter("@Fecha", CalendarioTurnos.SelectionStart);
                SqlParameter horario           = new SqlParameter("@Horario", HorarioTurno());
                SqlParameter idMedico          = new SqlParameter("@Medico_id", ModelObjectM.ID);
                SqlParameter idEspecialidad    = new SqlParameter("@Especialidad_id", ModelObjectE.ID);
                SqlParameter idDia             = new SqlParameter("@Dia_id", DiaDeLaSemana());

                QueryAdapterMaggie.ejecutarSP("TURNOInsertarNuevo", idPersona, fechaSeleccionada, horario, idMedico, idEspecialidad, idDia);

                MessageBox.Show("El turno fue creado con éxito");
                TurnosDisponiblesDGW.ClearSelection();
            }
            else
            {
                ValidacionBooleana <Selección_de_Día_y_Horario> validacionQueNoSeCumple =
                    validaciones.Find(validacion => validacion.NoSeCumple(this));
                MessageBox.Show(validacionQueNoSeCumple.MensajeError(), "¡A wild error appeared!",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #10
0
 private DataTable TiposDeCancelacion()
 {
     return(QueryAdapterMaggie.ejecutarSP("TIPOCANCELACIONTodos").CopyToDataTable());
 }
        public static List <Especialidad> All()
        {
            List <DataRow> filas = QueryAdapterMaggie.ejecutarSP("ESPECIALIDADTodas");

            return(Especialidad.Parse(filas).OrderBy(especialidad => especialidad.Nombre).ToList());
        }
Exemple #12
0
        /*public List<Especialidad> EspecialidadesSinAgenda()
         * {
         *  return Especialidades().FindAll(especialidad => !especialidad.YaTieneAgenda(this));
         * }*/

        public static List <Medico> All()
        {
            List <DataRow> filas = QueryAdapterMaggie.ejecutarSP("MEDICOTodos");

            return(Medico.Parse(filas));
        }