Exemplo n.º 1
0
    public async Task <IActionResult> Create([FromBody] EventCreationBindingModel bm)
    {
        var @event = await _eventRepo.FindByNameAndDate(bm.Name, bm.StartsAt);

        if (@event != null)
        {
            return(Conflict("An event exists with the same name and date."));
        }

        var venueMap = await _venueRepo.FindAndMapById(bm.Venues.Select(x => x.VenueId));

        var venues = new List <(int, Venue)>();

        foreach (var venuePriority in bm.Venues)
        {
            if (venueMap.ContainsKey(venuePriority.VenueId))
            {
                venues.Add((venuePriority.Priority, venueMap[venuePriority.VenueId]));
            }
        }

        @event = await _eventRepo.Create(bm.Name, bm.StartsAt, bm.DurationInMinutes, venues);

        return(Ok(Mapper.Map <EventViewModel>(@event)));
    }
Exemplo n.º 2
0
        public ActionResult Create(EventCreationBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            eventsService.CreateEvent(model.Name, model.Place, model.Start, model.End, model.TotalTickets, model.TicketPrice);

            return(RedirectToAction(nameof(All)));
        }