/// <summary> /// get all categories of food /// </summary> /// <returns> list of categories </returns> public static List <CategoryDTO> GetAllCategories() { using (RecipezeEntities db = new RecipezeEntities()) { return(CONVERTERS.CategoryConverter.ConvertCategoryListToDTO(db.Categories)); } }
public static void addVote(string siteName) { using (RecipezeEntities db = new RecipezeEntities()) { try { var numOfVotes = db.Votes.Where(a => a.siteName == siteName).ToList(); if (numOfVotes.Count == 0) { VotesDTO voting = new VotesDTO() { siteName = siteName, voteNumbers = 1 }; db.Votes.Add(CONVERTERS.VotesConverter.ConvertVoteToDAL(voting)); db.SaveChanges(); } else { var voteUpdate = db.Votes.Where ( p => siteName.Contains(p.siteName) ); foreach (Vote p in voteUpdate) { p.voteNumbers++; } db.SaveChanges(); } } catch (Exception e) { Console.WriteLine(e); } } }
/// <summary> /// method retrieves all the recipes that belong to current user from database /// </summary> /// <param name="userId"> int </param> /// <returns> list of recipes </returns> public static List <RecipeDTO> getUserCookbook(int userId) { using (RecipezeEntities db = new RecipezeEntities()) { var user = db.Users.Where(a => a.UserId == userId).ToList(); return(CONVERTERS.RecipeConverter.ConvertRecipeListToDTO(user[0].CookbookRecipes.ToList())); } }
/// <summary> /// adds a recipe to database /// </summary> /// <param name="userId"> int </param> /// <param name="recipe"> RecipeDTO </param> public static void AddRecipeToCookbook(int userId, RecipeDTO recipe) { using (RecipezeEntities db = new RecipezeEntities()) { db.CookbookRecipes.Add(CONVERTERS.RecipeConverter.ConvertRecipeToDAL(recipe, userId)); db.SaveChanges(); } }
/// <summary> /// chooses 6 random article links from database /// </summary> /// <returns> list of health article links </returns> public static List <HealthArticlesDTO> GetRandomArticles() { using (RecipezeEntities db = new RecipezeEntities()) { var sixRandomFoos = CONVERTERS.HealthArticlesConverter.ConvertArticleListToDTO(db.HealthFoodArticles); return(sixRandomFoos.OrderBy(x => Guid.NewGuid()).Take(6).ToList()); } }
/// <summary> /// get category name from database by category Id /// </summary> /// <param name="categoryId"></param> /// <returns> category name </returns> public static string GetCurrentCategory(int categoryId) { using (RecipezeEntities db = new RecipezeEntities()) { var c = db.Categories.Where(a => a.CategoryId == categoryId).ToList(); return(c[0].CategoryName); } }
/// <summary> /// adds new user to database /// </summary> /// <param name="user"> UserDTO </param> public static void AddUser(UserDTO user) { using (RecipezeEntities db = new RecipezeEntities()) { db.Users.Add(CONVERTERS.UserConverter.ConvertUserToDAL(user)); db.SaveChanges(); } }
/// <summary> /// The method gets all allergies from database /// </summary> /// <returns> list of allergies </returns> public static List <AllergyDTO> getAllAllergies() { using (RecipezeEntities db = new RecipezeEntities()) { //convert allergy list to DTO return(CONVERTERS.AllergyConverter.ConvertAllergyListToDTO(db.Allergies)); } }
/// <summary> /// The method gets the allergies for the current user /// </summary> /// <param name="userId"></param> /// <returns></returns> public static List <AllergyDTO> getCurrentUserAllergies(int userId) { using (RecipezeEntities db = new RecipezeEntities()) { //get user from database by userId var user = db.Users.Where(a => a.UserId == userId).ToList(); return(CONVERTERS.AllergyConverter.ConvertAllergyListToDTO(user[0].Allergies.ToList())); } }
/// <summary> /// method removes a recipe from database /// </summary> /// <param name="recipeId"> int </param> /// <param name="userId"> int </param> public static void DeleteRecipeFromCookbook(int recipeId, int userId) { using (RecipezeEntities db = new RecipezeEntities()) { //gets the user and recipe from database var user = db.Users.Where(a => a.UserId == userId).ToList(); var recp = user[0].CookbookRecipes.FirstOrDefault(c => c.recipeId == recipeId); //remove from database db.Ingredients.RemoveRange(recp.Ingredients); db.Instructions.RemoveRange(recp.Instructions); db.CookbookRecipes.Remove(recp); db.SaveChanges(); } }
/// <summary> /// get all allergies from database /// </summary> /// <param name="whatChecked"></param> /// <returns> list of allergies </returns> public static List <string> GetAllergies(int[] whatChecked) { using (RecipezeEntities db = new RecipezeEntities()) { List <string> allergies = new List <string>(); //add allergies name to list by allergy Id foreach (var item in whatChecked) { var allergy = db.Allergies.Where(a => a.AllergyCode == item).ToList(); allergies.Add(allergy[0].AllergyName); } return(allergies); } }
/// <summary> /// checks if user already exists in database /// </summary> /// <param name="email"> string </param> /// <param name="password"> string </param> /// <returns>userId if exists. If doesn't exist returns -1 </returns> public static int GetUserExist(string email, string password) { using (RecipezeEntities db = new RecipezeEntities()) { try { var member = db.Users.Where(a => a.Email == email && a.Password == password).ToList(); return(member[0].UserId); } catch (Exception e) { Console.WriteLine(e); return(-1); } } }
/// <summary> /// define allergies for current user, add new ones and delete old ones /// </summary> /// <param name="userId"></param> /// <param name="allergies"></param> /// <returns> true, if allergies added successfully </returns> public static bool DefineAllergiesForUser(int userId, List <int> allergies) { using (RecipezeEntities db = new RecipezeEntities()) { //get user from database by Id User user = db.Users.FirstOrDefault(u => u.UserId == userId); user.Allergies.Clear(); //update selected allergies the user chose allergies.ForEach( a => { user.Allergies.Add(db.Allergies.FirstOrDefault(al => al.AllergyCode == a)); }); db.SaveChanges(); return(true); } }
/// <summary> /// method checks if a recipe, that is supposed to be added, exists already in user's database /// </summary> /// <param name="userId"></param> /// <param name="recipe"></param> /// <returns> true - if recipe exist. false - if recipe not exist </returns> public static bool checkIfRecipeExist(int userId, RecipeDTO recipe) { using (RecipezeEntities db = new RecipezeEntities()) { var user = db.Users.Where(a => a.UserId == userId).ToList(); var recp = CONVERTERS.RecipeConverter.ConvertRecipeToDAL(recipe, userId); var c = db.CookbookRecipes.ToList().FirstOrDefault(a => a.userId == user[0].UserId && a.recipeName == recipe.RecipeName && a.recipeImage == recipe.PictureSource); //if recipe already exists, returns true. if (c != null) { return(true); } else { return(false); } } }
public static List <Vote> CheckingNumOfVotes(List <string> sitesName) { using (RecipezeEntities db = new RecipezeEntities()) { List <Vote> sites = new List <Vote>(); sitesName.ForEach(w => { var amount = db.Votes.Where(n => n.siteName == w).Where(a => a.voteNumbers >= 10).ToList(); if (amount.Count != 0) { sites.Add(amount[0]); } }); return(sites); //if (amount == null) // return null; //else // return amount; // return db.Votes.Where(a => a.vote.voteNumbers > 10).ToList(); } }
/// <summary> /// get substitutes for current user's allergies /// </summary> /// <param name="userId"></param> /// <returns> list of substitutes </returns> public static List <SubstitutesDTO> getSubstitutes(int userId) { using (RecipezeEntities db = new RecipezeEntities()) { //get current user's allergies List <AllergyDTO> allergies = getCurrentUserAllergies(userId); if (allergies == null) { return(null); } List <SubstitutesDTO> substitutes = new List <SubstitutesDTO>(); //get matching substitutes for each allergy allergies.ForEach(a => { var ans = db.Substitutes.Where(s => s.AllergyId == a.AllergyCode).ToList(); substitutes.Add(new SubstitutesDTO() { SubstitutesName = ans[0].SubstituteName, SubstitutesIcon = ans[0].icon }); }); return(substitutes); } }