public BookingMailService( IBookingProvider bookingProvider, ITemplateProvider templateProvider) { BookingProvider = bookingProvider; TemplateProvider = templateProvider; }
public SearchBookingSummariesQueryHandler( ICustomEntityDefinitionRepository customEntityDefinitionRepository, IBookingProvider bookingProvider) { CustomEntityDefinitionRepository = customEntityDefinitionRepository; BookingProvider = bookingProvider; }
public CalendarApiController( IBookingProvider bookingService, IPermissionValidationService permissionValidationService, IExecutionContextFactory executionContextFactory) { BookingService = bookingService; PermissionValidationService = permissionValidationService; ExecutionContextFactory = executionContextFactory; }
public DeleteAllBookingsCommandHandler( IBookingProvider bookingProvider, ICommandExecutor executor, IPermissionValidationService permissionValidationService) { BookingProvider = bookingProvider; CommandExecutor = executor; PermissionValidationService = permissionValidationService; }
public StatusMailProvider( IBookingProvider bookingProvider, ITemplateProvider templateProvider, IEloverblikAPI eloverblikAPI) { BookingProvider = bookingProvider; TemplateProvider = templateProvider; EloverblikAPI = eloverblikAPI; }
public AnonymizeBookingsCommandHandler( IBookingProvider bookingProvider, IAdvancedContentRepository domainRepository, ICommandExecutor executor, IPermissionValidationService permissionValidationService) { BookingProvider = bookingProvider; DomainRepository = domainRepository; CommandExecutor = executor; PermissionValidationService = permissionValidationService; }
public BookingApiController( IBookingProvider bookingProvider, IPermissionValidationService permissionValidationService, IExecutionContextFactory executionContextFactory, IApiResponseHelper apiResponseHelper) { BookingProvider = bookingProvider; PermissionValidationService = permissionValidationService; ExecutionContextFactory = executionContextFactory; ApiResponseHelper = apiResponseHelper; }
public UpdateBookingCommandHandler( IAdvancedContentRepository domainRepository, IBookingProvider bookingProvider, IPermissionValidationService permissionValidationService, ITenantCategoryProvider tenantCategoryProvider) { DomainRepository = domainRepository; BookingProvider = bookingProvider; PermissionValidationService = permissionValidationService; TenantCategoryProvider = tenantCategoryProvider; }
public DeleteBookingCommandHandler( IAdvancedContentRepository domainRepository, ICommandExecutor commandExecutor, IBookingProvider bookingProvider, IPermissionValidationService permissionValidationService) { DomainRepository = domainRepository; CommandExecutor = commandExecutor; BookingProvider = bookingProvider; PermissionValidationService = permissionValidationService; }
public SendWelcomeLetterCommandHandler( IAdvancedContentRepository domainRepository, IBookingProvider bookingProvider, IPermissionValidationService permissionValidationService, ICurrentUserProvider currentUserProvider) { DomainRepository = domainRepository; BookingProvider = bookingProvider; PermissionValidationService = permissionValidationService; CurrentUserProvider = currentUserProvider; }
public SendStatusMailCommandHandler( IStatusMailProvider statusMailProvider, ITemplateProvider templateProvider, IMailDispatchService mailDispatchService, StatusMailSettings statusMailSettings, IBookingProvider bookingProvider) { StatusMailProvider = statusMailProvider; TemplateProvider = templateProvider; MailDispatchService = mailDispatchService; Settings = statusMailSettings; BookingProvider = bookingProvider; }
public SendBookingMailCommandHandler( IAdvancedContentRepository domainRepository, IBookingProvider bookingProvider, IMailDispatchService mailDispatchService, ICommandExecutor commandExecutor, IPermissionValidationService permissionValidationService, ICurrentUserProvider currentUserProvider) { DomainRepository = domainRepository; BookingProvider = bookingProvider; MailDispatchService = mailDispatchService; CommandExecutor = commandExecutor; PermissionValidationService = permissionValidationService; CurrentUserProvider = currentUserProvider; }
public CheckoutBookingCommandHandler( IAdvancedContentRepository domainRepository, IBookingProvider bookingProvider, ITemplateProvider templateProvider, IMailDispatchService mailDispatchService, ICommandExecutor commandExecutor, BookingSettings bookingSettings, ICurrentUserProvider currentUserProvider) { DomainRepository = domainRepository; BookingProvider = bookingProvider; TemplateProvider = templateProvider; MailDispatchService = mailDispatchService; CommandExecutor = commandExecutor; BookingSettings = bookingSettings; CurrentUserProvider = currentUserProvider; }
public BookingController(IBookingProvider bookingProvider) { this._BookingProvider = bookingProvider; }
private async Task <BoookingNextAvailabilityEntity> RetrieveNextAvailability(IElement bookingElement, IBookingProvider bookingProvider, AppointmentType appointmentType) { var bookingNextAvailabilityCachedKey = $"{bookingElement.Properties.BookingProvider}-{appointmentType.AppointmentId}{appointmentType.OptionalResources.CreateKeyFromResources()}"; var bookingNextAvailabilityCachedResponse = _distributedCache.GetString(bookingNextAvailabilityCachedKey); if (bookingNextAvailabilityCachedResponse is not null) { return(JsonConvert.DeserializeObject <BoookingNextAvailabilityEntity>(bookingNextAvailabilityCachedResponse)); } AvailabilityDayResponse nextAvailability; BoookingNextAvailabilityEntity result; try { nextAvailability = await bookingProvider .NextAvailability(new AvailabilityRequest { StartDate = DateTime.Now, EndDate = DateTime.Now.AddMonths(bookingElement.Properties.SearchPeriod), AppointmentId = appointmentType.AppointmentId, OptionalResources = appointmentType.OptionalResources }); } catch (BookingNoAvailabilityException) { result = new BoookingNextAvailabilityEntity { BookingHasNoAvailableAppointments = true }; await _distributedCache.SetStringAsync(bookingNextAvailabilityCachedKey, JsonConvert.SerializeObject(result), _distributedCacheExpirationConfiguration.BookingNoAppointmentsAvailable); return(result); } result = new BoookingNextAvailabilityEntity { DayResponse = nextAvailability }; await _distributedCache.SetStringAsync(bookingNextAvailabilityCachedKey, JsonConvert.SerializeObject(result), _distributedCacheExpirationConfiguration.Booking); return(result); }
public Scheduler(IBookingProvider bookingProvider, IRuleProvider ruleProvider, ITimeProvider timeProvider) { this.bookingProvider = bookingProvider; this.ruleProvider = ruleProvider; this.timeProvider = timeProvider; }
public BookingController(IBookingProvider bookingProvider) { _bookingProvider = bookingProvider; }
public BookingCheckoutViewComponent(IBookingProvider bookingProvider) { BookingProvider = bookingProvider; }
/// <summary> /// Initializes a new instance of the <see cref="BookingController" /> class. /// </summary> public BookingController(IBookingProvider bookingProvider, IMapper mapper) { _bookingProvider = bookingProvider; _mapper = mapper; }
public async Task UpdateCalculatedValues( IBookingProvider bookingProvider, ITenantCategoryProvider tenantCategoryProvider, BookingSettings settings) { Alert = null; if (IsCancelled) { Alert = AlertType.Cancelled; AlertMessage = "Aflyst."; BookingStateText = "Aflyst"; } else if (BookingState == BookingDataModel.BookingStateType.Requested) { Alert = AlertType.New; AlertMessage = "Ny reservation."; } else if (BookingState == BookingDataModel.BookingStateType.Approved) { if (!WelcomeLetterIsSent && DateTime.Now > ArrivalDate - TimeSpan.FromDays(settings.DaysBeforeArrivalForWelcomeLetter)) { Alert = AlertType.Key; AlertMessage = "Velkomstbrev skal udsendes."; } else if (DateTime.Now > DepartureDate) { if (!IsCheckedOut) { Alert = AlertType.AwaitingCheckout; AlertMessage = "Afventer slutafregning fra lejer."; } else { Alert = AlertType.Finalize; AlertMessage = "Lejemålet er overstået og skal afsluttes."; } } } Notifications = new List <Notification>(); var tenantCategory = await tenantCategoryProvider.GetTenantCategoryById(TenantCategoryId); DateTime lastAllowedArrivalDate = CreatedDate.AddMonths(tenantCategory.AllowedBookingFutureMonths); if (ArrivalDate >= lastAllowedArrivalDate) { AddNotification(NotificationLevelType.Warning, $"Bemærk at ankomstdatoen ligger mere end de tilladte {tenantCategory.AllowedBookingFutureMonths} måneder efter at ansøgningen blev oprettet. " + $"Datoen er beregnet på baggrund af lejerkategorien."); } if (RentalPrice == null) { AddNotification(NotificationLevelType.Warning, "Bemærk at der endnu ikke er aftalt nogen pris."); } // Look up overlap for active bookings (no need to add warning for historic bookings) if (BookingState != BookingDataModel.BookingStateType.Closed) { var overlappingBookings = await bookingProvider.FindBookingsInInterval(new Queries.SearchBookingSummariesQuery { Start = ArrivalDate, End = DepartureDate, IsCancelled = false }); foreach (var booking in overlappingBookings) { // Do not include self if (booking.Id != Id && booking.CollidesWith(this)) { AddNotification(NotificationLevelType.Warning, $"Denne reservation overlapper med reservation nr. {booking.BookingNumber} den {booking.ArrivalDate.ToShortDateString()} til {booking.DepartureDate.ToShortDateString()}."); } } } if (BookingState == BookingDataModel.BookingStateType.Closed) { AddNotification(NotificationLevelType.Information, $"Denne reservation er afsluttet ({GetSingleWordStateDescription()})."); } }