Пример #1
0
        public Result Buy(Guid userId, Guid productId, int quantity)
        {
            var cartItem = _userBuyProductDomainService.UserBuyProduct(userId, productId, quantity);
            var cart     = _getUserCartDomainService.GetUserCart(userId);

            cart.AddCartItem(cartItem);
            DomainRegistry.CartRepository().Save(cart);
            return(Result.Success());
        }
Пример #2
0
        public Result DeleteCartItem(string userId, string id)
        {
            var cart = _confirmUserCartExistedDomainService.GetUserCart(userId);

            if (cart.IsEmpty())
            {
                return(Result.Fail("当前购物车中并没有商品"));
            }

            cart.RemoveCartItem(id);
            DomainRegistry.CartRepository().Save(cart);
            return(Result.Success());
        }
Пример #3
0
        public Result Buy(string userId, string productId, int quantity)
        {
            var product = DomainRegistry.ProductService().GetProduct(productId);

            if (product == null)
            {
                return(Result.Fail("对不起,未能获取产品信息请重试~"));
            }

            var cart = _confirmUserCartExistedDomainService.GetUserCart(userId);

            cart.AddCartItem(productId, quantity, product.SalePrice);
            DomainRegistry.CartRepository().Save(cart);
            return(Result.Success());
        }
Пример #4
0
        public Result ChangeMultiProductsPromotion(string userId, string productId, string selectedMultiProductsPromotionId)
        {
            var cart = _confirmUserCartExistedDomainService.GetUserCart(userId);

            if (cart.IsEmpty())
            {
                return(Result.Fail("当前购物车中并没有商品"));
            }

            var cartItem = cart.GetCartItem(productId);

            if (cartItem == null)
            {
                return(Result.Fail("该购物项已不存在"));
            }

            cartItem.ChangeMultiProductsPromotion(selectedMultiProductsPromotionId);
            DomainRegistry.CartRepository().Save(cart);
            return(Result.Success());
        }
Пример #5
0
        public Result ChangeQuantity(string userId, string id, int quantity)
        {
            var cart = _confirmUserCartExistedDomainService.GetUserCart(userId);

            if (cart.IsEmpty())
            {
                return(Result.Fail("当前购物车中并没有商品"));
            }

            var cartItem = cart.GetCartItem(id);

            if (cartItem == null)
            {
                return(Result.Fail("该购物项已不存在"));
            }

            cartItem.ModifyQuantity(quantity);
            DomainRegistry.CartRepository().Save(cart);
            return(Result.Success());
        }