public IList <UserFood> GetRecentFoods(int userId)
        {
            List <UserFood> recentUserFoods = new List <UserFood>();

            try
            {
                using (SqlConnection conn = new SqlConnection(connectionString))
                {
                    conn.Open();
                    SqlCommand cmd = new SqlCommand("SELECT TOP 10 * FROM users_foods INNER JOIN foods ON users_foods.foodName = foods.foodName WHERE users_foods.userId = @userId ORDER BY rowId DESC;", conn);
                    cmd.Parameters.AddWithValue("@userId", userId);

                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        UserFood userFood = new UserFood();
                        userFood = MapRowToUser(reader);

                        recentUserFoods.Add(userFood);
                    }
                }

                return(recentUserFoods);
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }
Beispiel #2
0
        public virtual UserFood Add(UserFood userfood)
        {
            db.UserFoods.Add(userfood);
            db.SaveChanges();

            return(userfood);
        }
Beispiel #3
0
        private async Task <IActionResult> AddVote(string userId, int foodId)
        {
            var userFood = new UserFood
            {
                UserId = userId,
                FoodId = foodId
            };

            _context.Add(userFood);
            await _context.SaveChangesAsync();

            var food = await _context.Foods.FindAsync(foodId);

            if (food == null)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                food.VoteCount += +1;

                _context.Update(food);

                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View());
        }
        public IList <UserFood> GetUserFoods(int userId)
        {
            List <UserFood> userFoods = new List <UserFood>();

            try
            {
                using (SqlConnection conn = new SqlConnection(connectionString))
                {
                    conn.Open();
                    SqlCommand cmd = new SqlCommand("SELECT * FROM users_foods INNER JOIN foods ON users_foods.foodName = foods.foodName WHERE users_foods.userId = @userId AND users_foods.dateOfEntry = @today;", conn);
                    cmd.Parameters.AddWithValue("@userId", userId);
                    cmd.Parameters.AddWithValue("@today", DateTime.Today.ToShortDateString());

                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        UserFood userFood = new UserFood();
                        userFood = MapRowToUser(reader);

                        userFoods.Add(userFood);
                    }
                }

                return(userFoods);
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }
Beispiel #5
0
        public virtual UserFood Delete(UserFood userfood)
        {
            db.UserFoods.Remove(userfood);
            db.SaveChanges();

            return(userfood);
        }
Beispiel #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            UserFood userFood = db.UserFoods.Find(id);

            db.UserFoods.Remove(userFood);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public static async void SendPersistedIdMessage(UserFood user)
        {
            var msg = new Microsoft.Azure.ServiceBus.Message()
            {
                MessageId = Guid.NewGuid().ToString(),
                Body      = Encoding.ASCII.GetBytes(JsonConvert.SerializeObject(user.ToServiceModel()))
            };

            _iUMsg.SendMessagesAsync(msg);
        }
        public static async void SendNewIdMessage(UserFood user)
        {
            var msg = new Microsoft.Azure.ServiceBus.Message()
            {
                MessageId = Guid.NewGuid().ToString(),
                Body      = Encoding.ASCII.GetBytes("{\"AreaRestrictionsSet\": false, \"UserId\":" + user.codUserFood + "}")
            };

            _iUMsg.SendMessagesAsync(msg);
        }
 public static UserServiceModel ToServiceModel(this UserFood model, int requesterId = 1111)
 {
     return(new UserServiceModel()
     {
         Others = model.others,
         RequesterId = requesterId,
         Restrictions = model.userFoodRestriction.Select(x => x.foodRestriction),
         UserId = model.codUserFood
     });
 }
Beispiel #10
0
 public ActionResult Edit([Bind(Include = "Id,UserId,FoodId")] UserFood userFood)
 {
     if (ModelState.IsValid)
     {
         db.Entry(userFood).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(userFood));
 }
Beispiel #11
0
        public ActionResult Create([Bind(Include = "Id,UserId,FoodId")] UserFood userFood)
        {
            if (ModelState.IsValid)
            {
                db.UserFoods.Add(userFood);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(userFood));
        }
Beispiel #12
0
        //Collects user food input and stuff wow
        public static void UserFoodInput()
        {
            string  Food;
            String  MoreFood;
            Boolean Continue = true;

            Console.WriteLine("We would like to collect some more information from you to better tailor this game.");
            Console.WriteLine("Please enter a food item.");
            Food = Console.ReadLine();
            Food = Config.AntiEmptyC(Food);
            UserFood.Add(Food);
            Console.WriteLine("Would you like to enter another food item? [Y] or [N].");
            MoreFood = Console.ReadLine().Trim().ToUpper();
            MoreFood = Config.AntiEmpty(MoreFood);
            MoreFood = MoreFood.Substring(0, 1);
            while (MoreFood != "N" && MoreFood != "Y")
            {
                Console.WriteLine("Please enter Y or N.");
                MoreFood = Console.ReadLine().Trim().ToUpper();
                MoreFood = Config.AntiEmpty(MoreFood);
            }
            if (MoreFood == "N")
            {
                Console.WriteLine("Okay, we'll stop here.");
                Continue = false;
            }
            while (Continue == true)
            {
                Console.WriteLine("Please enter a food item.");
                Food = Console.ReadLine();
                Food = Config.AntiEmptyC(Food);
                UserFood.Add(Food);
                Console.WriteLine("Would you like to enter another food item? [Y] or [N].");
                MoreFood = Console.ReadLine().Trim().ToUpper();
                MoreFood = Config.AntiEmpty(MoreFood);
                MoreFood = MoreFood.Substring(0, 1);
                while (MoreFood != "N" && MoreFood != "Y")
                {
                    Console.WriteLine("Please enter Y or N.");
                    MoreFood = Console.ReadLine().Trim().ToUpper();
                    MoreFood = Config.AntiEmpty(MoreFood);
                }
                if (MoreFood == "N")
                {
                    Console.WriteLine("Okay, we'll stop here.");
                    Continue = false;
                }
            }
            Console.WriteLine("You have entered the following food items:");
            foreach (string F in UserFood)
            {
                Console.WriteLine(F);
            }
        }
Beispiel #13
0
 public virtual UserFood addUSerFood(UserProfileInfo profile, int id = 0)
 {
     try{
         UserFood food = new UserFood();
         food.UserId = profile.id;
         food.FoodId = id;
         db.UserFoods.Add(food);
         db.SaveChanges();
         return(food);
     }catch (Exception e)
     { return(null); }
 }
Beispiel #14
0
        public IActionResult Submit(int FoodId)
        {
            Food     newFood  = _context.Foods.Single(s => s.Id == FoodId);
            UserFood userFood = new UserFood
            {
                UserId = _userManager.GetUserId(User),
                Food   = newFood
            };

            _context.UserFoods.Add(userFood);
            _context.SaveChanges();
            return(Redirect("/Tableau"));
        }
Beispiel #15
0
        public async Task <IActionResult> Post(FaceServiceModel request)
        {
            try
            {
                //PROCESSANDO
                MessageService.SendProcessingMessage(Guid.NewGuid().ToString());
                //ANALISA IMAGEM
                var faceGuid = await FacialService.UpsertBase64(request.face);

                //PEGA USUARIO
                var imageFace = UserStaticContext.UserFace.Where(x => x.faceId == faceGuid.Value.ToString()).FirstOrDefault();

                //PUBLICAR RESTRICOES
                if (imageFace != null) //JA TEM CADASTRADO
                {
                    UserFood user = db.UserFood.Where(x => x.codUserFood == imageFace.codUserFoodFK).FirstOrDefault();
                    if (user != null)
                    {
                        var restricoes = user.userFoodRestriction;
                        MessageService.SendPersistedIdMessage(user);
                    }
                }
                else //NÂO TEM CADASTRADO
                {
                    var newUser = new UserFood()
                    {
                        nameUser = "******"
                    };

                    db.UserFood.Add(newUser);
                    db.SaveChanges();

                    var userFace = new UserFace()
                    {
                        codUserFoodFK = newUser.codUserFood,
                        faceId        = faceGuid.ToString()
                    };

                    db.UserFace.Add(userFace);
                    db.SaveChanges();

                    MessageService.SendNewIdMessage(newUser);
                }

                return(Ok());
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Beispiel #16
0
        // GET: UserFoods/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            UserFood userFood = db.UserFoods.Find(id);

            if (userFood == null)
            {
                return(HttpNotFound());
            }
            return(View(userFood));
        }
Beispiel #17
0
 public virtual UserFood deleteFoodData(int id = 0)
 {
     try
     {
         UserFood food = db.UserFoods.Find(id);
         db.UserFoods.Remove(food);
         db.SaveChanges();
         return(food);
     }
     catch (Exception e)
     {
         return(null);
     }
 }
Beispiel #18
0
        public void DeleteFoodfromHealthPlanValue()
        {
            var foods = new UserFood();

            foods.Id     = 1;
            foods.FoodId = 1;
            foods.UserId = 1;

            var delete = new Mock <EUserFood>();

            delete.Setup(x => x.Delete(foods)).Returns(foods);
            var result = delete.Object.Delete(foods);

            Assert.IsNotNull(result);
        }
Beispiel #19
0
        public void addFoodToHealthPlanValue()
        {
            var foods = new UserFood();

            foods.Id     = 1;
            foods.FoodId = 1;
            foods.UserId = 1;

            var add = new Mock <EUserFood>();

            add.Setup(x => x.Add(foods)).Returns(foods);
            var result = add.Object.Add(foods);

            Assert.IsNotNull(result);
        }
        private UserFood MapRowToUser(SqlDataReader reader)
        {
            UserFood userFood = new UserFood();

            userFood.RowId              = Convert.ToInt32(reader["rowId"]);
            userFood.UserId             = Convert.ToInt32(reader["userId"]);
            userFood.DateOfEntry        = Convert.ToDateTime(reader["dateOfEntry"]);
            userFood.MealId             = Convert.ToInt32(reader["mealId"]);
            userFood.CaloriesPerServing = (float)Convert.ToDecimal(reader["caloriesPerServing"]);
            userFood.NumberOfServings   = (float)Convert.ToDecimal(reader["numberOfServings"]);
            userFood.FoodName           = Convert.ToString(reader["foodName"]);
            userFood.ServingQuantity    = (float)Convert.ToDecimal(reader["servingQuantity"]);
            userFood.ServingUnit        = Convert.ToString(reader["servingUnit"]);

            return(userFood);
        }
        public ActionResult Save(UserFood userFood)
        {
            if (userFood.ID == 0)
            {
                _context.UserFood.Add(userFood);
            }
            else
            {
                var foodInDB = _context.UserFood.Single(c => c.ID == userFood.ID);
                foodInDB.FoodName = userFood.FoodName;
                //foodInDB.userID = ;
                foodInDB.Calories = userFood.Calories;
                foodInDB.Protein  = userFood.Protein;
                foodInDB.Fat      = userFood.Fat;
                foodInDB.Carbs    = userFood.Carbs;
            }
            _context.SaveChanges();

            return(RedirectToAction("Index", "UserFood"));
        }
        public async Task <IActionResult> SaveFood([Bind("Id,Name,IngredientsPicture,ProductPicture,IsVegan,Notes")] Food newFood, IFormFile picture)
        {
            var savedFood = _context.Food.Where(f => f.Id == newFood.Id).SingleOrDefault();

            using (var stream = new MemoryStream())
            {
                await picture.CopyToAsync(stream);

                savedFood.ProductPicture = stream.ToArray();
            }
            savedFood.Notes = newFood.Notes;
            savedFood.Name  = newFood.Name;
            UserFood userFood = new UserFood()
            {
                StandardUserId = GetStandardUserId(), Food = savedFood
            };
            await _context.UserFoods.AddAsync(userFood);

            await _context.SaveChangesAsync();

            return(RedirectToAction("UserFoods"));
        }
        public void SaveItemToUserFoodLog(int userId, Food food, int mealId, int numberOfServings)
        {
            if (food.nf_calories == null)
            {
                food.nf_calories = 0;
            }
            if (food.nf_total_fat == null)
            {
                food.nf_total_fat = 0;
            }
            if (food.nf_cholesterol == null)
            {
                food.nf_cholesterol = 0;
            }
            if (food.nf_saturated_fat == null)
            {
                food.nf_saturated_fat = 0;
            }
            if (food.nf_sodium == null)
            {
                food.nf_sodium = 0;
            }
            if (food.nf_total_carbohydrate == null)
            {
                food.nf_total_carbohydrate = 0;
            }
            if (food.nf_dietary_fiber == null)
            {
                food.nf_dietary_fiber = 0;
            }
            if (food.nf_sugars == null)
            {
                food.nf_sugars = 0;
            }
            if (food.nf_protein == null)
            {
                food.nf_protein = 0;
            }
            if (food.nf_potassium == null)
            {
                food.nf_potassium = 0;
            }

            try
            {
                using (SqlConnection conn = new SqlConnection(connectionString))
                {
                    conn.Open();

                    SqlCommand cmd = new SqlCommand("SELECT * FROM foods WHERE foodName = @foodName;", conn);
                    cmd.Parameters.AddWithValue("@foodName", food.Name);

                    var resultReturned = cmd.ExecuteReader();

                    if (!resultReturned.HasRows)
                    {
                        conn.Close();
                        conn.Open();
                        SqlCommand newFood = new SqlCommand($"INSERT INTO foods(foodName, servingQuantity, servingUnit, calories, totalFat, saturatedFat, cholesterol, sodium, totalCarbohydrate, dietaryFiber, sugars, protein, potassium) VALUES(@foodName, @servingQuantity, @servingUnit, @calories, @totalFat, @saturatedFat, @cholesterol, @sodium, @totalCarbohydrate, @dietaryFiber, @sugars, @protein, @potassium); ", conn);
                        newFood.Parameters.AddWithValue("@foodName", food.Name);
                        newFood.Parameters.AddWithValue("@servingQuantity", food.serving_qty);
                        newFood.Parameters.AddWithValue("@servingUnit", food.serving_unit);
                        newFood.Parameters.AddWithValue("@calories", food.nf_calories);
                        newFood.Parameters.AddWithValue("@totalFat", food.nf_total_fat);
                        newFood.Parameters.AddWithValue("@saturatedFat", food.nf_saturated_fat);
                        newFood.Parameters.AddWithValue("@cholesterol", food.nf_cholesterol);
                        newFood.Parameters.AddWithValue("@sodium", food.nf_sodium);
                        newFood.Parameters.AddWithValue("@totalCarbohydrate", food.nf_total_carbohydrate);
                        newFood.Parameters.AddWithValue("@dietaryFiber", food.nf_dietary_fiber);
                        newFood.Parameters.AddWithValue("@sugars", food.nf_sugars);
                        newFood.Parameters.AddWithValue("@protein", food.nf_protein);
                        newFood.Parameters.AddWithValue("@potassium", food.nf_potassium);

                        var rowsAffected = newFood.ExecuteNonQuery();
                    }

                    UserFood userFood = new UserFood();
                    userFood.UserId             = userId;
                    userFood.DateOfEntry        = DateTime.Now;
                    userFood.CaloriesPerServing = (float)food.nf_calories;
                    userFood.MealId             = mealId;
                    userFood.NumberOfServings   = numberOfServings;
                    userFood.ServingQuantity    = food.serving_qty;
                    userFood.ServingUnit        = food.serving_unit;
                    userFood.FoodName           = food.Name;

                    conn.Close();
                    conn.Open();

                    SqlCommand newUserFood = new SqlCommand($"INSERT INTO users_foods (userId, dateOfEntry, mealId, caloriesPerServing, numberOfServings, servingQuantity, servingUnit, foodName) VALUES (@userId, @dateOfEntry, @mealId, @caloriesPerServing, @numberOfServings, @servingQuantity, @servingUnit, @foodName);", conn);
                    newUserFood.Parameters.AddWithValue("@userId", userFood.UserId);
                    newUserFood.Parameters.AddWithValue("@dateOfEntry", userFood.DateOfEntry);
                    newUserFood.Parameters.AddWithValue("@mealId", userFood.MealId);
                    newUserFood.Parameters.AddWithValue("@caloriesPerServing", userFood.CaloriesPerServing);
                    newUserFood.Parameters.AddWithValue("@numberOfServings", userFood.NumberOfServings);
                    newUserFood.Parameters.AddWithValue("@servingQuantity", userFood.ServingQuantity);
                    newUserFood.Parameters.AddWithValue("@servingUnit", userFood.ServingUnit);
                    newUserFood.Parameters.AddWithValue("@foodName", userFood.FoodName);

                    var rowsAffected2 = newUserFood.ExecuteNonQuery();
                }
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }