예제 #1
0
        public override int AddNewItem(Book book)
        {
            var itemInput    = new GetItemByIdInput();
            var barcodeInput = new SetItemBarcodeInput();
            var updateInput  = new UpdateItemInput();

            var input = new AddNewBookInput
            {
                Book = new BookDto(book)
            };

            using (var repo = new BookRepository())
            {
                var app = new BookAppService(repo);
                itemInput.Id = app.AddNewBook(input).Id;
            }
            using (var itemRepo = new ItemRepository())
            {
                var app      = new ItemAppService(itemRepo);
                var thisItem = app.GetItemById(itemInput);
                barcodeInput.Item = thisItem.Item;
                var barcodeOutput = app.SetItemBarcode(barcodeInput);
                thisItem.Item.Barcode = barcodeOutput.Barcode;
                updateInput.Item      = thisItem.Item;
                app.UpdateItem(updateInput);
            }
            return(itemInput.Id);
        }
예제 #2
0
 public AddNewBookOutput AddNewBook(AddNewBookInput input)
 {
     return(new AddNewBookOutput
     {
         Id = _bookRepository.AddNewItem(input.Book.ConvertToBook())
     });
 }