private void materialRaisedButton1_Click(object sender, EventArgs e)
        {
            //Rezervasyon tablosuna ekleme yapılacak
            Rezervasyon yeniRezervasyon = new Rezervasyon();
            int         rezervasyonID   = 0;
            int         musteriID       = 0;

            foreach (var item in rezervasyonList)
            {
                yeniRezervasyon.GirisTarihi      = item.GirisTarihi;
                yeniRezervasyon.CikisTarihi      = item.CikisTarihi;
                yeniRezervasyon.ToplamKisiSayisi = item.ToplamKisiSayisi;
                yeniRezervasyon.RezervasyonTipID = item.RezervasyonTipID;
                yeniRezervasyon.ToplamFiyat      = toplamRezervasyonFiyati;
                yeniRezervasyon.UyeID            = _uyeID;
                rezervasyonID = _rezervasyonBLL.Add(yeniRezervasyon);
            }

            //Verilen odaların durumları false yapılacak
            Oda tutulanOda = new Oda();

            for (int i = 0; i < lvOdaBilgisi.Items.Count; i++)
            {
                tutulanOda.OdaID           = Convert.ToInt32(lvOdaBilgisi.Items[i].SubItems[0].Text);
                tutulanOda.KisiSayisi      = Convert.ToInt32(lvOdaBilgisi.Items[i].SubItems[1].Text);
                tutulanOda.HaftaSonuSayisi = haftasonuSayisi;
                tutulanOda.RezervasyonID   = rezervasyonID;
                tutulanOda.Durum           = false;
                _odaBLL.TutulanOdaGuncelle(tutulanOda);
            }
            //Müşteri bilgileri müşteri tablosuna eklenecek
            Musteri    yeniMusteri = new Musteri();
            List <int> musteriIDs  = new List <int>();

            for (int i = 0; i < lvOdaBilgisi.Items.Count; i++)
            {
                int odadakiKisiSayisi = Convert.ToInt32(lvOdaBilgisi.Items[i].SubItems[1].Text);
                for (int j = 0; j < odadakiKisiSayisi; j++)
                {
                    yeniMusteri.Ad            = lvMusteriOnay.Items[j].SubItems[3].Text;
                    yeniMusteri.Soyad         = lvMusteriOnay.Items[j].SubItems[4].Text;
                    yeniMusteri.TCKN          = lvMusteriOnay.Items[j].SubItems[5].Text;
                    yeniMusteri.Email         = lvMusteriOnay.Items[j].SubItems[6].Text;
                    yeniMusteri.Telefon       = lvMusteriOnay.Items[j].SubItems[7].Text;
                    yeniMusteri.RezervasyonID = rezervasyonID;
                    yeniMusteri.OdaID         = Convert.ToInt32(lvOdaBilgisi.Items[i].SubItems[0].Text);
                    musteriID = _musteriBLL.Add(yeniMusteri);
                    musteriIDs.Add(musteriID);
                }
            }
            //İlişki tablosu doldurulacak
            MusteriRezervasyon musteriRezervasyon = new MusteriRezervasyon();

            foreach (var item in musteriIDs)
            {
                Musteri musteri = _musteriBLL.GetByID(item);
                musteriRezervasyon.MusteriID     = musteri.MusteriID;
                musteriRezervasyon.OdaID         = musteri.OdaID;
                musteriRezervasyon.RezervasyonID = musteri.RezervasyonID;
                _musteriRezervasyonBLL.Add(musteriRezervasyon);
            }

            MessageBox.Show("Rezervasyon Kaydedildi");
            this.Close();
        }
        private void btnTamamla_Click(object sender, EventArgs e)
        {
            _musteriBLL = new MusteriBLL();
            _odaBLL     = new OdaBLL();

            List <Oda> odalar     = _odaBLL.List();
            List <int> BosOdalar  = new List <int>();
            List <int> doluodalar = new List <int>();
            List <Entities.Rezervasyon> rezervasyonliste = _rezervasyonBLL.RezervasyonListesi();

            for (int i = 1; i < odalar.Count + 1; i++)
            {
                foreach (Entities.Rezervasyon item in rezervasyonliste)
                {
                    OdaVeOdaCesidi odaVeOdaCesidi = OVCBLL.IdileOdaVeOdaCesidiGetir(item.OdaveCesitID);
                    if ((dateTimePickerGiris.Value >= item.GirisTarihi && dateTimePickerGiris.Value < item.CikisTarihi) && odaVeOdaCesidi.OdaID == i)
                    {
                        doluodalar.Add(odaVeOdaCesidi.OdaID);
                        break;
                    }
                }
            }
            for (int j = 1; j < (odalar.Count + 1); j++)
            {
                if (doluodalar.Exists(element => element == j) != true)
                {
                    BosOdalar.Add(j);
                }
            }
            if (BosOdalar.Count == 0)
            {
                MessageBox.Show("Bu tarihlerde boş oda bulunmamaktadır.");
                return;
            }

            int     rezCesitId     = (int)cmbRezCesidi.SelectedValue;
            int     odaCesidiId    = (int)odaSecimCmb.SelectedValue;
            decimal RezCesitFiyati = RCBLL.GetMoneyById(rezCesitId);
            int     ovcID          = OVCBLL.OdaCesitleriniIDyeGoreGetir((int)odaSecimCmb.SelectedValue, BosOdalar[0]);
            decimal odaFiyati      = OVCBLL.GetMoney(ovcID);


            Total total = new Total();

            total.OdaVeCesitID        = ovcID;
            total.RezervasyonCesidiID = rezCesitId;
            //total.IndirimOrani = 30;
            total.OdaVeCesitIDFiyat        = odaFiyati;
            total.RezervasyonCesidiIDFiyat = RezCesitFiyati;
            int count = 0;

            if (odaCesidiId == 1)
            {
                total.IndirimOrani = 30;
            }
            else if (odaCesidiId == 2)
            {
                total.IndirimOrani = 0;
            }
            else if (odaCesidiId == 7)
            {
                total.IndirimOrani = 20;
            }
            for (DateTime date = dateTimePickerGiris.Value; date <= dateTimePickerCikis.Value; date = date.AddDays(1))
            {
                if (date.DayOfWeek == DayOfWeek.Sunday || date.DayOfWeek == DayOfWeek.Saturday)
                {
                    count++;
                }
            }
            total.TotalFiyat = total.OdaVeCesitIDFiyat + total.RezervasyonCesidiIDFiyat + 30 * count;
            _totalBLL.Add(total);
            int ID = _totalBLL.SonTotal().TotalID;

            Entities.Rezervasyon rezervasyon = new Entities.Rezervasyon();
            rezervasyon.KisiSayisi          = KisiSayisi;
            rezervasyon.GirisTarihi         = dateTimePickerGiris.Value;
            rezervasyon.CikisTarihi         = dateTimePickerCikis.Value;
            rezervasyon.RezervasyonCesidiID = rezCesitId;
            rezervasyon.OdaveCesitID        = ovcID;
            rezervasyon.UyeID   = frm_GirisEkrani.girisId;
            rezervasyon.TotalID = ID;


            foreach (Musteri item in musteriler)
            {
                _musteriBLL.Add(item);
            }

            _rezervasyonBLL = new RezervasyonBLL();

            if (_rezervasyonBLL.Ekle(rezervasyon))
            {
                MessageBox.Show("Rezervasyon Başarıyla Kaydedildi..");
            }

            int sonmusteriID     = _musteriBLL.SonMusteriID();
            int sonrezervasyonID = _rezervasyonBLL.SonRezervasyonID();

            for (int i = 0; i < musteriler.Count; i++)
            {
                _musteriRezervasyonBLL.Add(sonmusteriID - i, sonrezervasyonID);
            }

            musteriRezervasyon = new MusteriRezervasyon();
            musteriRezervasyon.RezervasyonID = rezervasyon.RezervasyonID;

            musteriler.Clear();

            this.Hide();
            RezervasyonBilgilerim rezervasyonBilgilerim = new RezervasyonBilgilerim();

            rezervasyonBilgilerim.FormClosing += RezervasyonBilgilerim_FormClosing;
            rezervasyonBilgilerim.Show();
        }