public ResultItemsModel AddItem(ItemModel item, string user = "******") { var dbModel = new ItemDbModel { Item = new ItemModel { Name = item.Name, Model = item.Model, Brand = item.Brand, Spec = item.Spec, Supplier = item.Supplier, Discount = item.Discount, OriginPrice = item.OriginPrice, CreateDate = DateTime.Now, Owner = user, Remark = item.Remark }, FlatItem = new ItemModel() }; _itemType.GetProperties(BindingFlags.Instance | BindingFlags.Public) .Where(i => i.PropertyType == typeof(string) && _itemPropertyNames.Contains(i.Name)) .ForEach( i => i.SetValue(dbModel.FlatItem, Strings.Flatten(_itemType.GetProperty(i.Name).GetValue(dbModel.Item) as string))); _itemDal.Insert(dbModel); return(ResultFactory.CreateItemsResult(ResultCode.Ok)); }
private async void ExecuteAddItemCommand() { var errorList = ValidateInputParameters(); if (errorList.Count > 0) { MessageBox.Show("Error encountered in adding new item.\n" + string.Join(Environment.NewLine, errorList)); return; } var item = new ItemDbModel() { Barcode = Barcode, BrandName = BrandName, DosageForm = DosageForm, DosageStrength = DosageStrength, GenericName = GenericName, Manufacturer = Manufacturer, Price = (int)(UnitPrice * 100), TherapeuticClassId = SelectedTherapeuticClass.TherapeuticClassId }; var resultsChanged = await _itemProcessor.AddItem(item); if (resultsChanged == 0) { throw new Exception("Failed to add item"); } var newItem = (await _itemProcessor.GetItems(item.GenericName, item.BrandName, item.Manufacturer, item.Barcode, SelectedTherapeuticClass)).FirstOrDefault(); var inventoryItem = new InventoryDbModel() { ItemId = newItem.ItemId, BatchNumber = BatchNumber, LotNumber = LotNumber, ExpiryDate = ExpiryDate.Date, ManufacturingDate = ManufacturingDate.Date, Quantity = Quantity }; resultsChanged = await _inventoryProcessor.AddInventoryItem(inventoryItem); DisplayAddItemResult(resultsChanged > 0); InitializeValues(); }
public async Task <ItemModel> CreateAsync(CreateItemRequest request, CancellationToken token) { var item = new ItemDbModel { Article = request.Article, Name = request.Name, Description = request.Description, Size = request.Size, Currency = request.Currency, PurchasePrice = request.PurchasePrice, Price = request.Price, Photo = request.Photo, CreationDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), ModificationDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), Type = request.Type }; await _repository.CreateAsync(item, token); return(item.ConvertTo <ItemModel>()); }
public Item(ItemDbModel itemModel, InventoryDbModel inventoryModel, TherapeuticClassDbModel therapeuticClass) { ItemModel = itemModel; InventoryModel = inventoryModel; TherapeuticClass = therapeuticClass; }