public IActionResult Delete(int eventId) { ApplicationUser CurrentUser = GetCurrentUser(); ApplicationUserEvent aue = DbContext .ApplicationUserEvents .Where(e => e.Id == CurrentUser.Id && e.EventId == eventId) .FirstOrDefault(); if (aue == null) { return(NotFound( new CRUDResponse { IsSuccess = false, Message = "User" + CurrentUser.Id + " does not attend event with the ID " + eventId })); } DbContext.Entry(aue).Reference(p => p.Event).Load(); var currentUser = GetCurrentUser(); DbContext.ApplicationUserEvents.Remove(aue); DbContext.SaveChanges(); return(Ok(new CRUDResponse { IsSuccess = true, Message = "User " + CurrentUser.Id + " does not longer attend the event " + aue.EventId })); }
public void CreateEvent(string name, string description, DateTime start, DateTime end, string address, string imageUrl, string userId) { var eventToBeCreated = new Event { Name = name, Description = description, Start = start, End = end, Address = address, ImageUrl = imageUrl, CreatedOn = DateTime.UtcNow, NoOfLikes = 0 }; var user = this.db.Users.FirstOrDefault(u => u.Id == userId); if (user == null) { return; } var userEvents = new ApplicationUserEvent { Event = eventToBeCreated, User = user }; this.db.Events.Add(eventToBeCreated); this.db.UserEvents.Add(userEvents); this.db.SaveChanges(); }
public void AddUserToEvent(Guid userId, Guid eventId, int ticketAmount) { var ticketList = new List <Ticket>(); var _event = Db.Set <Event>().FirstOrDefault(e => e.Id == eventId); var user = Db.Set <ApplicationUser>().FirstOrDefault(u => u.Id == userId); for (int i = 0; i < ticketAmount; i++) { ticketList.Add(new Ticket { Event = _event, User = user }); } Db.Set <Ticket>().AddRange(ticketList); var userEvent = new ApplicationUserEvent() { ApplicationUserId = userId, EventId = eventId }; Db.Set <ApplicationUserEvent>().Add(userEvent); }