public virtual Turno RegistrarIngreso(Secretaria secretariaRecepcionista) { MoverEstado(EventoTurno.Presentar, secretariaRecepcionista.Persona); //Reseteo de las inasistencias Paciente.ResetInasistencias(); return this; }
public static Turno CreateSobreTurno(DateTime fechaTurno, TimeSpan duracionTurno, Paciente paciente, Profesional profesional, Especialidad especialidad, Secretaria secretariaReservadoraTurno, Consultorio consultorio, Plan plan,String numeroAfiliado,Decimal coseguro, bool esTelefonico) { if (paciente == null) throw new ArgumentNullException("paciente"); if (profesional == null) throw new ArgumentNullException("profesional"); if (especialidad == null) throw new ArgumentNullException("especialidad"); if (secretariaReservadoraTurno == null) throw new ArgumentNullException("secretariaReservadoraTurno"); if (!profesional.Especialidades.Contains(especialidad)) throw new ArgumentException(@"El Profesional seleccionado para el turno no atiende la Especialidad seleccionada", "especialidad"); var turno = new Turno(secretariaReservadoraTurno.Persona) { FechaTurno = fechaTurno, DuracionTurno = duracionTurno, Paciente = paciente, Profesional = profesional, Especialidad = especialidad, //RM SE AGREGA DATOS DE LA FORMA DE PAGO AL TURNO Consultorio=consultorio, Plan = plan, NumeroAfiliado = numeroAfiliado, Coseguro = coseguro, EsTelefonico = esTelefonico, EsSobreTurno = true, EsObtenidoWeb = false }; return turno; }