public IHttpActionResult Post(Guid companyId, Guid signboardId, ScheduledSlideshowModel model) { var signboard = SignboardRepository.Find(signboardId); if (signboard == null) { return NotFound(); } if (signboard.CompanyId != companyId) { return NotFound(); } var scheduledSlideshow = SlideshowRepository.Find(model.SlideshowId); if (scheduledSlideshow == null) { return BadRequest(); } signboard.ScheduleSlideshow(scheduledSlideshow, model.StartDate); SignboardRepository.Update(signboard); return Created(new Uri(Url.Link("GetScheduledSlideshow", new { signboardId = signboard.Id, companyId = signboard.CompanyId, scheduledSlideshowId = scheduledSlideshow.Id })), model); }
public IHttpActionResult Get(Guid companyId, Guid signboardId, Guid scheduledSlideshowId) { var signboard = SignboardRepository.Find(signboardId); if (signboard == null) { return NotFound(); } if (signboard.CompanyId != companyId) { return NotFound(); } var scheduledSlideshow = signboard.ScheduledSlideshows.SingleOrDefault(x => x.Id == scheduledSlideshowId); if (scheduledSlideshow == null) { return NotFound(); } var responseModel = new ScheduledSlideshowModel() { ScheduledSlideshowId = scheduledSlideshow.Id, StartDate = scheduledSlideshow.ScheduledDate, SlideshowId = scheduledSlideshow.SlideshowId }; return Ok(responseModel); }