Пример #1
0
        public MenuProductTemperal CreateMenuProductTemperal(decimal price, DateTime date)
        {
            var mpt = FetchMPT(price, date);

            if (MenuProductTemperals.Contains(mpt))
            {
                throw new Exception("Existed");
            }
            mpt = new MenuProductTemperal(this.Id, price, date);
            MenuProductTemperals.Add(mpt);
            return(mpt);
        }
Пример #2
0
        public decimal FetchPrice(DateTime date)
        {
            decimal price = ProductDescription.BasePrice;

            foreach (var mpt in MenuProductTemperals.OrderByDescending(mpt => mpt.EffectiveFrom))
            {
                if (date >= mpt.EffectiveFrom)
                {
                    price = mpt.Price;
                }
                break;
            }
            return(price);
        }
Пример #3
0
 public MenuProductTemperal FetchMPT(decimal price, DateTime date)
 {
     return(MenuProductTemperals.Where(mpt => mpt.Price == price && mpt.EffectiveFrom.Equals(date)).First());
 }