public async Task <IEnumerable <Poll_dto> > GetPollsBeheerder(int userID) { //gebruikerID == huidige gebruiker IEnumerable <Poll> Polls = await _context.Polls.Include(p => p.Antwoorden).ThenInclude(a => a.Stemmen).Include(p => p.PollGebruikers).ToListAsync(); List <Poll_dto> pollModel = new List <Poll_dto>(); foreach (var p in Polls) { foreach (var pg in p.PollGebruikers) { if (pg.PollID == p.PollID && pg.UserID == userID) { if (pg.isAdmin == true) { Poll_dto poll = new Poll_dto(); poll.Naam = p.Naam; poll.PollID = p.PollID; poll.Antwoorden = new List <Antwoord_dto>(); foreach (var a in p.Antwoorden) { var antw = new Antwoord_dto(); antw.AntwoordID = a.AntwoordID; antw.Naam = a.Naam; antw.Stemmen = new List <Stem_dto>(); foreach (var s in a.Stemmen) { antw.Stemmen.Add(new Stem_dto() { StemID = s.StemID, UserID = s.UserID, AntwoordID = s.AntwoordID }); } poll.Antwoorden.Add(antw); } poll.Users = new List <PollGebruiker_dto>(); foreach (var u in p.PollGebruikers) { var pollUser = new PollGebruiker_dto(); pollUser.UserID = u.UserID; pollUser.PollID = u.PollID; pollUser.isAdmin = u.isAdmin; poll.Users.Add(pollUser); } pollModel.Add(poll); } } } } return(pollModel); }
public async Task <ActionResult <Antwoord_dto> > PostAntwoord(Antwoord_dto antwoord) { var antwoord1 = new Antwoord() { Naam = antwoord.Naam, PollID = antwoord.PollID }; _context.Antwoord.Add(antwoord1); await _context.SaveChangesAsync(); return(CreatedAtAction("GetAntwoord", new { id = antwoord1.AntwoordID }, antwoord1)); }
public async Task <ActionResult <Poll_dto> > GetPoll(int id) { var p = await _context.Polls.Include(po => po.Antwoorden).ThenInclude(a => a.Stemmen).Include(po => po.PollGebruikers).FirstOrDefaultAsync(po => po.PollID == id); if (p == null) { return(NotFound()); } Poll_dto poll = new Poll_dto(); poll.Naam = p.Naam; poll.PollID = p.PollID; poll.Antwoorden = new List <Antwoord_dto>(); foreach (var a in p.Antwoorden) { var antw = new Antwoord_dto(); antw.AntwoordID = a.AntwoordID; antw.Naam = a.Naam; antw.Stemmen = new List <Stem_dto>(); foreach (var s in a.Stemmen) { antw.Stemmen.Add(new Stem_dto() { StemID = s.StemID, UserID = s.UserID, AntwoordID = s.AntwoordID }); } poll.Antwoorden.Add(antw); } poll.Users = new List <PollGebruiker_dto>(); foreach (var u in p.PollGebruikers) { var pollUser = new PollGebruiker_dto(); pollUser.UserID = u.UserID; pollUser.PollID = u.PollID; pollUser.isAdmin = u.isAdmin; poll.Users.Add(pollUser); } return(poll); }