예제 #1
0
        public IActionResult GetMenu(int weekNumber, int dayOfWeek)
        {
            try
            {
                var data = _baseRepo.GetAll <Menu>(x => x.Include(y => y.MenuDetails).ThenInclude(d => d.Product)
                                                   .Include(y => y.MenuDetails).ThenInclude(d => d.Unit)
                                                   , y => y.Active == true && y.WeekNumber == weekNumber && y.DayOfWeek == (DayOfWeek)dayOfWeek).ToList().GroupBy(x => x.WeekNumber).ToList();
                var result = new List <WeekMenuModel>();
                data.ForEach(d =>
                {
                    WeekMenuModel model = new WeekMenuModel()
                    {
                        WeekNumber = d.Key,
                        Days       = d.GroupBy(x => x.DayOfWeek).ToList().Select(x => new DayMenuModel()
                        {
                            DayOfWeek   = x.Key,
                            MenuDetails = d.Select(j => j.MenuDetails).SelectMany(r => r).ToList()
                        }).ToList()
                    };
                    result.Add(model);
                });

                return(Ok(new { Id = 0, Status = 0, data = result }));
            }

            catch (Exception ex)
            {
                return(Ok(new { status = -1, message = ex.Message }));
            }
        }
예제 #2
0
        public ActionResult MenuCalendar(int id = 0)
        {
            ViewBag.Index = id;

            var model          = new WeekMenuModel();
            var date           = DateTime.Today.AddDays(id * 7);
            var menuBiz        = new MenuBiz();
            var foodBiz        = new FoodBiz();
            var menus          = menuBiz.GetWeekMenu(date);
            var primaryFoods   = foodBiz.GetPrimaryFoods();
            var secondaryFoods = foodBiz.GetSecondaryFoods();

            model.Menus          = menus;
            model.PrimaryFoods   = primaryFoods;
            model.SecondaryFoods = secondaryFoods;

            return(View(model));
        }