public IEnumerable <FoodandNutrition> getnutritiondetails()
        {
            List <FoodDetails>      foods             = _context.FoodDetails.ToList();
            List <FoodandNutrition> foodandNutritions = new List <FoodandNutrition>();

            foreach (var item in _context.Nutrition)
            {
                FoodDetails foodDetail = new FoodDetails();
                foodDetail = foods.FirstOrDefault(f => f.FoodId == item.FoodId);
                if (foodDetail != null)
                {
                    foodandNutritions.Add(new FoodandNutrition
                    {
                        NutritionId           = item.NuytritionId,
                        FoodName              = foodDetail.FoodName,
                        WeightInGrams         = item.WeightInGrams,
                        Protein               = item.Protein,
                        Calories              = item.Calories,
                        Totalsugar            = item.Totalsugar,
                        Sodium                = item.Sodium,
                        Grain                 = item.Grain,
                        FruitorVegetable      = item.FruitorVegetable,
                        Dairy                 = item.Dairy,
                        ProteinClassification = item.ProteinClassification
                    });
                }
            }
            return(foodandNutritions);
        }
示例#2
0
        private static void FoodDetailsExample()
        {
            // Get the food id, call the service, show the response.

            var foodId = AskFor <int>("Enter a food id: ");

            if (foodDetail == null)
            {
                foodDetail = new FoodDetails(consumerKey, consumerSecret);
            }

            var response = foodDetail
                           .GetResponseSynchronously(
                new FoodDetailsRequest()
            {
                FoodId = foodId
            });

            if (response.HasResponse)
            {
                Console.WriteLine("Found " + response.food.servings.serving.Count + " Results: ");

                foreach (var serv in response.food.servings.serving)
                {
                    // Use a little reflection to help show the results.
                    ShowPropertyValues(serv);
                }
            }
            else
            {
                Console.WriteLine("No response for food id: " + foodId);
            }
        }
示例#3
0
        private void btnEditFood_Click(object sender, EventArgs e)
        {
            FoodDetails f         = new FoodDetails();
            int         fid       = Convert.ToInt32(lbFoodID.Text);
            string      fname     = lbFoodName.Text;
            int         fcategory = Convert.ToInt32(lbFoodCategory.Text);
            float       fprice    = (float)Convert.ToInt32(lbFoodPrice.Text);

            byte[] img = ImageToByteArray(FoodDAO.instance.getimagebyid(fid));
            f.LoadFood(fid, fname, fcategory, fprice);
            f.ShowDialog();
            if (f.IsChannged(fname, fcategory, fprice, img) && f.FoodName != null)
            {
                fname     = f.FoodName;
                fcategory = f.Category;
                fprice    = f.Price;
                byte[] image = f.FoodImage;
                if (FoodDAO.Instance.UpdateFood(fname, fcategory, fprice, fid))
                {
                    FoodDAO.Instance.UpdateFoodImage(image, fname);
                    MessageBox.Show("Sửa thành công");
                    LoadListFood();
                }
                else
                {
                    MessageBox.Show("Có lỗi xảy ra!");
                }
            }
            this.Show();
        }
示例#4
0
        public void openPopUp()
        {
            FoodDetails fd = foodSearchItemModel.getFoodDetailsByNum(FoodNumber);

            FoodDetailsProperty = (fd.Calories).ToString() + "," + (fd.Carbohydrate).ToString() + "," + (fd.Fats).ToString() + "," + (fd.Fiber).ToString() +
                                  "," + (fd.Protien).ToString() + "," + (fd.Sodium).ToString() + "," + (fd.Sugars).ToString() + "," + (fd.Vitamins).ToString() + "," + (fd.Water).ToString() + "," + FoodNameProperty;
            MyIsOpenProperty = true;
        }
 // PUT: api/FoodDetails/5
 public void Put(string id, [FromBody] FoodDetails value)
 {
     try {
         FoodDetailsDAL.Update(id, value);
     }
     catch (Exception ex) {
         throw ex;
     }
 }
        public async Task <FoodDetails> UpdateQuantity(FoodDetails item, int id)
        {
            FoodDetails fr = await _context.FoodDetails.FindAsync(id);

            fr.Quantity   = item.Quantity;
            fr.Price      = item.Price;
            fr.TotalPrice = fr.Price * fr.Quantity;
            await _context.SaveChangesAsync();

            return(fr);
        }
 // POST: api/FoodDetails
 public void Post([FromBody] FoodDetails value)
 {
     try
     {
         FoodDetailsDAL.Insert(value);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#8
0
        public async Task <IActionResult> Search(string name)
        {
            IEnumerable <FoodSearchResult> foods;

            if (EanUtils.IsAllNumbers(name))
            {
                foods = nutritionRepository.SearchFoodsByEan(name, CurrentUserId);
                if (!foods.Any())
                {
                    var extFood = await SearchExternalFood(name);

                    if (extFood != null)
                    {
                        var newFood = new FoodDetails
                        {
                            UserId       = CurrentUserId,
                            Ean          = name,
                            Manufacturer = extFood.Manufacturer,
                            Name         = extFood.Name,
                            Nutrients    = extFood.Nutrients.Select(n => new FoodNutrientAmount
                            {
                                NutrientId = n.NutrientId,
                                Amount     = n.Amount
                            }).ToArray()
                        };

                        nutritionRepository.CreateFood(newFood);
                        foods = new[]
                        {
                            new FoodSearchResult
                            {
                                Id           = newFood.Id,
                                Created      = newFood.Created,
                                Ean          = newFood.Ean,
                                Manufacturer = newFood.Manufacturer,
                                Name         = newFood.Name,
                                UserId       = newFood.UserId
                            }
                        };
                    }
                }
            }
            else
            {
                foods = nutritionRepository.SearchFoods(name.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries), CurrentUserId);
            }
            foods = foods.OrderBy(f => f.LatestUse.HasValue || f.Name.Equals(name, StringComparison.CurrentCultureIgnoreCase) ? 1 : 2)
                    .ThenBy(f => f.Name.StartsWith(name, StringComparison.CurrentCultureIgnoreCase) ? 1 : 2)
                    .ThenBy(f => f.Name);
            var response = Mapper.Map <FoodSearchResultResponse[]>(foods);

            return(Ok(response));
        }
        public static List <FoodDetails> GetAll()
        {
            List <FoodDetails> foodDetailsList = new List <FoodDetails>();

            try
            {
                using (SqlConnection con = new SqlConnection(conString))
                {
                    if (con.State == ConnectionState.Closed)
                    {
                        con.Open();
                    }
                    string     query = "SELECT * FROM FoodDetails";
                    SqlCommand cmd   = new SqlCommand(query, con);

                    SqlDataReader reader = cmd.ExecuteReader();
                    if (reader != null)
                    {
                        if (reader.HasRows)
                        {
                            while (reader.Read())
                            {
                                FoodDetails foodDetails = new FoodDetails()
                                {
                                    FoodId = reader["FoodId"].ToString(),
                                    //FoodType = reader["FoodType"].ToString(),
                                    //MealType = reader["MealType"].ToString(),
                                    //DishType = reader["DishType"].ToString(),
                                    FoodName = reader["FoodName"].ToString(),
                                    //FoodFileName = reader["FoodFileName"].ToString(),
                                    //FoodFilePath = reader["FoodFilePath"].ToString(),
                                    // CreatedBy = reader["CreatedBy"].ToString(),
                                    FoodCost = int.Parse(reader["FoodCost"].ToString())
                                };
                                foodDetailsList.Add(foodDetails);
                            }
                            reader.Close();
                        }
                    }
                    if (con.State == ConnectionState.Open)
                    {
                        con.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(foodDetailsList);
        }
示例#10
0
        public MultiFoodServingsDetails GetFood(int id)
        {
            var fooditem    = new FoodDetails(_consumerKey, _consumerSecret);
            var itemrequest = new FoodDetailsRequest {
                FoodId = id
            };
            var response = fooditem.GetResponseSynchronously(itemrequest);

            if (response != null && response.HasResponse)
            {
                return(response.food);
            }
            return(null);
        }
示例#11
0
        private static void CalculatePortionWeights(FoodDetails recipe)
        {
            var recipeWeight = recipe.Ingredients.Sum(i => i.Weight);

            if (recipe.CookedWeight.HasValue)
            {
                recipeWeight = recipe.CookedWeight.Value;
            }
            foreach (var portion in recipe.Portions)
            {
                if (portion.Amount.HasValue)
                {
                    portion.Weight = recipeWeight / portion.Amount.Value;
                }
            }
        }
示例#12
0
        private void CalculateNutrients(FoodDetails recipe)
        {
            recipe.Ingredients = recipe.Ingredients.Where(i => i.FoodId != Guid.Empty).ToArray();

            var foodIds         = recipe.Ingredients.Select(i => i.FoodId);
            var foods           = nutritionRepository.GetFoods(foodIds);
            var recipeNutrients = new List <FoodNutrientAmount>();
            var recipeWeight    = 0m;

            foreach (var ingredient in recipe.Ingredients)
            {
                var food = foods.Single(f => f.Id == ingredient.FoodId);
                if (ingredient.PortionId.HasValue)
                {
                    var portion = food.Portions.Single(p => p.Id == ingredient.PortionId);
                    ingredient.Weight = ingredient.Quantity * portion.Weight;
                }
                else
                {
                    ingredient.Weight = ingredient.Quantity;
                }
                foreach (var foodNutrient in food.Nutrients)
                {
                    var recipeNutrient = recipeNutrients.SingleOrDefault(n => n.NutrientId == foodNutrient.NutrientId);
                    if (recipeNutrient == null)
                    {
                        recipeNutrient = new FoodNutrientAmount
                        {
                            NutrientId = foodNutrient.NutrientId
                        };
                        recipeNutrients.Add(recipeNutrient);
                    }
                    recipeNutrient.Amount += (ingredient.Weight * foodNutrient.Amount) / 100m;
                }
                recipeWeight += ingredient.Weight;
            }
            if (recipe.CookedWeight.HasValue)
            {
                recipeWeight = recipe.CookedWeight.Value;
            }
            recipeNutrients.ForEach(na => {
                na.Amount = na.Amount * 100 / recipeWeight;
            });
            recipe.Nutrients = recipeNutrients.ToArray();
        }
        public static List <FoodDetails> Get(int CustomerId)
        {
            List <FoodDetails> foodlist = new List <FoodDetails>();

            try
            {
                using (SqlConnection con = new SqlConnection(conString))
                {
                    if (con.State == ConnectionState.Closed)
                    {
                        con.Open();
                    }
                    string query = "select FoodName, FoodCost from FoodDetails, BookFood " +
                                   "where ( FoodDetails.FoodId = BookFood.FoodType or FoodDetails.FoodId = BookFood.MealType or FoodDetails.FoodId = BookFood.DishType or FoodDetails.FoodId = BookFood.DishName ) " +
                                   "and CustomerId = @CustomerId ";
                    SqlCommand cmd = new SqlCommand(query, con);
                    cmd.Parameters.Add(new SqlParameter("@CustomerId", CustomerId));
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (reader != null)
                    {
                        if (reader.HasRows)
                        {
                            while (reader.Read())
                            {
                                FoodDetails food = new FoodDetails()
                                {
                                    FoodName = reader["FoodName"].ToString(),
                                    FoodCost = int.Parse(reader["FoodCost"].ToString())
                                };
                                foodlist.Add(food);
                            }
                            reader.Close();
                        }
                    }
                    if (con.State == ConnectionState.Open)
                    {
                        con.Close();
                    }
                }
            }
            catch (Exception ex)
            { throw ex; }
            return(foodlist);
        }
示例#14
0
        private static void CalculatePortionNutrients(FoodRequest request, FoodDetails food)
        {
            var nutrientPortion = request.Portions.FirstOrDefault(p => p.NutrientPortion);

            if (nutrientPortion != null)
            {
                food.NutrientPortionId = nutrientPortion.Id;

                var portionWeight = nutrientPortion.Weight;
                if (food.Nutrients != null)
                {
                    foreach (var nutrientAmount in food.Nutrients)
                    {
                        nutrientAmount.PortionAmount = nutrientAmount.Amount;
                        nutrientAmount.Amount       *= (100m / portionWeight);
                    }
                }
            }
        }
示例#15
0
        private static bool FoodHasChanges(FoodDetails food, FoodRequest request)
        {
            if (food.Ean != request.Ean)
            {
                return(true);
            }
            if (food.Manufacturer != request.Manufacturer)
            {
                return(true);
            }
            if (food.Name != request.Name)
            {
                return(true);
            }
            if (food.Nutrients != null)
            {
                foreach (var nutrient in food.Nutrients)
                {
                    var nutrient2 = request.Nutrients.FirstOrDefault(n => n.NutrientId == nutrient.NutrientId);
                    if (nutrient2 == null || nutrient2.Amount != nutrient.Amount)
                    {
                        return(true);
                    }
                }
            }
            if (food.Portions != null)
            {
                if (food.Portions.Length != (request.Portions?.Length ?? 0))
                {
                    return(true);
                }
                foreach (var portion in food.Portions)
                {
                    var portion2 = request.Portions.FirstOrDefault(p => p.Id == portion.Id);
                    if (portion2 == null || portion2.Name != portion.Name || portion2.Weight != portion.Weight)
                    {
                        return(true);
                    }
                }
            }

            return(false);
        }
        public static bool Update(string FoodId, FoodDetails foodDetails)
        {
            bool status = false;

            try
            {
                using (SqlConnection con = new SqlConnection(conString))
                {
                    if (con.State == ConnectionState.Closed)
                    {
                        con.Open();
                    }
                    string query = "UPDATE FoodDetails SET " +
                                   "FoodName=@FoodName, FoodCost=@FoodCost " +
                                   "WHERE FoodId=@FoodId";
                    SqlCommand cmd = new SqlCommand(query, con);

                    cmd.Parameters.Add(new SqlParameter("@FoodId", foodDetails.FoodId));
                    //  cmd.Parameters.Add(new SqlParameter("@FoodType", foodDetails.FoodType));
                    //  cmd.Parameters.Add(new SqlParameter("@MealType", foodDetails.MealType));
                    //  cmd.Parameters.Add(new SqlParameter("@DishType", foodDetails.DishType));
                    cmd.Parameters.Add(new SqlParameter("@FoodName", foodDetails.FoodName));
                    //  cmd.Parameters.Add(new SqlParameter("@FoodFileName", foodDetails.FoodFileName));
                    // cmd.Parameters.Add(new SqlParameter("@FoodFilePath", foodDetails.FoodFilePath));
                    // cmd.Parameters.Add(new SqlParameter("@CreatedBy", foodDetails.CreatedBy));
                    cmd.Parameters.Add(new SqlParameter("@FoodCost", foodDetails.FoodCost));

                    cmd.ExecuteNonQuery();
                    if (con.State == ConnectionState.Open)
                    {
                        con.Close();
                    }
                    status = true;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(status);
        }
示例#17
0
        public async Task <IActionResult> UpdateFoodDetails(FoodDetails foodDetails, int id)
        {
            if (id != foodDetails.FoodId)
            {
                return(BadRequest());
            }

            //_context.Entry(foodDetails).State = EntityState.Modified;

            try
            {
                await _context.UpdateQuantity(foodDetails, id);
            }
            catch (Exception err)
            {
                var errormessage = err.Message;
            }

            return(NoContent());
        }
示例#18
0
        //private void txbFoodName_TextChanged(object sender, EventArgs e)
        //{
        //    if (dtgvFood.SelectedCells.Count > 0 && dtgvFood.SelectedCells[0].OwningRow.Cells["CategoryID"].Value != null)
        //    {
        //        int id = (int)dtgvFood.SelectedCells[0].OwningRow.Cells["CategoryID"].Value;
        //        Category category = CategoryDAO.Instance.GetCategoryByID(id);
        //        cbxFoodCategory.SelectedItem = category;
        //        int Index = -1, i = 0;
        //        foreach (Category item in cbxFoodCategory.Items)
        //        {
        //            if (item.ID == category.ID)
        //            {
        //                Index = i;
        //                break;
        //            }
        //            i++;
        //        }
        //        cbxFoodCategory.SelectedIndex = Index;

        //    }
        //}

        private void btnAddFood_Click(object sender, EventArgs e)
        {
            FoodDetails f = new FoodDetails();

            f.ShowDialog();
            if (f.FoodName != null && f.IsAdd())
            {
                string name       = f.FoodName;
                int    categoryid = f.Category;
                float  price      = f.Price;
                byte[] image      = f.FoodImage;
                if (FoodDAO.Instance.InsertFood(name, categoryid, price))
                {
                    FoodDAO.Instance.UpdateFoodImage(image, name);
                    MessageBox.Show("Thêm thành công");
                    LoadListFood();
                }
                else
                {
                    MessageBox.Show("Có lỗi xảy ra khi thêm!");
                }
            }
            this.Show();
        }
示例#19
0
        public async Task <IActionResult> OnPostAsync()
        {
            if (ModelState.IsValid)
            {
                FoodTypeVM.FoodHeader.DateAdded = DateTime.Now;
                FoodTypeVM.ServiceAddFood       = _db.ServiceAddFood.Include(c => c.FoodType).Where(c => c.FoodId == FoodTypeVM.DailyFood.Id).ToList();
                foreach (var item in FoodTypeVM.ServiceAddFood)
                {
                    FoodTypeVM.FoodHeader.TotalCalories += item.FoodType.Calorie;
                }
                FoodTypeVM.FoodHeader.DailyFoodId = FoodTypeVM.DailyFood.Id;

                _db.FoodHeader.Add(FoodTypeVM.FoodHeader);
                await _db.SaveChangesAsync();

                foreach (var detail in FoodTypeVM.ServiceAddFood)
                {
                    FoodDetails serviceDetails = new FoodDetails
                    {
                        FoodHeaderId = FoodTypeVM.FoodHeader.Id,
                        FoodName     = detail.FoodType.Name,
                        FoodCalories = detail.FoodType.Calorie,
                        FoodTypeId   = detail.FoodTypeId
                    };

                    _db.Food.Add(serviceDetails); //Food to nazwa klasy FoodDetails, przepraszam za upośledzenie
                }
                _db.ServiceAddFood.RemoveRange(FoodTypeVM.ServiceAddFood);

                await _db.SaveChangesAsync();

                return(RedirectToPage("../DailyFoods/Index", new { userId = FoodTypeVM.DailyFood.UserId }));
            }

            return(Page());
        }
        public async Task NavigateTo(ViewModelLocator viewModelName, IEnumerable <ConstructorParameter> constructorParameters = null)
        {
            object viewModel;
            Page   view;

            switch (viewModelName)
            {
            case ViewModelLocator.Login:
            {
                viewModel = _container.Resolve <LoginViewModel>();
                view      = new Login();
                break;
            }

            case ViewModelLocator.ActionSelection:
            {
                viewModel = _container.Resolve <ActionSelectionViewModel>();
                view      = new ActionSelection();
                break;
            }

            case ViewModelLocator.FoodExplore:
            {
                viewModel = _container.Resolve <FoodExploreViewModel>();
                view      = new FoodExploreView();
                break;
            }

            case ViewModelLocator.FoodDetails:
            {
                viewModel = _container.Resolve <FoodDetailsViewModel>(GetParameters(constructorParameters));
                view      = new FoodDetails();
                break;
            }

            case ViewModelLocator.Payment:
            {
                viewModel = _container.Resolve <PaymentViewModel>(GetParameters(constructorParameters));
                view      = new Payment();
                break;
            }

            case ViewModelLocator.OrderStatus:
            {
                viewModel = _container.Resolve <OrderStatusViewModel>(GetParameters(constructorParameters));
                view      = new OrderStatus();
                break;
            }

            case ViewModelLocator.Wallet:
            {
                viewModel = _container.Resolve <WalletViewModel>();
                view      = new Wallet();
                break;
            }

            case ViewModelLocator.Events:
            {
                viewModel = _container.Resolve <CafeteriaEventsViewModel>();
                view      = new CafeteriaEvents();
                break;
            }

            case ViewModelLocator.Stats:
            {
                viewModel = _container.Resolve <StatsViewModel>();
                view      = new Stats();
                break;
            }

            default:
            {
                throw new InvalidOperationException();
            }
            }
            view.BindingContext = viewModel;
            await Application.Current.MainPage.Navigation.PushAsync(view);
        }
示例#21
0
        static async Task Main(string[] args)
        {
            Console.WriteLine("Inventory Manager");
            Console.WriteLine();
            Console.WriteLine("1 - Food");
            Console.WriteLine("2 - Equipment");

start:
            Console.WriteLine();
            Console.WriteLine();
            Console.Write("Please enter a command: ");
            string _cmdNumber = Console.ReadLine();

            switch (_cmdNumber)
            {
            case "1":

                Console.WriteLine();
                Console.WriteLine();
                Console.WriteLine("Food Commands");
                Console.WriteLine();
                Console.WriteLine("1 - Add Food Details");
                Console.WriteLine("2 - Add Food Inventory");
                Console.WriteLine("3 - View Food Details");
                Console.WriteLine("4 - View Food Stock");
                Console.WriteLine("5 - Update Food Details");
                Console.WriteLine("6 - Update Food Stock");
                Console.WriteLine("7 - Delete Food Details");
                Console.WriteLine("8 - Request Food Restock Delivery");
                Console.WriteLine("9 - Search Food By ID");
                Console.WriteLine("10 - Search Food By Keyword");

foodsubstart:
                Console.WriteLine();
                Console.WriteLine();
                Console.Write("Please enter a sub command: ");
                string _subCmdNumberFood = Console.ReadLine();

                switch (_subCmdNumberFood)
                {
                    //case 1 : Add Food Details Command
                    #region  Add Food Details Command
                case "1":

                    Console.WriteLine("Add Food Stock Details");
                    Console.WriteLine();

                    Console.Write("Food Code: ");
                    var _foodCode = Console.ReadLine();

                    Console.Write("Food Name: ");
                    var _foodName = Console.ReadLine();

                    Console.Write("Food Specification: ");
                    var _foodSpecification = Console.ReadLine();

                    Console.Write("Food Description: ");
                    var _foodDescription = Console.ReadLine();

                    Console.WriteLine("Food Unit: ");
                    Console.WriteLine("1 - Piece");
                    Console.WriteLine("2 - Box");
                    Console.WriteLine("3 - Dozen");
                    Console.WriteLine("4 - Others");
                    Console.Write("Food Unit: ");
                    var      _foodUnit       = Console.ReadLine();
                    UnitType _parsedfoodUnit = (UnitType)Enum.Parse(typeof(UnitType), _foodUnit);

                    Console.WriteLine("Food Type: ");
                    Console.WriteLine("1 - Perishable");
                    Console.WriteLine("2 - Non-perishable");
                    Console.WriteLine("3 - Others");
                    Console.Write("Food Type: ");
                    var      _foodType       = Console.ReadLine();
                    FoodType _parsedFoodType = (FoodType)Enum.Parse(typeof(FoodType), _foodType);


                    FoodDetails _foodDetails = new FoodDetails
                    {
                        Code          = _foodCode,
                        Name          = _foodName,
                        Specification = _foodSpecification,
                        Description   = _foodDescription,
                        Unit          = _parsedfoodUnit,
                        FoodType      = _parsedFoodType
                    };

                    var _addFoodDetailsInventoryCommand = await Mediator.Send(new AddFoodDetailsCommand { MyFoodDetails = _foodDetails });

                    if (_addFoodDetailsInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details Added to Inventory!");
                    }

                    goto foodsubstart;
                    #endregion

                    //case 2 : Add Food Inventory Command
                    #region Add Food Inventory Command
                case "2":

                    Console.WriteLine();
                    var _viewFoodDetails = await Mediator.Send(new ViewFoodDetailsQuery());

                    foreach (var item in _viewFoodDetails)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:     {0}", item.ID);
                        Console.WriteLine("Food Name:           {0}", item.Name);
                        Console.WriteLine("Food Code:           {0}", item.Code);
                        Console.WriteLine("Food Specification:  {0}", item.Specification);
                        Console.WriteLine("Food Description:    {0}", item.Description);
                        Console.WriteLine("Food Unit Type:      {0}", item.Unit);
                        Console.WriteLine("Food Type:           {0}", item.FoodType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Food Details ID to add inventory: ");
                    var _addFoodDetailsId       = Console.ReadLine();
                    int _addFoodDetailsIdParsed = int.Parse(_addFoodDetailsId);

                    Console.Write("Enter Quantity: ");
                    var _foodQuantity       = Console.ReadLine();
                    int _foodQuantityParsed = int.Parse(_foodQuantity);

                    Console.WriteLine("Format - (DD/MM/YYYY)");
                    Console.Write("Enter Expiration Date: ");
                    var      _foodExpirationDate       = Console.ReadLine();
                    DateTime _foodExpirationDateParsed = DateTime.Parse(_foodExpirationDate);

                    Console.Write("Enter Price: ");
                    var     _foodPrice       = Console.ReadLine();
                    decimal _foodPriceParsed = decimal.Parse(_foodPrice);

                    Console.Write("Enter Remarks: ");
                    var _foodRemarks = Console.ReadLine();

                    Console.Write("Enter User ID: ");
                    var _foodUserId       = Console.ReadLine();
                    int _foodUserIdParsed = int.Parse(_foodUserId);

                    FoodInventory _foodInventory = new FoodInventory
                    {
                        Quantity       = _foodQuantityParsed,
                        ExpirationDate = _foodExpirationDateParsed,
                        EncodingDate   = DateTime.Now,
                        ItemPrice      = _foodPriceParsed,
                        Remarks        = _foodRemarks,
                        UserID         = _foodUserIdParsed,
                        FoodDetailsID  = _addFoodDetailsIdParsed
                    };

                    var _addFoodInventoryCommand = await Mediator.Send(new AddFoodInventoryCommand { MyFoodInventory = _foodInventory });

                    if (_addFoodInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Inventory successfully added!");
                    }
                    else
                    {
                        Console.WriteLine("Failed!");
                    }

                    goto foodsubstart;
                    #endregion

                    //case 3 : View Food Details Query
                    #region View Food Details Query
                case "3":

                    var _viewFoodDetailsQuery = await Mediator.Send(new ViewFoodDetailsQuery());

                    foreach (var item in _viewFoodDetailsQuery)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:     {0}", item.ID);
                        Console.WriteLine("Food Name:           {0}", item.Name);
                        Console.WriteLine("Food Code:           {0}", item.Code);
                        Console.WriteLine("Food Specification:  {0}", item.Specification);
                        Console.WriteLine("Food Description:    {0}", item.Description);
                        Console.WriteLine("Food Unit Type:      {0}", item.Unit);
                        Console.WriteLine("Food Type:           {0}", item.FoodType);
                    }
                    goto foodsubstart;
                    #endregion

                    //case 4 : View Food Stock Query
                    #region View Food Stock Query
                case "4":

                    Console.WriteLine();
                    var _viewFoodStockQuery = await Mediator.Send(new ViewFoodStockQuery());

                    foreach (var item in _viewFoodStockQuery)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:  {0}", item.ID);
                        Console.WriteLine("Quantity          {0}", item.Quantity);
                        Console.WriteLine("Encoding Date:    {0}", item.EncodingDate);
                        Console.WriteLine("Item Price:       {0}", item.ItemPrice);
                        Console.WriteLine("Remarks:          {0}", item.Remarks);
                    }

                    goto foodsubstart;
                    #endregion

                    //case 5 : Update Food Details Command
                    #region Update Food Details Command
                case "5":

                    var _viewFoodDetailsQuery1 = await Mediator.Send(new ViewFoodDetailsQuery());

                    foreach (var item in _viewFoodDetailsQuery1)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:     {0}", item.ID);
                        Console.WriteLine("Food Name:           {0}", item.Name);
                        Console.WriteLine("Food Code:           {0}", item.Code);
                        Console.WriteLine("Food Specification:  {0}", item.Specification);
                        Console.WriteLine("Food Description:    {0}", item.Description);
                        Console.WriteLine("Food Unit Type:      {0}", item.Unit);
                        Console.WriteLine("Food Type:           {0}", item.FoodType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Food Details ID to update: ");
                    var _updateFoodID         = Console.ReadLine();
                    var _updateSelectedFoodID = int.Parse(_updateFoodID);


                    Console.Write("Food Name: ");
                    var _foodNameUpdate = Console.ReadLine();

                    Console.Write("Food Code: ");
                    var _foodCodeUpdate = Console.ReadLine();

                    Console.Write("Food Specification: ");
                    var _foodSpecificationUpdate = Console.ReadLine();

                    Console.Write("Food Description: ");
                    var _foodDescriptionUpdate = Console.ReadLine();

                    Console.WriteLine("Food Unit: ");
                    Console.WriteLine("1 - Piece");
                    Console.WriteLine("2 - Box");
                    Console.WriteLine("3 - Dozen");
                    Console.WriteLine("4 - Others");
                    Console.Write("Food Unit: ");
                    var      _updateFoodUnit       = Console.ReadLine();
                    UnitType _parsedUpdateFoodUnit = (UnitType)Enum.Parse(typeof(UnitType), _updateFoodUnit);

                    Console.WriteLine("Food Type: ");
                    Console.WriteLine("1 - Perishable");
                    Console.WriteLine("2 - Non-perishable");
                    Console.WriteLine("3 - Others");
                    Console.Write("Food Type: ");
                    var      _updateFoodType       = Console.ReadLine();
                    FoodType _parsedUpdateFoodType = (FoodType)Enum.Parse(typeof(FoodType), _updateFoodType);


                    FoodDetails _foodDetailsUpdate = new FoodDetails
                    {
                        ID            = _updateSelectedFoodID,
                        Code          = _foodCodeUpdate,
                        Name          = _foodNameUpdate,
                        Specification = _foodSpecificationUpdate,
                        Description   = _foodDescriptionUpdate,
                        Unit          = _parsedUpdateFoodUnit,
                        FoodType      = _parsedUpdateFoodType
                    };

                    var _updateFoodDetailsInventoryCommand = await Mediator.Send(new UpdateFoodDetailsCommand { MyFoodDetails = _foodDetailsUpdate });

                    if (_updateFoodDetailsInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details Updated!");
                    }


                    goto foodsubstart;
                    #endregion

                    //case 6 : Update Food Stock Command
                    #region Update Food Stock Command
                case "6":

                    Console.WriteLine();
                    Console.WriteLine("Update Food Stock Inventory");
                    Console.WriteLine();

                    Console.WriteLine();
                    var _viewFoodStockQuery1 = await Mediator.Send(new ViewFoodStockQuery());

                    foreach (var item in _viewFoodStockQuery1)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:  {0}", item.ID);
                        Console.WriteLine("Quantity          {0}", item.Quantity);
                        Console.WriteLine("Encoding Date:    {0}", item.EncodingDate);
                        Console.WriteLine("Item Price:       {0}", item.ItemPrice);
                        Console.WriteLine("Remarks:          {0}", item.Remarks);
                    }


                    Console.Write("Enter Food ID: ");
                    var _updateID  = Console.ReadLine();
                    int _updatedID = int.Parse(_updateID);

                    Console.WriteLine();
                    Console.Write("Enter New Food Stock: ");
                    var _updateStock      = Console.ReadLine();
                    int _updatedFoodStock = int.Parse(_updateStock);


                    var updateFoodStockInventoryCommand = await Mediator.Send(new UpdateFoodStockCommand { SearchedID = _updatedID, NewFoodQuantity = _updatedFoodStock });

                    if (updateFoodStockInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Stock Updated!");
                    }
                    else
                    {
                        Console.WriteLine("Update Failed!");
                    }

                    goto foodsubstart;
                    #endregion

                    //case 7 : Delete Food Details Command
                    #region Delete Food Details Command
                case "7":

                    var _viewFoodDetailsQuery2 = await Mediator.Send(new ViewFoodDetailsQuery());

                    foreach (var item in _viewFoodDetailsQuery2)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:     {0}", item.ID);
                        Console.WriteLine("Food Name:           {0}", item.Name);
                        Console.WriteLine("Food Code:           {0}", item.Code);
                        Console.WriteLine("Food Specification:  {0}", item.Specification);
                        Console.WriteLine("Food Description:    {0}", item.Description);
                        Console.WriteLine("Food Unit Type:      {0}", item.Unit);
                        Console.WriteLine("Food Type:           {0}", item.FoodType);
                    }

                    Console.WriteLine();
                    Console.WriteLine("Enter Food ID Details to delete: ");
                    var _deleteFoodID         = Console.ReadLine();
                    int _deleteSelectedFoodID = int.Parse(_deleteFoodID);

                    try
                    {
                        var _deleteFoodDetailsInventoryCommand = await Mediator.Send(new DeleteFoodDetailsCommand { DeleteSearchedID = _deleteSelectedFoodID });

                        if (_deleteFoodDetailsInventoryCommand == true)
                        {
                            Console.WriteLine("Food Details ID {0} is Deleted!", _deleteSelectedFoodID);
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine();
                        Console.WriteLine(ex.Message);
                    }

                    goto foodsubstart;
                    #endregion


                    //case 8 : Request Food Stock Command
                    #region Request Food Stock Command
                case "8":

                    var _viewFoodDetailsQuery3 = await Mediator.Send(new ViewFoodDetailsQuery());

                    foreach (var item in _viewFoodDetailsQuery3)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Details ID:     {0}", item.ID);
                        Console.WriteLine("Food Name:           {0}", item.Name);
                        Console.WriteLine("Food Code:           {0}", item.Code);
                        Console.WriteLine("Food Specification:  {0}", item.Specification);
                        Console.WriteLine("Food Description:    {0}", item.Description);
                        Console.WriteLine("Food Unit Type:      {0}", item.Unit);
                        Console.WriteLine("Food Type:           {0}", item.FoodType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Food Details ID to restock: ");
                    var _foodIdRestock         = Console.ReadLine();
                    int _selectedFoodIdRestock = int.Parse(_foodIdRestock);

                    Console.Write("Enter Quantity: ");
                    var _foodRestockQuantity       = Console.ReadLine();
                    int _foodRestockQuantityParsed = int.Parse(_foodRestockQuantity);

                    Console.Write("Enter User ID: ");
                    var _foodRestockUserId       = Console.ReadLine();
                    int _foodRestockUserIdParsed = int.Parse(_foodRestockUserId);

                    FoodRestockRequest _foodRestockRequest = new FoodRestockRequest
                    {
                        FoodsDetailsID  = _selectedFoodIdRestock,
                        Quantity        = _foodRestockQuantityParsed,
                        DateTimeRequest = DateTime.Now,
                        Status          = 0,
                        UserID          = _foodRestockUserIdParsed
                    };

                    var _RequestFoodRestockCommand = await Mediator.Send(new RequestFoodRestockCommand { MyFoodRestockRequest = _foodRestockRequest });

                    if (_RequestFoodRestockCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Food Restock Successfully Requested!");
                    }

                    goto foodsubstart;
                    #endregion

                    //case 9 : Search Food by ID Query
                    #region Search Food by ID Command
                case "9":

                    Console.WriteLine();
                    Console.WriteLine("Search Food By ID");
                    Console.Write("Enter ID: ");
                    var _searchID       = Console.ReadLine();
                    int _parsedSearchID = int.Parse(_searchID);


                    var _searchFoodByIdQuery = await Mediator.Send(new SearchFoodByIdQuery { SearchedID = _parsedSearchID });

                    if (_searchFoodByIdQuery != null)
                    {
                        Console.WriteLine("Food Details ID: {0}", _searchFoodByIdQuery.ID);
                        Console.WriteLine("Food Quantity: {0}", _searchFoodByIdQuery.Quantity);
                        Console.WriteLine("Expiration Date: {0}", _searchFoodByIdQuery.ExpirationDate);
                        Console.WriteLine("Food Encoding Date: {0}", _searchFoodByIdQuery.EncodingDate);
                        Console.WriteLine("Food Price: {0}", _searchFoodByIdQuery.ItemPrice);
                        Console.WriteLine("Food Remarks: {0}", _searchFoodByIdQuery.Remarks);
                    }

                    goto foodsubstart;
                    #endregion

                    //case 10 : Search Food by Keyword Query
                    #region Search Food by Keyword Command
                case "10":

                    Console.WriteLine();
                    Console.WriteLine("Enter Keyword: ");
                    var _searchKeyword = Console.ReadLine();

                    var _searchFoodByKeywordQuery = await Mediator.Send(new SearchFoodByKeywordQuery { SearchedKeyword = _searchKeyword });

                    if (_searchFoodByKeywordQuery != null)
                    {
                        foreach (var item in _searchFoodByKeywordQuery)
                        {
                            Console.WriteLine("Searched Keyword: {0}", _searchKeyword);
                            Console.WriteLine("Food Name: {0}   ,   Food Code: {1}", item.Name, item.Code);
                            Console.WriteLine("Food Specification: {0}   ,   Food Description: {1}", item.Specification, item.Description);
                        }
                    }

                    goto foodsubstart;
                    #endregion


                default:
                    break;
                }
                goto start;


            case "2":

                Console.WriteLine();
                Console.WriteLine();
                Console.WriteLine("Equipment Commands");
                Console.WriteLine();
                Console.WriteLine("1 - Add Equipment Details");
                Console.WriteLine("2 - Add Equipment Inventory");
                Console.WriteLine("3 - View Equipment Details");
                Console.WriteLine("4 - View Equipment Stock");
                Console.WriteLine("5 - Update Equipment Details");
                Console.WriteLine("6 - Update Equipment Stock");
                Console.WriteLine("7 - Delete Equipment Details");
                Console.WriteLine("8 - Request Equipment Restock Delivery");
                Console.WriteLine("9 - Search Equipment By ID");
                Console.WriteLine("10 - Search Equipment By Keyword");

equipmentsubstart:
                Console.WriteLine();
                Console.WriteLine();
                Console.Write("Please enter a sub command: ");
                string _subCmdNumberEquipment = Console.ReadLine();

                switch (_subCmdNumberEquipment)
                {
                    //case 1 : Add Equipment Details Command
                    #region  Add Equipment Details Command
                case "1":

                    Console.WriteLine("Add Equipment Stock Details");
                    Console.WriteLine();

                    Console.Write("Equipment Code: ");
                    var _equipmentCode = Console.ReadLine();

                    Console.Write("Equipment Name: ");
                    var _equipmentName = Console.ReadLine();

                    Console.Write("Equipment Description: ");
                    var _equipmentDescription = Console.ReadLine();

                    Console.WriteLine("Equipment Unit Type: ");
                    Console.WriteLine("1 - Piece");
                    Console.WriteLine("2 - Box");
                    Console.WriteLine("3 - Dozen");
                    Console.WriteLine("4 - Others");
                    Console.Write("Equipment Unit: ");
                    var      _equipmentUnit       = Console.ReadLine();
                    UnitType _parsedEquipmentUnit = (UnitType)Enum.Parse(typeof(UnitType), _equipmentUnit);

                    Console.WriteLine("Equipment Type: ");
                    Console.WriteLine("1 - Consumable");
                    Console.WriteLine("2 - Non-consumable");
                    Console.WriteLine("3 - Others");
                    Console.Write("Equipment Type: ");
                    var           _equipmentType       = Console.ReadLine();
                    EquipmentType _parsedEquipmentType = (EquipmentType)Enum.Parse(typeof(EquipmentType), _equipmentType);


                    EquipmentDetails _equipmentDetails = new EquipmentDetails
                    {
                        Code          = _equipmentCode,
                        Name          = _equipmentName,
                        Description   = _equipmentDescription,
                        UnitType      = _parsedEquipmentUnit,
                        EquipmentType = _parsedEquipmentType
                    };

                    var _addEquipmentDetailsCommand = await Mediator.Send(new AddEquipmentDetailsCommand { MyEquipmentDetails = _equipmentDetails });

                    if (_addEquipmentDetailsCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details Added to Inventory!");
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 2 : Add Equipment Inventory Command
                    #region Add Equipment Inventory Command
                case "2":

                    Console.WriteLine();
                    var _viewEquipmentDetails = await Mediator.Send(new ViewEquipmentDetailsQuery());

                    foreach (var item in _viewEquipmentDetails)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:     {0}", item.ID);
                        Console.WriteLine("Equipment Name:           {0}", item.Name);
                        Console.WriteLine("Equipment Code:           {0}", item.Code);
                        Console.WriteLine("Equipment Description:    {0}", item.Description);
                        Console.WriteLine("Equipment Unit Type:      {0}", item.UnitType);
                        Console.WriteLine("Equipment Type:           {0}", item.EquipmentType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Equipment Details ID to add inventory: ");
                    var _addEquipmentDetailsId       = Console.ReadLine();
                    int _addEquipmentDetailsIdParsed = int.Parse(_addEquipmentDetailsId);

                    Console.Write("Enter Quantity: ");
                    var _equipmentQuantity       = Console.ReadLine();
                    int _equipmentQuantityParsed = int.Parse(_equipmentQuantity);

                    Console.Write("Enter Price: ");
                    var     _equipmentPrice       = Console.ReadLine();
                    decimal _equipmentPriceParsed = decimal.Parse(_equipmentPrice);

                    Console.Write("Enter Remarks: ");
                    var _equipmentRemarks = Console.ReadLine();

                    Console.Write("Enter User ID: ");
                    var _equipmentUserId       = Console.ReadLine();
                    int _equipmentUserIdParsed = int.Parse(_equipmentUserId);

                    EquipmentInventory _EquipmentInventory = new EquipmentInventory
                    {
                        Quantity           = _equipmentQuantityParsed,
                        EncodingDate       = DateTime.Now,
                        ItemPrice          = _equipmentPriceParsed,
                        Remarks            = _equipmentRemarks,
                        UserID             = _equipmentUserIdParsed,
                        EquipmentDetailsID = _addEquipmentDetailsIdParsed
                    };

                    var _addEquipmentInventoryCommand = await Mediator.Send(new AddEquipmentInventoryCommand { MyEquipmentInventory = _EquipmentInventory });

                    if (_addEquipmentInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Inventory successfully added!");
                    }
                    else
                    {
                        Console.WriteLine("Failed!");
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 3 : View Equipment Details Query
                    #region View Equipment Details Query
                case "3":

                    var _viewequipmentsubstartDetailsQuery = await Mediator.Send(new ViewEquipmentDetailsQuery());

                    foreach (var item in _viewequipmentsubstartDetailsQuery)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:     {0}", item.ID);
                        Console.WriteLine("Equipment Name:           {0}", item.Name);
                        Console.WriteLine("Equipment Code:           {0}", item.Code);
                        Console.WriteLine("Equipment Description:    {0}", item.Description);
                        Console.WriteLine("Equipment Unit Type:      {0}", item.UnitType);
                        Console.WriteLine("Equipment Type:           {0}", item.EquipmentType);
                    }
                    goto equipmentsubstart;
                    #endregion

                    //case 4 : View Equipment Stock Query
                    #region View Equipment Stock Query
                case "4":

                    Console.WriteLine();
                    var _viewEquipmentStockQuery = await Mediator.Send(new ViewFoodStockQuery());

                    foreach (var item in _viewEquipmentStockQuery)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:   {0}", item.ID);
                        Console.WriteLine("Quantity                {0}", item.Quantity);
                        Console.WriteLine("Encoding Date:          {0}", item.EncodingDate);
                        Console.WriteLine("Item Price:             {0}", item.ItemPrice);
                        Console.WriteLine("Remarks:                {0}", item.Remarks);
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 5 : Update Equipment Details Command
                    #region Update Equipment Details Command
                case "5":

                    var _viewEquipmentDetailsQuery1 = await Mediator.Send(new ViewEquipmentDetailsQuery());

                    foreach (var item in _viewEquipmentDetailsQuery1)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:     {0}", item.ID);
                        Console.WriteLine("Equipment Name:           {0}", item.Name);
                        Console.WriteLine("Equipment Code:           {0}", item.Code);
                        Console.WriteLine("Equipment Description:    {0}", item.Description);
                        Console.WriteLine("Equipment Unit Type:      {0}", item.UnitType);
                        Console.WriteLine("Equipment Type:           {0}", item.EquipmentType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Equipment Details ID to update: ");
                    var _updateEquipmentID         = Console.ReadLine();
                    var _updateSelectedEquipmentID = int.Parse(_updateEquipmentID);


                    Console.Write("Equipment Name: ");
                    var _equipmentNameUpdate = Console.ReadLine();

                    Console.Write("Equipment Code: ");
                    var _equipmentCodeUpdate = Console.ReadLine();

                    Console.Write("Equipment Description: ");
                    var _equipmentDescriptionUpdate = Console.ReadLine();

                    Console.WriteLine("Equipment Unit Type: ");
                    Console.WriteLine("1 - Piece");
                    Console.WriteLine("2 - Box");
                    Console.WriteLine("3 - Dozen");
                    Console.WriteLine("4 - Others");
                    Console.Write("Food Unit: ");
                    var      _updateEquipmentUnit  = Console.ReadLine();
                    UnitType _parsedUpdateFoodUnit = (UnitType)Enum.Parse(typeof(UnitType), _updateEquipmentUnit);

                    Console.WriteLine("Equipment Type: ");
                    Console.WriteLine("1 - Perishable");
                    Console.WriteLine("2 - Non-perishable");
                    Console.WriteLine("3 - Others");
                    Console.Write("Food Type: ");
                    var           _updateEquipmentType       = Console.ReadLine();
                    EquipmentType _parsedUpdateEquipmentType = (EquipmentType)Enum.Parse(typeof(EquipmentType), _updateEquipmentType);


                    EquipmentDetails _equipmentDetailsUpdate = new EquipmentDetails
                    {
                        Code          = _equipmentCodeUpdate,
                        Name          = _equipmentNameUpdate,
                        Description   = _equipmentDescriptionUpdate,
                        UnitType      = _parsedUpdateFoodUnit,
                        EquipmentType = _parsedUpdateEquipmentType
                    };

                    var _updateEquipmentDetailsInventoryCommand = await Mediator.Send(new UpdateEquipmentDetailsCommand { MyEquipmentDetails = _equipmentDetailsUpdate });

                    if (_updateEquipmentDetailsInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details Updated!");
                    }


                    goto equipmentsubstart;
                    #endregion

                    //case 6 : Update Equipment Stock Command
                    #region Update Equipment Stock Command
                case "6":

                    Console.WriteLine();
                    Console.WriteLine("Update Equipment Stock Inventory");
                    Console.WriteLine();

                    Console.WriteLine();
                    var _viewEquipmentStockQuery1 = await Mediator.Send(new ViewFoodStockQuery());

                    foreach (var item in _viewEquipmentStockQuery1)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:  {0}", item.ID);
                        Console.WriteLine("Quantity          {0}", item.Quantity);
                        Console.WriteLine("Encoding Date:    {0}", item.EncodingDate);
                        Console.WriteLine("Item Price:       {0}", item.ItemPrice);
                        Console.WriteLine("Remarks:          {0}", item.Remarks);
                    }


                    Console.Write("Enter Equipment ID: ");
                    var _updateID  = Console.ReadLine();
                    int _updatedID = int.Parse(_updateID);

                    Console.WriteLine();
                    Console.Write("Enter New Equipment Stock: ");
                    var _updateStock           = Console.ReadLine();
                    int _updatedEquipmentStock = int.Parse(_updateStock);


                    var updateEquipmentStockInventoryCommand = await Mediator.Send(new UpdateEquipmentStockCommand { SearchedID = _updatedID, NewEquipmentQuantity = _updatedEquipmentStock });

                    if (updateEquipmentStockInventoryCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Stock Updated!");
                    }
                    else
                    {
                        Console.WriteLine("Update Failed!");
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 7 : Delete Equipment Details Command
                    #region Delete Equipment Details Command
                case "7":

                    var _viewEquipmentDetailsQuery2 = await Mediator.Send(new ViewEquipmentDetailsQuery());

                    foreach (var item in _viewEquipmentDetailsQuery2)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:     {0}", item.ID);
                        Console.WriteLine("Equipment Name:           {0}", item.Name);
                        Console.WriteLine("Equipment Code:           {0}", item.Code);
                        Console.WriteLine("Equipment Description:    {0}", item.Description);
                        Console.WriteLine("Equipment Unit Type:      {0}", item.UnitType);
                        Console.WriteLine("Equipment Type:           {0}", item.EquipmentType);
                    }

                    Console.WriteLine();
                    Console.WriteLine("Enter Equipment ID Details to delete: ");
                    var _deleteEquipmentID         = Console.ReadLine();
                    int _deleteSelectedEquipmentID = int.Parse(_deleteEquipmentID);

                    try
                    {
                        var _deleteEquipmentDetailsInventoryCommand = await Mediator.Send(new DeleteEquipmentDetailsCommand { DeleteSearchedID = _deleteSelectedEquipmentID });

                        if (_deleteEquipmentDetailsInventoryCommand == true)
                        {
                            Console.WriteLine("Equipment Details ID {0} is Deleted!", _deleteSelectedEquipmentID);
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine();
                        Console.WriteLine(ex.Message);
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 8 : Request Equipment Stock Command
                    #region Request Equipment Stock Command
                case "8":

                    var _viewEquipmentDetailsQuery3 = await Mediator.Send(new ViewEquipmentDetailsQuery());

                    foreach (var item in _viewEquipmentDetailsQuery3)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Details ID:     {0}", item.ID);
                        Console.WriteLine("Equipment Name:           {0}", item.Name);
                        Console.WriteLine("Equipment Code:           {0}", item.Code);
                        Console.WriteLine("Equipment Description:    {0}", item.Description);
                        Console.WriteLine("Equipment Unit Type:      {0}", item.UnitType);
                        Console.WriteLine("Equipment Type:           {0}", item.EquipmentType);
                    }

                    Console.WriteLine();
                    Console.Write("Enter Equipment Details ID to restock: ");
                    var _equipmentIdRestock         = Console.ReadLine();
                    int _selectedEquipmentIdRestock = int.Parse(_equipmentIdRestock);

                    Console.Write("Enter Quantity: ");
                    var _equipmentRestockQuantity       = Console.ReadLine();
                    int _equipmentRestockQuantityParsed = int.Parse(_equipmentRestockQuantity);

                    Console.Write("Enter User ID: ");
                    var _equipmentRestockUserId       = Console.ReadLine();
                    int _equipmentRestockUserIdParsed = int.Parse(_equipmentRestockUserId);

                    EquipmentRestockRequest _equipmentRestockRequest = new EquipmentRestockRequest
                    {
                        Quantity           = _equipmentRestockQuantityParsed,
                        DateTimeRequest    = DateTime.Now,
                        EquipmentDetailsID = _selectedEquipmentIdRestock,
                        Status             = 0,
                        UserID             = _equipmentRestockUserIdParsed
                    };

                    var _RequestEquipmentRestockCommand = await Mediator.Send(new RequestEquipmentRestockCommand { MyEquipmentRestockRequest = _equipmentRestockRequest });

                    if (_RequestEquipmentRestockCommand == true)
                    {
                        Console.WriteLine();
                        Console.WriteLine("Equipment Restock Successfully Requested!");
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 9 : Search Equipment by ID Query
                    #region Search Equipment by ID Command
                case "9":

                    Console.WriteLine();
                    Console.WriteLine("Search Equipment By ID");
                    Console.Write("Enter ID: ");
                    var _searchID       = Console.ReadLine();
                    int _parsedSearchID = int.Parse(_searchID);


                    var _searchEquipmentByIdQuery = await Mediator.Send(new SearchEquipmentByIdQuery { SearchedID = _parsedSearchID });

                    if (_searchEquipmentByIdQuery != null)
                    {
                        Console.WriteLine("Equipment Details ID: {0}", _searchEquipmentByIdQuery.ID);
                        Console.WriteLine("Equipment Quantity: {0}", _searchEquipmentByIdQuery.Quantity);
                        Console.WriteLine("Equipment Encoding Date: {0}", _searchEquipmentByIdQuery.EncodingDate);
                        Console.WriteLine("Equipmemt Price: {0}", _searchEquipmentByIdQuery.ItemPrice);
                        Console.WriteLine("Equipment Remarks: {0}", _searchEquipmentByIdQuery.Remarks);
                    }

                    goto equipmentsubstart;
                    #endregion

                    //case 10 : Search Equipment by Keyword Query
                    #region Search Equipment by Keyword Command
                case "10":

                    Console.WriteLine();
                    Console.WriteLine("Enter Keyword: ");
                    var _searchKeyword = Console.ReadLine();

                    var _searchEquipmentByKeywordQuery = await Mediator.Send(new SearchEquipmentByKeywordQuery { SearchedKeyword = _searchKeyword });

                    if (_searchEquipmentByKeywordQuery != null)
                    {
                        foreach (var item in _searchEquipmentByKeywordQuery)
                        {
                            Console.WriteLine("Searched Keyword: {0}", _searchKeyword);
                            Console.WriteLine("Equipment Name: {0}   ,   Food Code: {1}", item.Name, item.Code);
                            Console.WriteLine("Equipment Description: {0}", item.Description);
                        }
                    }

                    goto equipmentsubstart;
                    #endregion


                default:
                    break;
                }

                goto start;

            default:
                break;
            }
        }
示例#22
0
        public FoodDetails getFoodDetails(string keyFood)
        {
            //send request for list of foods that it's key is the string keyFood parameter
            WebRequest request = WebRequest.Create(" https://api.nal.usda.gov/ndb/V2/reports?ndbno=" + keyFood + "&type=b&format=xml&api_key=xjkHskmKWXGFzYR2O2czyY5jWhmeaD7puagyHI5L");

            request.Method = "GET";
            WebResponse  response   = request.GetResponse();
            Stream       dataStream = response.GetResponseStream();
            StreamReader sReader    = new StreamReader(dataStream);
            string       output     = sReader.ReadToEnd();

            //xml
            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.LoadXml(output);
            //make a foodDetails object tat contain the relevant details.
            XmlNodeList nutrientsList = xmlDoc.SelectNodes("/foods/food/nutrients/nutrient");
            XmlNodeList stamList;
            FoodDetails foodDetails = new FoodDetails();

            /*foodDetails.Water = float.Parse(nutrientsList[0]["value"].InnerText);
             *  foodDetails.Calories = float.Parse(nutrientsList[1]["value"].InnerText);
             *  foodDetails.Protien = float.Parse(nutrientsList[2]["value"].InnerText);
             *  foodDetails.Fats = float.Parse(nutrientsList[3]["value"].InnerText);
             *  foodDetails.Carbohydrate = float.Parse(nutrientsList[4]["value"].InnerText);
             *  foodDetails.Fiber = float.Parse(nutrientsList[5]["value"].InnerText);
             *  foodDetails.Sugars = float.Parse(nutrientsList[6]["value"].InnerText);
             *  foodDetails.Sodium = float.Parse(nutrientsList[12]["value"].InnerText);
             *  float vitamins = 0;
             *  for (int i = 14; i < 27; i++)
             *      vitamins += float.Parse(nutrientsList[i]["value"].InnerText);*/
            float  vitamins = 0;
            string name     = "";
            string value    = "";

            for (int i = 0; i < nutrientsList.Count; i++)
            {
                foreach (var item in (nutrientsList[i]).Attributes)
                {
                    if ((((XmlAttribute)item).Name).Equals("name"))
                    {
                        name = (((XmlAttribute)item).Value);
                    }
                    else if ((((XmlAttribute)item).Name).Equals("value"))
                    {
                        value = (((XmlAttribute)item).Value);
                    }
                    else if ((((XmlAttribute)item).Name).Equals("group") && (((XmlAttribute)item).Value).Equals("Vitamins"))
                    {
                        name = "Vitamins";
                    }
                }
                switch (name)
                {
                case "Energy":
                    foodDetails.Calories = float.Parse(value);
                    break;

                case "Water":
                    foodDetails.Water = float.Parse(value);
                    break;

                case "Sodium, Na":
                    foodDetails.Sodium = float.Parse(value);
                    break;

                case "Protein":
                    foodDetails.Protien = float.Parse(value);
                    break;

                case "Total lipid (fat)":
                    foodDetails.Fats = float.Parse(value);
                    break;

                case "Fiber, total dietary":
                    foodDetails.Fiber = float.Parse(value);
                    break;

                case "Carbohydrate, by difference":
                    foodDetails.Carbohydrate = float.Parse(value);
                    break;

                case "Sugars, total":
                    foodDetails.Sugars = float.Parse(value);
                    break;

                case "Vitamins":
                    vitamins += float.Parse(value);
                    break;

                default:
                    break;
                }
            }


            //}

            /* if ((nutrientsList[i]["name"].InnerText).Equals("Energy"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Protien"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Total lipid (fat)"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Carbohydrate, by difference"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Fiber, total dietary"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Sugars, total"))
             * {
             *
             * }
             * else if ((nutrientsList[i]["name"].InnerText).Equals("Sodium, Na"))
             * {
             * }
             * else
             * {
             *   if(nutrientsList[i]["name"].InnerText.Contains("Vitamin"))
             *   {
             *       vitamins += float.Parse(nutrientsList[i]["value"].InnerText);
             *   }
             * }
             * }*/
            foodDetails.Vitamins = vitamins;
            return(foodDetails);
        }
示例#23
0
    private void FetchFoodDetails()
    {
        var rawData = Resources.Load <TextAsset>("foodlist");

        availableFoods = JsonUtility.FromJson <FoodDetails>(rawData.ToString());
    }