Ejemplo n.º 1
0
        public double GetPriceReduction()
        {
            if (_reductionList == null)
            {
                Console.WriteLine("Getting PriceReductions as it is null");
                _reductionList = _priceReductions.Find(priceReductions => true).ToList();
            }
            int             dayOfWeek = (int)DateTime.Today.DayOfWeek + 1;
            PriceReductions reduction = _reductionList.Where(priceReduction => priceReduction.DayOfWeek == dayOfWeek).FirstOrDefault();

            return(reduction.Reduction);
        }
        public ProductDetailsResponse GetProductDetails(string id)
        {
            //Initialize();
            var             productDetailsResponse = new ProductDetailsResponse();
            var             collection             = iMongoDb.GetCollection <Products>(_productsCollection);
            ObjectId        internalId             = GetInternalId(id);
            PriceReductions PriceReduction         = GetPriceDeduction();

            var item = collection?.Find(Builders <Products> .Filter.Eq("_id", internalId))?.FirstOrDefault();

            if (item != null)
            {
                productDetailsResponse.Product = new Product
                {
                    Id                 = item.id.ToString(),
                    Name               = item.Name,
                    EntryDate          = item.EntryDate,
                    PriceWithDeduction = item.Price - Convert.ToDouble(PriceReduction?.Reduction)
                };
            }
            return(productDetailsResponse);
        }