public async Task<IHttpActionResult> PostHouseHold(string name) { var user = db.Users.Find(User.Identity.GetUserId()); if (user.HouseHoldId != null) { var message = "You must leave your current household before you can create a new household"; return Ok(message); } else { var houseHold = new HouseHold() { Name = name }; user.HouseHoldId = houseHold.id; db.HouseHolds.Add(houseHold); await db.SaveChangesAsync(); var returnHouse = new HouseHoldVM() { Accounts = houseHold.HouseHoldAccounts.Where(a => a.isArchived == false).ToList(), BudgetItems = houseHold.BudgetItems.ToList(), Users = houseHold.Users.ToList() }; return Ok(returnHouse); } }
public async Task<IHttpActionResult> PostJoinHouseHold(JoinHouseVM model) { var user = db.Users.Find(User.Identity.GetUserId()); var invite = db.Invitations.Where(i => i.Code == model.inviteCode && i.InvitedEmail == model.inviteEmail).FirstOrDefault(); if (invite == null) { return NotFound(); } else { user.HouseHoldId = invite.HouseHoldId; db.Invitations.Remove(invite); } await db.SaveChangesAsync(); var houseHold = user.HouseHold; var returnHouse = new HouseHoldVM() { Accounts = houseHold.HouseHoldAccounts.Where(a => a.isArchived == false).ToList(), BudgetItems = houseHold.BudgetItems.ToList(), Users = houseHold.Users.ToList() }; return Ok(returnHouse); }
public IHttpActionResult GetHouseHold() { var user = db.Users.Find(User.Identity.GetUserId()); var houseHold = user.HouseHold; if (houseHold == null) { return Ok("User is not currently a memeber of a household."); } else { var returnHouse = new HouseHoldVM() { Name = user.HouseHold.Name, Accounts = houseHold.HouseHoldAccounts.Where(a => a.isArchived == false).ToList(), BudgetItems = houseHold.BudgetItems.ToList(), Users = houseHold.Users.ToList() }; return Ok(returnHouse); } }