Пример #1
0
 public void AddDevelopment(string productName, Product.Claim claim)
 {
     if (Products.Any(prod => prod.Name == productName))
     {
         UpdateProduct(productName, claim);
     }
     else
     {
         AddProduct(productName, claim);
     }
 }
Пример #2
0
        private Dictionary<int, List<Product.Claim>> GroupClaimsByOriginYear(Product product)
        {
            var claimsByOriginYear = product.Claims
                    .GroupBy(prod => prod.OriginYear)
                    .ToDictionary(group => group.Key, group => group.ToList());

            // Generate missing years
            for (int originYear = EarliestOriginYear; originYear < LatestDevelopmentYear; originYear++)
            {
                bool hasClaimsForYear = claimsByOriginYear.Any(group => group.Key == originYear);

                if (!hasClaimsForYear)
                {
                    claimsByOriginYear.Add(originYear, new List<Product.Claim>());
                }
            }

            return claimsByOriginYear;
        }
Пример #3
0
 private void UpdateProduct(string productName, Product.Claim claim)
 {
     var product = Products.Single(prod => prod.Name == productName);
     product.Claims.Add(claim);
 }
Пример #4
0
        private void AddProduct(string productName, Product.Claim claim)
        {
            var product = new Product(productName);
            product.Claims.Add(claim);

            Products.Add(product);
        }