public async Task <VersionedServiceResult <Venue> > GetVenue(long?currentVersion, Guid?currentMemberId, Guid id) { Venue venue; if (currentMemberId != null) { venue = await _venueRepository.GetVenue(id); } else { venue = await _venueRepository.GetPublicVenue(id); } if (venue == null) { throw new OdkNotFoundException(); } if (currentMemberId != null) { await _authorizationService.AssertMemberIsChapterMember(currentMemberId.Value, venue.ChapterId); } return(await _cacheService.GetOrSetVersionedItem( () => _venueRepository.GetVenue(id), id, currentVersion)); }
public async Task <Venue> CreateVenue(Guid currentMemberId, CreateVenue venue) { await AssertMemberIsChapterAdmin(currentMemberId, venue.ChapterId); Venue create = new Venue(Guid.Empty, venue.ChapterId, venue.Name, venue.Address, venue.MapQuery, 0); await ValidateVenue(create); Guid id = await _venueRepository.CreateVenue(create); _cacheService.RemoveVersionedCollection <Venue>(venue.ChapterId); return(await _venueRepository.GetVenue(id)); }
public ActionResult <ConventionEntity> CreateConvention(Convention con) { if (con.Capacity < 1) { return(BadRequest("Capacity must be a positive integer")); } var venue = venueRepository.GetVenue(con.VenueId).Result; if (venue == null) { // TODO: Practical error handling here return(conventionRepository.CreateConvention(con).Result); } return(NotFound("Could not find the specified venue")); }
public Venue Get(int id) { var res = _venueRepository.GetVenue(id).Result; return(res); }