public async Task <IActionResult> AddUnavailability([FromBody] AddUnavailabilityCommand command ) { if (!ModelState.IsValid) { return((IActionResult)BadRequest()); } var result = await _serviceCategoryService.AddUnavailability(command); return(CreatedAtAction(nameof(AddUnavailability), new { id = result.Id }, null)); }
public async Task <Unavailability> AddUnavailability(AddUnavailabilityCommand addUnavailabilityCommand) { Unavailability unavailability = new Unavailability( addUnavailabilityCommand.SiteId, addUnavailabilityCommand.StaffId, addUnavailabilityCommand.ServiceItemId, addUnavailabilityCommand.LocationId, addUnavailabilityCommand.StartDateTime, addUnavailabilityCommand.EndDateTime, addUnavailabilityCommand.Sunday, addUnavailabilityCommand.Monday, addUnavailabilityCommand.Tuesday, addUnavailabilityCommand.Wednesday, addUnavailabilityCommand.Thursday, addUnavailabilityCommand.Friday, addUnavailabilityCommand.Saturday, addUnavailabilityCommand.Description); _unavailabilityRepository.Add(unavailability); await _businessIntegrationEventService.PublishThroughEventBusAsync(new UnavailabilityAddedByStaffEvent( unavailability.StaffId, unavailability.SiteId, unavailability.StaffId, unavailability.ServiceItemId, unavailability.LocationId, unavailability.StartDateTime, unavailability.EndDateTime, unavailability.Sunday, unavailability.Monday, unavailability.Tuesday, unavailability.Wednesday, unavailability.Thursday, unavailability.Friday, unavailability.Saturday, unavailability.Description )); //_unavailabilityRepository.UnitOfWork.Commit(); return(unavailability); }
public async Task <Unavailability> AddUnavailability(AddUnavailabilityCommand addUnavailabilityCommand) { SchedulableCatalogItem serviceItem = GetExistingServiceItem(addUnavailabilityCommand.SiteId, addUnavailabilityCommand.ServiceItemId); Unavailability unavailability = serviceItem.AddUnavailability( addUnavailabilityCommand.StaffId, addUnavailabilityCommand.LocationId, addUnavailabilityCommand.StartDateTime, addUnavailabilityCommand.EndDateTime, addUnavailabilityCommand.Sunday, addUnavailabilityCommand.Monday, addUnavailabilityCommand.Tuesday, addUnavailabilityCommand.Wednesday, addUnavailabilityCommand.Thursday, addUnavailabilityCommand.Friday, addUnavailabilityCommand.Saturday, addUnavailabilityCommand.Description); await _businessIntegrationEventService.PublishThroughEventBusAsync(new UnavailabilityCreatedEvent( unavailability.StaffId, unavailability.SiteId, unavailability.StaffId, unavailability.ServiceItemId, unavailability.LocationId, unavailability.StartDateTime, unavailability.EndDateTime, unavailability.Sunday, unavailability.Monday, unavailability.Tuesday, unavailability.Wednesday, unavailability.Thursday, unavailability.Friday, unavailability.Saturday, unavailability.Description )); return(unavailability); }