private void OnInventoryItemsFilterExpressionChanged(object sender, NotificationEventArgs e) { InventoryItems.Refresh(); SelectedInventoryItems.Clear(); NotifyPropertyChanged(x => SelectedInventoryItems); BeginSendMessage(MessageToken.SelectedInventoryItemsChanged, new NotificationEventArgs(MessageToken.SelectedInventoryItemsChanged)); }
private void RaiseAddInventoryListInteractionRequest() { _receiveInventoryVm.SelectedFulfillmentCenter = SearchFilterFulfillment; var confirmation = new ConditionalConfirmation { Title = "Receive inventory".Localize(), Content = _receiveInventoryVm }; CommonConfirmRequest.Raise(confirmation, x => { if (x.Confirmed) { SearchFilterFulfillment = SearchFilterFulfillments.FirstOrDefault(y => y.FulfillmentCenterId == _receiveInventoryVm.SelectedFulfillmentCenter.FulfillmentCenterId); _receiveInventoryVm.InventoryItems.ToList().ForEach(y => y.FulfillmentCenterId = _receiveInventoryVm.SelectedFulfillmentCenter.FulfillmentCenterId); var l = _receiveInventoryVm.InventoryItems.Where(y => !string.IsNullOrEmpty(y.Sku) && y.InStockQuantity >= 0).ToList(); _receiveInventoryVm.InventoryItems.Clear(); foreach (var inventory in l) { using (var repository = _inventoryRepositoryFactory.GetRepositoryInstance()) { var sku = repository.Inventories.ToList() .FirstOrDefault(x1 => x1.Sku == inventory.Sku && x1.FulfillmentCenterId == inventory.FulfillmentCenterId); if (sku != null) { sku.InStockQuantity += inventory.InStockQuantity; } else { inventory.Status = (int)InventoryStatus.Enabled; repository.Add(inventory); } repository.UnitOfWork.Commit(); } } SelectedInventoryItems.Refresh(); OnSpecifiedPropertyChanged("SearchFilterFulfillment"); } }); }
private void DoSearchItems() { SelectedInventoryItems.Refresh(); }