Exemple #1
0
 public virtual AddNewItemOutput AddNewItem(AddNewItemInput <T> input)
 {
     return(new AddNewItemOutput
     {
         Id = _genericItemRepository.AddNewItem(input.Item.ConvertToTItem())
     });
 }
        public virtual int AddNewItem(T genericItem)
        {
            var itemInput    = new GetItemByIdInput();
            var barcodeInput = new SetItemBarcodeInput();
            var updateInput  = new UpdateItemInput();

            var input = new AddNewItemInput <T>
            {
                Item = new GenericItemDto <T>(genericItem)
            };

            using (var repo = new GenericItemRepositoryBase <T>())
            {
                var app = new GenericItemAppService <T>(repo);
                itemInput.Id = app.AddNewItem(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);
        }