Пример #1
0
        private void btnKaydet_Click(object sender, EventArgs e)
        {
            SatisORM sOrm = new SatisORM();
            Satis    s    = new Satis();

            s.MusteriID   = Convert.ToInt32(cmbMusteri.SelectedValue);
            s.OdaID       = Convert.ToInt32(cmbOda.SelectedValue);
            s.PersonelID  = PersonellerORM.AktifKullanici.Id;
            s.OdaFiyati   = nudOdaFiyati.Value;
            s.SatisTarihi = DateTime.Now;

            int sId = Convert.ToInt32(sOrm.InsertScalar(s));

            if (sId > 0)
            {
                SatisDetayORM sdOrm = new SatisDetayORM();
                foreach (ListViewItem lvi in listview1.Items)
                {
                    SatisDetay sd = new SatisDetay();
                    sd.SatisID = sId;
                    sd.UrunID  = (int)lvi.Tag;
                    sd.Fiyat   = Convert.ToDecimal(lvi.SubItems[3].Text);
                    sd.Miktar  = Convert.ToDouble(lvi.SubItems[2].Text);
                    sd.Indırım = Convert.ToDouble(lvi.SubItems[4].Text);
                    sdOrm.Insert(sd);
                }
            }
        }
        private void btnKatdet_Click(object sender, EventArgs e)
        {
            if (cmbMusteri.Items.Count == 0 || cmbOda.Items.Count == 0)
            {
                MessageBox.Show("Tanımlı müşteri veya Oda belirlemelisiniz.\n -Müşteriler \n -Tanımlar/Odalar", "Satış Onay", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return;
            }
            SatisORM sOrm = new SatisORM();
            Odalar   o    = new Odalar();

            o.Id = Convert.ToInt32(cmbOda.SelectedValue);
            Satis s = new Satis();

            s.MusteriID   = Convert.ToInt32(cmbMusteri.SelectedValue);
            s.OdaID       = Convert.ToInt32(cmbOda.SelectedValue);
            s.PersonelID  = PersonellerORM.AktifKullanici.Id;
            s.OdaFiyati   = nudOdaFiyati.Value;
            s.SatisTarihi = DateTime.Now;

            try
            {
                int          satisId = Convert.ToInt32(sOrm.InsertScalar(s));
                DialogResult result  = MessageBox.Show("Satışı onaylıyor musunuz?", "Satış Onay", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                if (result == DialogResult.Yes)
                {
                    try
                    {
                        SatisDetayORM  sdOrm = new SatisDetayORM();
                        UrunORM        uOrm  = new UrunORM();
                        KasaHareketORM khOrm = new KasaHareketORM();
                        KasaHareket    kh;
                        decimal        odaFiyati = nudOdaFiyati.Value;
                        if (listView1.Items.Count == 0)
                        {
                            kh = new KasaHareket
                            {
                                KasaID           = 2,
                                KasaHareketTipID = 1,
                                Tutar            = odaFiyati,
                                Tarih            = DateTime.Now,
                                Kdvsiz           = (odaFiyati - (odaFiyati * 0.18m))
                            };
                            khOrm.Insert(kh);
                        }
                        else
                        {
                            foreach (ListViewItem lvi in listView1.Items)
                            {
                                SatisDetay sd = new SatisDetay();
                                sd.SatisID = satisId;
                                sd.UrunID  = (int)lvi.Tag;
                                sd.Fiyat   = Convert.ToDecimal(lvi.SubItems[3].Text);
                                sd.Miktar  = (Convert.ToDouble(lvi.SubItems[2].Text));
                                sd.Indirim = Convert.ToDouble(lvi.SubItems[4].Text);
                                sdOrm.Insert(sd);

                                Urunler u = new Urunler();
                                u.Id     = Convert.ToInt32(lvi.Tag);
                                u.Miktar = -(Convert.ToDouble(lvi.SubItems[2].Text));

                                decimal miktar  = ((decimal)sd.Miktar);
                                decimal indirim = (int)sd.Indirim;

                                decimal tutar = (miktar * sd.Fiyat) - (miktar * sd.Fiyat * (indirim / 100));
                                //object initializer
                                kh = new KasaHareket
                                {
                                    KasaID           = 2,
                                    KasaHareketTipID = 1,
                                    Tutar            = tutar,
                                    Tarih            = DateTime.Now,
                                    Kdvsiz           = (tutar - (tutar * 0.18m))
                                };
                                try
                                {
                                    if (uOrm.Update(u))
                                    {
                                        khOrm.Insert(kh);
                                    }
                                    else
                                    {
                                        MessageBox.Show("Stokta yeteri kadar ürün kalmamıştır", "Satış Onay", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                        return;
                                    }
                                }
                                catch (Exception ex)
                                {
                                    MessageBox.Show(ex.Message, "Satış Onay", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                    return;
                                }
                            }
                        }
                        MessageBox.Show("Satış onaylandı", "Satış Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        dataGridView1.DataSource = uOrm.Select();
                        Tools.Temizle(this);
                        nudUrunFiyati.Value  = Convert.ToDecimal(dataGridView1.CurrentRow.Cells[2].Value);
                        nudUrunMiktarı.Value = 1;
                        lblTutar.Text        = "";
                        dataGridView1.Focus();
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Satış sırasında hata oluştu", "Satış Onay", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
                else if (result == DialogResult.No)
                {
                    listView1.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Satış Onay", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
        }