Esempio n. 1
0
        private void btnSatisaCevir_Click(object sender, EventArgs e)
        {
            string[] dizi    = gelenRezerveBilet.ToString().Split(' ', ',');
            int      biletId = Convert.ToInt32(dizi[3]);

            if (dgvSeyehatBilgileri.SelectedRows.Count > 0)
            {
                RezerveConcrete rezerveBilet = new RezerveConcrete();
                SatilanConcrete satilanBilet = new SatilanConcrete();
                RezerveBilet    rezerve      = rezerveBilet.GetBiletById(biletId);
                SatilanBilet    satilan      = new SatilanBilet();
                satilan.BiletID     = rezerve.BiletID;
                satilan.MusteriID   = rezerve.MusteriID;
                satilan.SatisTarihi = DateTime.Now;

                satilanBilet._satilanBiletRepository.Insert(satilan);

                rezerve.IsBought = true;
                satilanBilet._dbContext.SaveChanges();
                rezerveBilet._dbContext.SaveChanges();
                MessageBox.Show("Rezerve biletiniz Satışa Çevrilmiştir.");
                dgvSeyehatBilgileri.DataSource = null;
                RezerveBiletListele();
            }
        }
        public void YolcuEkle()
        {
            int ucret = 0;

            if (cmbBiletTipi.Text == "Economy")
            {
                ucret = 70;
            }
            else
            {
                ucret = 100;
            }
            if (grpEkHizmetler.Controls.Count > 0)
            {
                foreach (Control item in grpEkHizmetler.Controls)
                {
                    if (((CheckBox)item).Checked)
                    {
                        if (item.Text.Contains("Bagaj"))
                        {
                            ucret += 30;
                        }
                        else if (item.Text.Contains("Yiyecek"))
                        {
                            ucret += 10;
                        }
                        else if (item.Text.Contains("İçecek"))
                        {
                            ucret += 5;
                        }
                    }
                }
            }

            sonTiklananKoltukAdi = tiklanan.Name;
            tiklanan.Click      += CokluSecim;

            BiletBilgi               biletDetay   = new BiletBilgi();
            BiletConcrete            bc           = new BiletConcrete();
            BiletBilgiDal            bbd          = new BiletBilgiDal();
            Bilet                    bilet        = new Bilet();
            Musteri                  yolcu        = new Musteri();
            MusteriDetay             musteriDetay = new MusteriDetay();
            MusteriConcrete          mc           = new MusteriConcrete();
            MusteriDetayConcrete     mdc          = new MusteriDetayConcrete();
            SeferlerSeferSaatleriDal sssd         = new SeferlerSeferSaatleriDal();
            SeferlerDal              sd           = new SeferlerDal();
            int sssdId = sssd.GetBySeferIdAndSaatId(seferId, saatID);

            yolcu.Ad          = txtAd.Text;
            yolcu.Soyad       = txtSoyad.Text;
            yolcu.DogumTarihi = dtpDogumTarihi.Value.Date;
            yolcu.Cinsiyet    = rdbErkek.Checked;
            mc._musteriRepository.Insert(yolcu);

            if (yolcu.Yas < 18 && biletTipi == "Economy")
            {
                ucret -= 20;
            }
            else if (yolcu.Yas < 18 && biletTipi == "Business")
            {
                ucret -= 30;
            }

            int musteriId = mc.GetIdByEntity(yolcu);

            musteriDetay.Email          = txtEmail.Text;
            musteriDetay.Telefon        = txtTelefon.Text;
            musteriDetay.MusteriDetayID = musteriId;
            mdc._musteriDetayRepository.Insert(musteriDetay);


            biletDetay.BiletTipi  = cmbBiletTipi.Text;
            biletDetay.KoltukNo   = tiklanan.Name;
            biletDetay.AlimTarihi = DateTime.Now;

            biletDetay.BiletFiyati = ucret;
            if (!gidisEklendiMi || donusTarihi != null || kayitSayaci == yolcuSayisi)
            {
                biletDetay.SeferTarihi      = gidisTarihi.Date;
                biletDetay.SeferSeferSaatID = sssdId;
            }
            else
            {
                biletDetay.SeferTarihi      = donusTarihi.Date;
                biletDetay.SeferSeferSaatID = donusSssd;
            }
            biletDetay.SeferSaati = saat;
            biletDetay.MusteriID  = musteriId;
            biletDetay.BiletTipi  = biletTipi;

            bilet.PNRNo = Tools.PNRNoYap(biletDetay);
            bc._biletRepository.Insert(bilet);
            int biletId = bc.GetIdByEntity(bilet);

            biletDetay.BiletBilgiID = biletId;

            bbd._biletBilgiRepository.Insert(biletDetay);
            gidisEklendiMi = true;
            if (rezerveMi)
            {
                RezerveBilet rezerve = new RezerveBilet()
                {
                    BiletID       = bilet.BiletID,
                    MusteriID     = musteriId,
                    RezerveTarihi = DateTime.Now,
                    IsBought      = false,
                    IsDeleted     = false
                };
                RezerveConcrete rc        = new RezerveConcrete();
                string          seferYonu = sd.GetYonById(seferId);
                rc._rezerveRepository.Insert(rezerve);


                if (yolcuSayisi > 1)
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);
                    lvi.SubItems.Add(seferYonu);
                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());
                    liste.Add(lvi);
                }


                else if (donusVarMi)
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);

                    if (!gidisEklendiMi && donusTarihi != null)
                    {
                        lvi.SubItems.Add(seferYonu);
                    }
                    else
                    {
                        seferYonu = sd.GetYonById(donusId);
                        lvi.SubItems.Add(seferYonu);
                    }

                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());

                    liste.Add(lvi);
                }


                else
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);
                    lvi.SubItems.Add(seferYonu);
                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());
                }
            }
            else
            {
                SatilanBilet satilan = new SatilanBilet();
                satilan.BiletID     = biletId;
                satilan.MusteriID   = musteriId;
                satilan.SatisTarihi = DateTime.Now;
                SatilanConcrete sc = new SatilanConcrete();
                sc._satilanBiletRepository.Insert(satilan);

                string seferYonu = sd.GetYonById(seferId);

                if (yolcuSayisi > 1)
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);

                    if (!gidisEklendiMi && donusTarihi != null)
                    {
                        lvi.SubItems.Add(seferYonu);
                    }
                    else
                    {
                        seferYonu = sd.GetYonById(donusId);
                        lvi.SubItems.Add(seferYonu);
                    }

                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());
                    liste.Add(lvi);
                    sonTiklananKoltukAdi = biletDetay.KoltukNo;
                }

                else if (donusVarMi)
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);
                    lvi.SubItems.Add(seferYonu);
                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());
                    liste.Add(lvi);
                }

                else
                {
                    lvi      = new ListViewItem();
                    lvi.Text = yolcu.Ad;
                    lvi.SubItems.Add(yolcu.Soyad);
                    lvi.SubItems.Add(biletDetay.BiletTipi);
                    lvi.SubItems.Add(seferYonu);
                    lvi.SubItems.Add(biletDetay.SeferSaati);
                    lvi.SubItems.Add(biletDetay.KoltukNo);
                    lvi.SubItems.Add(biletDetay.BiletFiyati.ToString());
                    lvi.SubItems.Add(bilet.PNRNo.ToString());
                }
            }
        }