Пример #1
0
 public Meal(string name, List <Allergens> allergens, Countries country, MealTypes mealType)
 {
     Name      = name;
     Allergens = allergens;
     Country   = country;
     MealType  = mealType;
 }
Пример #2
0
        public Food GetFoodByGroup(MealTypes mainType, int foodGroup)
        {
            using (var session = NHibernateManager.OpenSession())
            {
                if (MealTypesList == null)
                {
                    MealTypesList = session.CreateCriteria <Mealtype>().List <Mealtype>();
                }

                Mealtype currMealType = MealTypesList.Where(x => x.Id == (int)mainType).First();

                if (FoodGroupList == null)
                {
                    FoodGroupList = session.CreateCriteria <Foodgroup>().List <Foodgroup>();
                }

                Foodgroup    currFoodType = FoodGroupList.Where(x => x.Id == foodGroup).First();
                IList <Food> foodList     = session.CreateCriteria <Food>()
                                            .Add(Expression.Or(Expression.Eq("MealType", currMealType),
                                                               Expression.Eq("MealType", MealTypesList.Where(x => x.Id == (int)MealTypes.Everything).First())))
                                            .Add(Expression.Eq("FoodGroup", currFoodType))
                                            .List <Food>();

                Random Rand = new Random();

                int ChosenIndex = Rand.Next(0, foodList.Count - 1);

                return(foodList[ChosenIndex]);
            }
        }
Пример #3
0
        public async Task <IActionResult> PutMealTypes(string id, MealTypes mealTypes)
        {
            if (id != mealTypes.MealTypeId)
            {
                return(BadRequest());
            }

            _context.Entry(mealTypes).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!MealTypesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Пример #4
0
        public static MealTypes Map(MealTypesViewModel mealTypes)
        {
            var result = new MealTypes();

            if (mealTypes == null)
            {
                return(result);
            }
            if (mealTypes.MealTypes != null && mealTypes.MealTypes.Any())
            {
                result.MealTypeDescriptions = mealTypes.MealTypes.Select(c => new MealTypeDescription {
                    Description = c.Description, MarketBasePrice = c.MarketBasePrice, Number = c.Number, OperationalCost = c.OperationalCost
                }).ToList();
            }
            else
            {
                result.MealTypeDescriptions.Add(new MealTypeDescription {
                    MarketBasePrice = 0, OperationalCost = 0, Number = (int)MealTypeEnum.OB
                });
            }
            result.UseInDynamicCalculation = mealTypes.UseInDynamicCalculation;
            result.PriceConstraints        = PriceConstraint.Map(mealTypes.PriceConstraints);
            result.Total = result.MealTypeDescriptions.Count();
            return(result);
        }
Пример #5
0
        public MealModel(string webPage, MealTypes type)
        {
            this._Type    = type;
            this._Content = "";
            string[] cleanList = webPage.Split(new Char[] { '\n' });
            for (int i = 0; i < cleanList.Length; i++)
            {
                string partial = cleanList[i].Trim();
                if (partial.Length > 0)
                {
                    this._Content += partial + "\n";
                }
            }
            switch (type)
            {
            case MealTypes.Lunch:
                this._Title = "Almoço";
                break;

            case MealTypes.VegLunch:
                this._Title = "Almoço Vegetariano";
                break;

            default:
                this._Title = "Jantar";
                break;
            }
        }
Пример #6
0
        public async Task <IHttpActionResult> PutMealTypes(int id, MealTypes mealTypes)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != mealTypes.ID)
            {
                return(BadRequest());
            }

            db.Entry(mealTypes).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!MealTypesExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #7
0
        public static readonly ILog log = LogManager.GetLogger(typeof(Cook)); // Log4net Manager for current class

        #endregion

        #region Constructor

        /// <summary>
        ///     Initializes a new instance of the <see cref="Cook" /> class.
        /// </summary>
        /// <param name="mealType">Type of the meal.</param>
        /// <param name="cookingTime">The cooking time.</param>
        public Cook(MealTypes mealType, int cookingTime) : base(String.Format("{0} cook", mealType))
        {
            _mealCount    = Constants.InitialMealCount;
            _maxMealCount = Constants.MaxMealCount;
            _grabMealTime = Constants.MealGrabTimeMs;
            MealType      = mealType;
            _cookingTime  = cookingTime;
        }
Пример #8
0
 /// <summary>
 ///     Initializes a new instance of the <see cref="Cook" /> class.
 /// </summary>
 /// <param name="mealType">Type of the meal.</param>
 /// <param name="cookingTime">The cooking time.</param>
 public Cook(MealTypes mealType, int cookingTime)
     : base(String.Format("{0} cook", mealType))
 {
     _mealCount = Constants.InitialMealCount;
     _maxMealCount = Constants.MaxMealCount;
     _grabMealTime = Constants.MealGrabTimeMs;
     MealType = mealType;
     _cookingTime = cookingTime;
 }
Пример #9
0
        public async Task <IHttpActionResult> GetMealTypes(int id)
        {
            MealTypes mealTypes = await db.MealTypes.FindAsync(id);

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

            return(Ok(mealTypes));
        }
Пример #10
0
        public async Task <IHttpActionResult> PostMealTypes(MealTypes mealTypes)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.MealTypes.Add(mealTypes);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = mealTypes.ID }, mealTypes));
        }
Пример #11
0
        public Meal(MealTypes MainType, int[] foodGroupId)
        {
            Food currFood;

            FoodsList = new List <Food>();
            Type      = MainType;

            for (int i = 0; i < foodGroupId.Length; i++)
            {
                currFood = EntitiesManager.getInstance().GetFoodByGroup(MainType, foodGroupId[i]);
                FoodsList.Add(currFood);
            }
        }
Пример #12
0
        public Meal(int NumOfFoods, MealTypes MainType, List <Food> List = null)
        {
            if (List == null)
            {
                FoodsList = EntitiesManager.getInstance().GetFoods(NumOfFoods, MainType);
            }
            else
            {
                FoodsList = List;
            }

            Type = MainType;
        }
Пример #13
0
        public List <Food> GetFoods(int NumOfFoods, MealTypes mainType)
        {
            using (var session = NHibernateManager.OpenSession())
            {
                List <Food> result = new List <Food>();

                if (MealTypesList == null)
                {
                    MealTypesList = session.CreateCriteria <Mealtype>().List <Mealtype>();
                }

                Mealtype     currMealType = MealTypesList.Where(x => x.Id == (int)mainType).First();
                IList <Food> foodList;

                if (!FoodsByMeal.ContainsKey(currMealType))
                {
                    if (mainType == MealTypes.Snack)
                    {
                        foodList = session.CreateCriteria <Food>()
                                   .Add(Expression.Eq("MealType", currMealType))
                                   .List <Food>();
                    }
                    else
                    {
                        foodList = session.CreateCriteria <Food>()
                                   .Add(Expression.Or(Expression.Eq("MealType", currMealType),
                                                      Expression.Eq("MealType", MealTypesList.Where(x => x.Id == (int)MealTypes.Everything).First())))
                                   .List <Food>();
                    }

                    FoodsByMeal[currMealType] = foodList;
                }
                else
                {
                    foodList = FoodsByMeal[currMealType];
                }


                if (foodList.Count > 0)
                {
                    for (int i = 0; i < NumOfFoods; i++)
                    {
                        int ChosenIndex = Rand.Next(0, foodList.Count - 1);

                        result.Add(foodList[ChosenIndex]);
                    }
                }

                return(result);
            }
        }
Пример #14
0
        public async Task <IHttpActionResult> DeleteMealTypes(int id)
        {
            MealTypes mealTypes = await db.MealTypes.FindAsync(id);

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

            db.MealTypes.Remove(mealTypes);
            await db.SaveChangesAsync();

            return(Ok(mealTypes));
        }
Пример #15
0
        public static MealTypesViewModel Map(MealTypes mealTypes)
        {
            var result = new MealTypesViewModel();

            if (mealTypes == null)
            {
                return(result);
            }
            result.UseInDynamicCalculation = mealTypes.UseInDynamicCalculation;
            if (mealTypes.MealTypeDescriptions != null && mealTypes.MealTypeDescriptions.Any())
            {
                result.MealTypes = mealTypes.MealTypeDescriptions.Select(c => new MealTypeViewModel {
                    Description = c.Description, MarketBasePrice = c.MarketBasePrice, Number = c.Number, OperationalCost = c.OperationalCost
                }).ToList();
            }

            result.PriceConstraints = PriceConstraint.Map(mealTypes.PriceConstraints);
            return(result);
        }
Пример #16
0
        public async Task <ActionResult <MealTypes> > PostMealTypes(MealTypes mealTypes)
        {
            _context.MealTypes.Add(mealTypes);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (MealTypesExists(mealTypes.MealTypeId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetMealTypes", new { id = mealTypes.MealTypeId }, mealTypes));
        }
Пример #17
0
 public MealModel(string titulo, string conteudo, MealTypes type = MealTypes.Lunch)
 {
     this._Title   = titulo;
     this._Content = conteudo;
     this._Type    = type;
 }
        public List <Day> BindWeeklyGlance(List <hccProgramDefaultMenu> defaultMenuSelections, int numDaysPerWeek, int cartItemId)
        {
            StringBuilder      sb    = new StringBuilder();
            List <hccMenuItem> lstMI = new List <hccMenuItem>();
            Day       d  = new Day();
            MealTypes mT = new MealTypes();

            string currentMealType = "";
            int    i, currentDay = 1;

            for (i = 1; i <= numDaysPerWeek; i++)
            {
                int lastTypeId = 0;

                defaultMenuSelections.Where(a => a.DayNumber == i)
                .OrderBy(a => a.MealTypeID).ToList().ForEach(delegate(hccProgramDefaultMenu defaultSelection)
                {
                    int menuItemId     = defaultSelection.MenuItemID;
                    int menuItemSizeId = defaultSelection.MenuItemSizeID;

                    hccCartItemCalendar cartCal = hccCartItemCalendar.GetBy(cartItemId, CurrentCalendarId);

                    hccCartDefaultMenuException menuItemExc
                        = hccCartDefaultMenuException.GetBy(defaultSelection.DefaultMenuID, cartCal.CartCalendarID);

                    if (menuItemExc != null)
                    {
                        menuItemId     = menuItemExc.MenuItemID;
                        menuItemSizeId = menuItemExc.MenuItemSizeID;

                        List <hccCartDefaultMenuExPref> prefs = hccCartDefaultMenuExPref.GetBy(menuItemExc.DefaultMenuExceptID);
                    }
                    if (menuItemId > 0)
                    {
                        hccMenuItem menuItem = hccMenuItem.GetById(menuItemId);

                        //if (defaultSelection.MealTypeID != lastTypeId)
                        //{
                        lastTypeId = defaultSelection.MealTypeID;

                        if (((Enums.MealTypes)lastTypeId).ToString().ToLower().Contains("breakfast"))
                        {
                            currentMealType = "breakfast";
                        }
                        else if (((Enums.MealTypes)lastTypeId).ToString().ToLower().Contains("lunch"))
                        {
                            currentMealType = "lunch";
                        }
                        else if (((Enums.MealTypes)lastTypeId).ToString().ToLower().Contains("dinner"))
                        {
                            currentMealType = "dinner";
                        }
                        else if (((Enums.MealTypes)lastTypeId).ToString().ToLower().Contains("dessert"))
                        {
                            currentMealType = "dessert";
                        }
                        else if (((Enums.MealTypes)lastTypeId).ToString().ToLower().Contains("snack"))
                        {
                            currentMealType = "snack";
                        }

                        if (mT.MealType != currentMealType && mT.MealType != null)
                        {
                            if (sb.ToString().EndsWith(",<br />") == true)
                            {
                                mT.MealInfo = sb.ToString().Substring(0, sb.ToString().Length - 7);
                            }
                            //mT.MealInfo = sb.ToString().Trim().TrimEnd(',');

                            d.MealTypes.Add(mT);

                            mT = new MealTypes();
                            sb = new StringBuilder();
                        }

                        mT.MealType = currentMealType;

                        if (menuItem != null)
                        {
                            sb.Append(menuItem.Name);
                            sb.Append(",<br />");
                        }

                        /*if (((Enums.CartItemSize)menuItemSizeId) != Enums.CartItemSize.NoSize)
                         * {
                         *  sb.Append(" - " + Enums.GetEnumDescription(((Enums.CartItemSize)menuItemSizeId)));
                         *  sb.Append(", ");
                         * } */
                        if (currentDay != defaultSelection.DayNumber)         // only create a new day when daynumber changes
                        {
                            sb.ToString().Trim().TrimEnd(',');
                            d.DayTitle = currentDay.ToString();
                            //d.DayTitle = "Day: " + currentDay.ToString();
                            d.DayNumber = currentDay;
                            days.Add(d);
                            d          = new Day();
                            currentDay = defaultSelection.DayNumber;
                        }
                        //}
                        menuItemId = 0;
                    }
                });
            }
            if (sb.ToString().EndsWith(",<br />") == true)
            {
                mT.MealInfo = sb.ToString().Substring(0, sb.ToString().Length - 7);
            }
            //mT.MealInfo = sb.ToString().Trim().TrimEnd(',');
            d.MealTypes.Add(mT);
            d.DayTitle = currentDay.ToString();
            //d.DayTitle = "Day: " + currentDay.ToString();
            d.DayNumber = currentDay;
            days.Add(d);

            return(days);
        }
 public Meal GetMealByType(MealTypes mealType)
 {
     return(_context.Meals.Where(m => m.MealType.Equals(mealType))
            .OrderBy(m => Guid.NewGuid())
            .FirstOrDefault());
 }
Пример #20
0
 public static DeliveryTypes GetDefaultDeliveryTypeOfMealType(this MealTypes mealType)
 {
     return(DeliveryTypeOfMealTypes[mealType]);
 }