Class FirstAvailableBookingStrategy
- Namespace
- Core.CliniCore.Scheduling.BookingStrategies
- Assembly
- Core.CliniCore.dll
Booking strategy that finds the first available time slot
public class FirstAvailableBookingStrategy : IBookingStrategy
- Inheritance
-
FirstAvailableBookingStrategy
- Implements
- Inherited Members
Properties
Description
Gets a description of how this strategy works
public string Description { get; }
Property Value
StrategyName
Gets the name of this booking strategy
public string StrategyName { get; }
Property Value
Methods
FindAvailableSlots(PhysicianSchedule, TimeSpan, DateTime, int, List<UnavailableTimeInterval>?)
Finds multiple available slots
public List<AppointmentSlot> FindAvailableSlots(PhysicianSchedule physicianSchedule, TimeSpan requestedDuration, DateTime earliestTime, int maxResults = 5, List<UnavailableTimeInterval>? facilityUnavailable = null)
Parameters
physicianSchedulePhysicianSchedulerequestedDurationTimeSpanearliestTimeDateTimemaxResultsintfacilityUnavailableList<UnavailableTimeInterval>
Returns
FindNextAvailableSlot(PhysicianSchedule, TimeSpan, DateTime, List<UnavailableTimeInterval>?)
Finds the next available appointment slot
public AppointmentSlot? FindNextAvailableSlot(PhysicianSchedule physicianSchedule, TimeSpan requestedDuration, DateTime earliestTime, List<UnavailableTimeInterval>? facilityUnavailable = null)
Parameters
physicianSchedulePhysicianSchedulerequestedDurationTimeSpanearliestTimeDateTimefacilityUnavailableList<UnavailableTimeInterval>