public void ChangeOrderItemCountValue(OrderItemDataTransferObject orderItem, int itemCountNewValue)
        {
            int indexOforderItem = ShopCart.FindIndex(oi => oi.ItemID.Equals(orderItem.ItemID));

            if (indexOforderItem == -1)
            {
                throw new NoFoundOrderItemException("Такого элемента заказа не найдено!");
            }
            ShopCart[indexOforderItem].ItemsCount = itemCountNewValue;
            if (itemCountNewValue == 0)
            {
                DeleteOrderItemFromShopCart(indexOforderItem);
            }
        }
        public OrderItemDataTransferObject AddOrderItemInCart(OrderItemDataTransferObject orderItem)
        {
            var item = _database.Items.GetItem(orderItem.ItemID);

            orderItem.Item = new ItemDataTransferObject
            {
                Id       = orderItem.ItemID,
                Name     = item.Name,
                Code     = item.Code,
                Price    = (double)item.Price,
                Category = item.Category
            };
            orderItem.ItemPrice = orderItem.Item.Price;
            ShopCart.Add(orderItem);
            return(orderItem);
        }
예제 #3
0
        public IActionResult ChangeOrderItemItemsCountFromShopCart([FromBody] OrderItemModel order,
                                                                   int newItemsCountValue)
        {
            var findOrderItem = new OrderItemDataTransferObject
            {
                ItemID = order.Item.Id,
                Item   = new ItemDataTransferObject
                {
                    Id       = order.Item.Id,
                    Name     = order.Item.Name,
                    Code     = order.Item.Code,
                    Price    = order.Item.Price,
                    Category = order.Item.Category
                },
                ItemPrice  = order.ItemPrice,
                ItemsCount = order.ItemsCount
            };

            findOrderItem.ItemPrice = findOrderItem.Item.Price;
            _shopCart.ChangeOrderItemCountValue(findOrderItem, newItemsCountValue);
            return(NoContent());
        }