Exemple #1
0
        private void DataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var sku = new DataModel.SKU();
            if (e.AddedItems.Count > 0) sku = e.AddedItems[0] as DataModel.SKU ?? sku;

            ((ViewModels.SKUs)this.DataContext).CurrentSKU = sku.Copy();
        }
Exemple #2
0
 public void SaveCurrentSKU()
 {
     DataModel.SKU match = SKUHandlerInstance.SKUList.FirstOrDefault(sku => sku.Code == CurrentSKU.Code);
     // The user is (visually) updating based on SKU code, not database id.
     CurrentSKU.Id = match != null ? match.Id : null;
     CurrentSKU.Save();
     SKUHandlerInstance.SKUList = new ObservableCollection <DataModel.SKU>(DataModel.SKU.LoadAll());
 }
Exemple #3
0
        public void RemoveFromCurrentSKUCollection(DataModel.SKU sku)
        {
            var newSKUCollection = CurrentSKUCollection.Copy();
            int matchIndex       = newSKUCollection.SKUs.FindIndex(s => s.Id == sku.Id);

            newSKUCollection.SKUs.RemoveAt(newSKUCollection.SKUs.FindIndex(s => s.Id == sku.Id));
            CurrentSKUCollection = newSKUCollection;
        }
Exemple #4
0
 public void RemoveSKU(DataModel.SKU sku)
 {
     sku.Delete();
     SKUList.Remove(SKUList.First(s => s.Id == sku.Id));
     foreach (var c in SKUCollectionList)
     {
         var match = c.SKUs.FirstOrDefault(s => s.Id == sku.Id);
         if (match != null)
         {
             c.SKUs.Remove(match);
         }
     }
     NotifyPropertyChanged(() => SKUList);
     NotifyPropertyChanged(() => SKUCollectionList);
 }
Exemple #5
0
        private void DataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (e.AddedItems.Count == 0)
            {
                return;
            }

            UpdateTextBoxSources();

            var dc = (ViewModels.SKUs)DataContext;

            var  oldSku    = dc.SKUHandlerInstance.SKUList.Where(item => item.Code == dc.CurrentSKU.Code).FirstOrDefault();
            bool skuExists = oldSku != null;

            if (!skuExists)
            {
                oldSku = new DataModel.SKU
                {
                    // This prevents unsaved changes detection with two empty SKU objects.
                    Timestamp = dc.CurrentSKU.Timestamp
                };
            }

            if (!dc.CurrentSKU.Equals(oldSku))
            {
                if (MessageBox.Show(
                        string.Format("Sinulla on tallentamattomia muutoksia nimikkeelle koodilla: {0}.{1}{2}{3}Tallennetaanko muutokset?",
                                      dc.CurrentSKU.Code, Environment.NewLine + Environment.NewLine,
                                      skuExists ? "Muutokset ylikirjoittavat olemassa olevan nimikkeen tiedot." :
                                      "Tallennus ei ylikirjoita olemassa olevaa nimikettä, vaan kyseessä on uusi nimike.",
                                      Environment.NewLine + Environment.NewLine),
                        "Tallentamattomia muutoksia",
                        MessageBoxButton.YesNo,
                        MessageBoxImage.Exclamation) == MessageBoxResult.Yes)
                {
                    SaveCurrentSKU(false);
                }
            }

            dc.CurrentSKU = (e.AddedItems[0] as DataModel.SKU)?.Copy() ?? new DataModel.SKU();
        }
Exemple #6
0
 public void RemoveSKU(DataModel.SKU sku)
 {
     SKUHandlerInstance.RemoveSKU(sku);
 }
Exemple #7
0
 public SKUs()
 {
     CurrentSKU = new DataModel.SKU();
 }