public EspecialidadMedico(Especialidad unaEspecialidad, DateTime unaFechaRecibimiento) { this.Especialidad = unaEspecialidad; this.FechaRecibimiento = unaFechaRecibimiento; }
public List <Reserva> ListaReservasPacientePorEspecialidad(Paciente unPaciente, Especialidad unaEspecialidad) { List <Reserva> retorno = new List <Reserva>(); foreach (Reserva tmpReserva in unPaciente.ListaReservasPaciente) //recorro la lista de reservas del paciente { if (tmpReserva.Especialidad.IdEspecialidad == unaEspecialidad.IdEspecialidad) //si la reserva tiene la misma especialidad a la ingresada por parametro { retorno.Add(tmpReserva); //agrego la reserva a la lista } } return(retorno); }
public List <Medico> DevolverListMedicosEspecialistaDisponibles(DateTime unaFecha, Especialidad unaEspecialidad) { List <Medico> retorno = new List <Medico>(); foreach (Medico tmpMedico in ListaMedicos) //recorro la lista de medicos { if (tmpMedico is Especialista) //si el medico es de tipo especialista { Especialista auxEspecialista = (Especialista)tmpMedico; foreach (EspecialidadMedico tmpEspecialidadMedico in auxEspecialista.ListaEspecialidades) //recorro lista de espcialidades del medico { if (!this.YaExisteReserva(unaFecha, auxEspecialista) && tmpEspecialidadMedico.Especialidad.IdEspecialidad == unaEspecialidad.IdEspecialidad) // si el medico esta disponible en esa fecha y hora lo agrego a la lista { retorno.Add(tmpMedico); //lo agrego a la lista } } } } return(retorno); }
public bool AltaReservaEspecialista(DateTime unaFecha, Medico unMedico, Paciente unPaciente, Especialidad unaEspecialidad) { bool retorno = false; if (!this.YaExisteReserva(unaFecha, unMedico) && unaFecha > DateTime.Now) { //Compruebo que no exista ningun Medico con ese numero de licencia Reserva tmpReserva = new Reserva(unaFecha, unMedico, unPaciente, unaEspecialidad); ListaReservas.Add(tmpReserva); unPaciente.ListaReservasPaciente.Add(tmpReserva); retorno = true; Serializar(); } return(retorno); }