public InventoryItem PostInventoryItem(AddInventoryItemDto itemDto)
        {
            ItemImage img  = inventoryRepository.GetItemImage(itemDto.ItemImageId);
            ItemType  type = inventoryRepository.GetItemType(itemDto.ItemTypeId);


            /*
             * Check if item already exists in Inventory
             * Update amount if so.
             */
            InventoryItem existingItem = this.inventoryRepository.GetInventoryItemByColor(img);

            if (existingItem != null)
            {
                Console.WriteLine("Existing item was found, we're going to update its amount");
                var updateItem = new UpdateInventoryItemDto(
                    existingItem.ItemImage.ItemImageId,
                    existingItem.ItemType.ItemTypeId,
                    existingItem.Amount + itemDto.Amount
                    );

                return(this.UpdateInventoryItem(updateItem, existingItem.InventoryItemId));
            }
            else
            {
                Console.WriteLine("Existing item was not found, we're creating a new one");
            }


            InventoryItem item = new InventoryItem(itemDto.AuthId, img, type, itemDto.Amount);

            return(this.inventoryRepository.PostInventoryItem(item));
        }
Exemple #2
0
 public async Task <IActionResult> AddInventoryItem(AddInventoryItemDto newInventoryItem)
 {
     return(Ok(await _inventoryItemService.AddInventoryItem(newInventoryItem)));
 }
Exemple #3
0
 public InventoryItem PostInventoryItem([FromBody] AddInventoryItemDto item)
 {
     return(this.inventoryService.PostInventoryItem(item));
 }