Example #1
0
        public static bool Equals(ShoppingCartItem?left, ShoppingCartItem?right)
        {
            bool result = ArticleId.Equals(left?.ArticleId, right?.ArticleId);

            result &= (result ? EqualityComparer <int?> .Default.Equals(left?.OrderedQuantity, right?.OrderedQuantity) : false);
            result &= (result ? EqualityComparer <int?> .Default.Equals(left?.DispensedQuantity, right?.DispensedQuantity) : false);
            result &= (result ? EqualityComparer <int?> .Default.Equals(left?.PaidQuantity, right?.PaidQuantity) : false);
            result &= (result ? EqualityComparer <decimal?> .Default.Equals(left?.Price, right?.Price) : false);
            result &= (result ? Iso4217Code.Equals(left?.Currency, right?.Currency) : false);

            return(result);
        }
Example #2
0
        public ShoppingCartItem(ArticleId articleId,
                                int orderedQuantity,
                                int dispensedQuantity,
                                int paidQuantity,
                                decimal price,
                                Iso4217Code currency)
        {
            orderedQuantity.ThrowIfNegative();
            dispensedQuantity.ThrowIfNegative();
            paidQuantity.ThrowIfNegative();
            price.ThrowIfNotPositive();

            this.ArticleId         = articleId;
            this.OrderedQuantity   = orderedQuantity;
            this.DispensedQuantity = dispensedQuantity;
            this.PaidQuantity      = paidQuantity;
            this.Price             = price;
            this.Currency          = currency;
        }