예제 #1
0
            public void Execute(object parameter)
            {
                try
                {
                    var Button = (Satislar)((Button)parameter)?.DataContext;
                    var Ad     = Button.Musteriler == null ? "İsimsiz" : Button.Musteriler.Adi;
                    var Soyad  = Button.Musteriler == null ? "İsimsiz" : Button.Musteriler.Soyadi;

                    if (MessageBox.Show($"{Ad} {Soyad} Kişisine Yapılan {Button.Adet} {Button.Urunler.OlcuBirimi} {Button.Urunler.UrunAdi} Satışı Silmek İstiyor Musun? Satış Silinince Bu Satışa İlişkin Peşin, Taksit ve İade Verileri de Silinecektir.",
                                        "Satış", MessageBoxButton.YesNo, MessageBoxImage.Exclamation, MessageBoxResult.No) != MessageBoxResult.Yes)
                    {
                        return;
                    }
                    var dataContext = new DataContext();

                    var silinecek = dataContext.Satislar.FirstOrDefault(x => x.SatisID == Button.SatisID);
                    dataContext.Satislar.DeleteOnSubmit(silinecek);
                    dataContext.Urunler.FirstOrDefault(z => z.UrunID == Button.Urunler.UrunID).KalanMiktar += (float)Button.Adet;
                    dataContext.SubmitChanges();
                    ObservableCollectionÜrünler.FirstOrDefault(z => z.UrunID == Button.Urunler.UrunID).KalanMiktar += (float)Button.Adet;
                    ObservableCollectionSatışlar.Remove(Button);
                }
                catch (Exception Ex)
                {
                    MessageBox.Show(Ex.Message);
                }
            }
예제 #2
0
            private static void HızlıSatışEkle(int ÜrünID, object parameter)
            {
                try
                {
                    const int SatılanAdet = 1;

                    var ÜrünMiktarı = new DataContext().Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar;
                    if (ÜrünMiktarı < SatılanAdet)
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Stokta Kalan Üründen Daha Fazla Ürün Satamazsın.", MainIcon = VistaTaskDialogIcon.Warning
                        });
                        return;
                    }

                    var Satışlar = new Satislar
                    {
                        Adet          = SatılanAdet,
                        UrunlerUrunID = ÜrünID,
                        TahsilatTarih = Form.DtTahsilatTarihi.Value,
                        PesinMi       = true
                    };

                    var Tahsilat = new Tahsilatlar
                    {
                        PesinOdenen = ((Urunler)parameter).SatisFiyat,
                        ToplamTutar = ((Urunler)parameter).SatisFiyat,
                    };
                    Tahsilat.TahsilatBittiMi = Tahsilat.PesinOdenen == Tahsilat.ToplamTutar;

                    Satışlar.Tahsilatlar.Add(Tahsilat);
                    var dataContext = new DataContext();
                    dataContext.Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= SatılanAdet;
                    dataContext.Satislar.InsertOnSubmit(Satışlar);
                    dataContext.SubmitChanges();

                    ObservableCollectionÜrünler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= SatılanAdet;
                    ObservableCollectionSatışlar.Add(Satışlar);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
예제 #3
0
            private static void HızlıSatışEkle(int ÜrünID)
            {
                try
                {
                    if (!SatışYapılabilir)
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Satış Yapamazsınız.", MainIcon = VistaTaskDialogIcon.Warning
                        });
                        return;
                    }

                    if ((Urunler)Form.CbÜrün.SelectedItem == null)
                    {
                        return;
                    }
                    Form.CbMüşteriler.SelectedIndex = -1;
                    Form.TxAdet.Text = "1";
                    Form.CbÖdemeTipi.SelectedIndex = 0;

                    var Satış       = Form.GbSatışlar.DataContext as Satislar;
                    var ÜrünMiktarı = new DataContext().Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar;
                    if (ÜrünMiktarı < Satış.Adet)
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Stokta Kalan Üründen Daha Fazla Ürün Satamazsın.", MainIcon = VistaTaskDialogIcon.Warning
                        });
                        return;
                    }

                    var Satışlar = new Satislar
                    {
                        Adet          = Satış.Adet,
                        MusteriID     = ((Musteriler)Form.CbMüşteriler.SelectedItem)?.MusteriID,
                        UrunlerUrunID = ((Urunler)Form.CbÜrün.SelectedItem).UrunID,
                        TahsilatTarih = Form.DtTahsilatTarihi.Value,
                        PesinMi       = Form.CbÖdemeTipi.SelectedIndex == 0
                    };

                    var Tahsilat = new Tahsilatlar
                    {
                        PesinOdenen = (Form.GbTahsilatlar.DataContext as Tahsilatlar).PesinOdenen,
                        ToplamTutar = (Form.GbTahsilatlar.DataContext as Tahsilatlar).ToplamTutar,
                        Aciklama    = (Form.GbTahsilatlar.DataContext as Tahsilatlar).Aciklama
                    };
                    Tahsilat.TahsilatBittiMi = Tahsilat.PesinOdenen == Tahsilat.ToplamTutar;

                    Satışlar.Tahsilatlar.Add(Tahsilat);
                    var dataContext = new DataContext();
                    dataContext.Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= (float)Satış.Adet;
                    dataContext.Satislar.InsertOnSubmit(Satışlar);
                    dataContext.SubmitChanges();

                    ObservableCollectionÜrünler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= (float)Satış.Adet;
                    ObservableCollectionSatışlar.Add(Satışlar);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
예제 #4
0
            private static void SatışEkle()
            {
                try
                {
                    var Satış       = Form.GbSatışlar.DataContext as Satislar;
                    var ÜrünID      = ((Urunler)Form.CbÜrün.SelectedItem).UrunID;
                    var ÜrünMiktarı = new DataContext().Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar;
                    if (!Geçerli(Form.GbSatışlar) || !Geçerli(Form.GbTahsilatlar))
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Tüm Alanlara Doğru Giriş Yaptığınızdan Emin Olun.", MainIcon = VistaTaskDialogIcon.Warning, ExpandedInfo = "Kırmızı Uyarı İle İşaretlenmiş Alanların Doğru Doldurulması Gereklidir."
                        });
                        return;
                    }

                    if (!SatışYapılabilir)
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Satış Yapamazsınız.", MainIcon = VistaTaskDialogIcon.Warning
                        });
                        return;
                    }

                    if (ÜrünMiktarı < Satış.Adet)
                    {
                        TaskDialog.Show(new TaskDialogOptions {
                            Owner = Form, Title = "Satış", MainInstruction = "Stokta Kalan Üründen Daha Fazla Ürün Satamazsın.", MainIcon = VistaTaskDialogIcon.Warning
                        });
                        return;
                    }

                    Form.GdSatışlar.IsEnabled = false;
                    Form.DisableCloseButton(true);
                    Form.BusyIndicator.IsBusy = true;

                    var Satışlar = new Satislar
                    {
                        Adet          = Satış.Adet,
                        MusteriID     = ((Musteriler)Form.CbMüşteriler.SelectedItem)?.MusteriID,
                        UrunlerUrunID = ((Urunler)Form.CbÜrün.SelectedItem).UrunID,
                        TahsilatTarih = Form.DtTahsilatTarihi.Value,
                        PesinMi       = Form.CbÖdemeTipi.SelectedIndex == 0
                    };

                    var Tahsilat = new Tahsilatlar
                    {
                        PesinOdenen = (Form.GbTahsilatlar.DataContext as Tahsilatlar).PesinOdenen,
                        ToplamTutar = (Form.GbTahsilatlar.DataContext as Tahsilatlar).ToplamTutar,
                        Aciklama    = (Form.GbTahsilatlar.DataContext as Tahsilatlar).Aciklama
                    };
                    Tahsilat.TahsilatBittiMi = Tahsilat.PesinOdenen == Tahsilat.ToplamTutar;

                    TaksitliSatış(Tahsilat);

                    Satışlar.Tahsilatlar.Add(Tahsilat);
                    var dataContext = new DataContext();
                    dataContext.Urunler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= (float)Satış.Adet;
                    dataContext.Satislar.InsertOnSubmit(Satışlar);
                    Task.Factory.StartNew(() => dataContext.SubmitChanges()).ContinueWith(task =>
                    {
                        ObservableCollectionÜrünler.FirstOrDefault(z => z.UrunID == ÜrünID).KalanMiktar -= (float)Satış.Adet;
                        ObservableCollectionSatışlar.Add(Satışlar);
                        EkranTemizleme();
                    }, TaskScheduler.FromCurrentSynchronizationContext());
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }