public List <Dinner> GetAllDinners() { List <Dinner> dinners = new List <Dinner>(); dinners = db.Dinner.ToList(); SortRepo sort = new SortRepo(); dinners.Sort(sort.CompareDescending); return(dinners); }
public List <GuestVM> GetAllMembers(int groupID) { List <GuestVM> MemberList = new List <GuestVM>(); List <UserGroup> userGroupList = db.UserGroups.Where(g => g.GroupId == groupID).Include(u => u.User).ToList(); foreach (UserGroup user in userGroupList) { MemberList.Add(new GuestVM { Name = user.User.FirstName + " " + user.User.LastName, Balance = user.Credit, UserID = user.UserId }); } SortRepo sortRepo = new SortRepo(); MemberList.Sort(sortRepo.Compare); return(MemberList); }
public List <TransactionVM> GetUserTransactions(string userID) { List <TransactionVM> transactionsVM = new List <TransactionVM>(); foreach (Transaction transaction in db.Transactions.Where(u => u.UserID == userID).ToList()) { transactionsVM.Add(new TransactionVM { Date = DateTime.Parse(transaction.TransactionDate), Value = transaction.Value, TransactionID = transaction.RecieptID, TransactionType = transaction.TransactionType }); } SortRepo sort = new SortRepo(); transactionsVM.Sort(sort.Compare); return(transactionsVM); }
//Returns the first list of dinner guests for Dinner group that user is apart of public List <DinnerGuestsVM> GetDinnerGuests(string userID) { List <DinnerGuestsVM> dinnerGuests = new List <DinnerGuestsVM>(); var dinners = db.Dinner.Where(g => g.GroupId == 1 && g.Active).ToList(); dinners.Sort(new SortRepo().Compare); bool flag = true; if (dinners.Count != 0) { foreach (Dinner dinner in dinners) { if (flag) { List <GuestVM> guestVM = new List <GuestVM>(); List <PlusOneVM> plusOneVM = new List <PlusOneVM>(); bool voted = false; bool hasPlusOne = false; bool waitListed = false; foreach (ApplicationUser user in db.UserDinners.Where(d => d.DinnerID == dinner.DinnerID).Select(u => u.User).ToList()) { if (user.Id == userID) { voted = true; if (db.UserDinners.Where(i => i.UserID == userID && i.DinnerID == dinner.DinnerID).Select(w => w.WaitList).FirstOrDefault() > 0) { waitListed = true; } } guestVM.Add(new GuestVM { Name = user.FirstName + " " + user.LastName, WaitList = db.UserDinners.Where(i => i.UserID == user.Id && i.DinnerID == dinner.DinnerID).Select(w => w.WaitList).FirstOrDefault(), Balance = db.UserGroups.Where(u => u.UserId == user.Id).Select(c => c.Credit).FirstOrDefault(), UserID = user.Id }); } foreach (PlusOne plusOne in db.PlusOnes.Where(d => d.DinnerID == dinner.DinnerID).ToList()) { if (plusOne.UserID == userID) { hasPlusOne = true; } plusOneVM.Add(new PlusOneVM { PlusOneID = plusOne.PlusOneID, Name = plusOne.Name, UserID = plusOne.UserID, DinnerID = plusOne.DinnerID, WaitList = plusOne.WaitList }); } SortRepo sortRepo = new SortRepo(); guestVM.Sort(sortRepo.Compare); plusOneVM.Sort(sortRepo.Compare); dinnerGuests.Add(new DinnerGuestsVM { DinnerType = dinner.DinnerType, Date = dinner.Date, Limit = dinner.Limit, Guests = guestVM, DinnerId = dinner.DinnerID, Credit = db.UserGroups.Where(u => u.UserId == userID).Select(c => c.Credit).FirstOrDefault(), DinnerVoting = dinner.DinnerVoting, WaitList = dinner.WaitList, PlusOnes = plusOneVM, UserID = userID, UserVoted = voted, HasPlusOne = hasPlusOne, UserWaitListed = waitListed }); flag = false; } else { dinnerGuests.Add(new DinnerGuestsVM { Date = dinner.Date, DinnerId = dinner.DinnerID }); } } } else { dinnerGuests.Add(new DinnerGuestsVM { Credit = db.UserGroups.Where(u => u.UserId == userID).Select(c => c.Credit).FirstOrDefault(), }); } return(dinnerGuests); }