private void BtnEkstraEkle_Click(object sender, EventArgs e) { ArsEdit edtStokKodu = new ArsEdit(); edtStokKodu.ArName = "STOK_ADI"; edtStokKodu.PrivateName = "STOK_KODU"; edtStokKodu.ArTag = ekstraTag; ArsLabel lblStokKodu = new ArsLabel(); lblStokKodu.FullText = "Stok"; lblStokKodu.ArTag = ekstraTag; lblStokKodu.ArFocusView = edtStokKodu; ArsButton btnStokKodu = new ArsButton(); btnStokKodu.AfterGuide += StokAfterGuide; btnStokKodu.ButtonType = EnmButtonType.Guide; btnStokKodu.ArTag = ekstraTag; btnStokKodu.ArControlView = edtStokKodu; ekstraTag++; btnStokKodu.SQLText = "SELECT STOK_KODU, STOK_ADI FROM [TBLSTOK]"; GuideField[] guideFieldList = new GuideField[2]; guideFieldList[0] = new GuideField(); guideFieldList[0].Name = "STOK_KODU"; guideFieldList[0].Text = "Stok Kodu"; guideFieldList[1] = new GuideField(); guideFieldList[1].Name = "STOK_ADI"; guideFieldList[1].Text = "Stok Adı"; btnStokKodu.GuideFieldList = guideFieldList; ArsEdit edtStokTutar = new ArsEdit(); edtStokTutar.ArName = "STOK_TUTAR"; edtStokTutar.EditType = EnmEditType.Decimal; edtStokTutar.ArFocusView = edtStokKodu; edtStokTutar.ArTag = ekstraTag; ArsLabel lblStokTutar = new ArsLabel(); lblStokTutar.FullText = ""; lblStokTutar.ArTag = ekstraTag; lblStokTutar.ArFocusView = edtStokTutar; ArsButton btnStokSil = new ArsButton(); btnStokSil.ButtonType = EnmButtonType.Delete; btnStokSil.ArTag = ekstraTag; btnStokSil.Click += EkstraSil; btnStokSil.ArControlView = edtStokTutar; ekstraTag++; pnlRezervasyon.Controls.Add(edtStokKodu); pnlRezervasyon.Controls.Add(lblStokKodu); pnlRezervasyon.Controls.Add(btnStokKodu); pnlRezervasyon.Controls.Add(edtStokTutar); pnlRezervasyon.Controls.Add(lblStokTutar); pnlRezervasyon.Controls.Add(btnStokSil); lblStokTutar.Size = new Size(1, lblStokTutar.Size.Height); edtStokTutar.Size = new Size(165, edtStokTutar.Size.Height); pnlRezervasyon.Setup(); btnEkstraEkle.Location = new Point(btnEkstraEkle.Location.X, btnEkstraEkle.Location.Y + 25); cbYazdir.Location = new Point(cbYazdir.Location.X, cbYazdir.Location.Y + 25); BtnKaydet.Location = new Point(BtnKaydet.Location.X, BtnKaydet.Location.Y + 25); BtnTemizle.Location = new Point(BtnTemizle.Location.X, BtnTemizle.Location.Y + 25); if (Size.Height + 25 < Parent.Size.Height) { Size = new Size(Size.Width, Size.Height + 25); } edtStokKodu.Focus(); }
private void RezervasyonSaatSecim_Load(object sender, EventArgs e) { pnlRezervasyonSaatSecim.Controls.Clear(); ArsSQLQry qryYer = new ArsSQLQry(); qryYer.SQLText = "SELECT YER_KODU, YER_TANIMI FROM [TBLREZERVASYONYER] ORDER BY REC_ID DESC"; qryYer.Open(); if (qryYer.Found()) { int totalHeight = 0; for (int i = 0; i < qryYer.DataCount(); i++) { Panel pnlYerTop = new Panel(); Panel pnlYer = new Panel(); ArsSQLQry qryYerSaat = new ArsSQLQry(); //qryYerSaat.SQLText = "SELECT REC_ID, BASLANGIC_SAATI + ' / ' + BITIS_SAATI AS BAS_BIT_SAAT, BASLANGIC_SAATI, BITIS_SAATI, (SELECT COUNT(*) FROM TBLREZERVASYONHAR HAR WHERE HAR.YER_KODU = SAAT.YER_KODU AND HAR.SAAT_ID = SAAT.REC_ID AND TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "' AND ISNULL(REZ_OPS, 1) = 1) AS DOLULUK, (SELECT COUNT(*) FROM TBLREZERVASYONHAR HAR WHERE HAR.YER_KODU = SAAT.YER_KODU AND HAR.SAAT_ID = SAAT.REC_ID AND TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "' AND ISNULL(REZ_OPS, 1) = 2 AND OPSIYON_BITIS_TARIHI > '" + DateTime.Now.ToString("MM.dd.yyyy") + "') AS OPSIYON FROM [TBLREZERVASYONSAAT] SAAT WHERE /*WS*/YER_KODU = '" + qryYer.GetString("YER_KODU") + "'/*WE*/ ORDER BY REC_ID DESC"; qryYerSaat.SQLText = "SELECT REC_ID, BASLANGIC_SAATI, BITIS_SAATI, DOLULUK, OPSIYON, " + "CASE " + "WHEN DOLULUK > 0 THEN(SELECT BASLANGIC_SAATI + ' / ' + BITIS_SAATI FROM TBLREZERVASYONHAR HAR WHERE HAR.SAAT_RECID = SAAT.REC_ID AND ISNULL(REZ_OPS, 1) = 1 AND HAR.TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "') " + "WHEN OPSIYON > 0 THEN(SELECT BASLANGIC_SAATI + ' / ' + BITIS_SAATI FROM TBLREZERVASYONHAR HAR WHERE HAR.SAAT_RECID = SAAT.REC_ID AND ISNULL(REZ_OPS, 1) = 2 AND OPSIYON_BITIS_TARIHI > '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "' AND HAR.TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "') " + "ELSE BAS_BIT_SAAT END AS BAS_BIT_SAAT " + "FROM(SELECT REC_ID, BASLANGIC_SAATI + ' / ' + BITIS_SAATI AS BAS_BIT_SAAT, BASLANGIC_SAATI, BITIS_SAATI, (SELECT COUNT(*) FROM TBLREZERVASYONHAR HAR WHERE HAR.YER_KODU = SAAT.YER_KODU AND HAR.SAAT_RECID = SAAT.REC_ID AND TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "' AND ISNULL(REZ_OPS, 1) = 1) AS DOLULUK, (SELECT COUNT(*) FROM TBLREZERVASYONHAR HAR WHERE HAR.YER_KODU = SAAT.YER_KODU AND HAR.SAAT_RECID = SAAT.REC_ID AND TARIH = '" + tarih.Split('.')[1] + "." + tarih.Split('.')[0] + "." + tarih.Split('.')[2] + "' AND ISNULL(REZ_OPS, 1) = 2 AND OPSIYON_BITIS_TARIHI > '" + DateTime.Now.ToString("MM.dd.yyyy") + "') AS OPSIYON FROM[TBLREZERVASYONSAAT] SAAT WHERE /*WS*/YER_KODU = '" + qryYer.GetString("YER_KODU") + "'/*WE*/) AS SAAT ORDER BY REC_ID DESC"; qryYerSaat.Open(); if (qryYerSaat.Found()) { for (int j = 0; j < qryYerSaat.DataCount(); j++) { Panel pnlYerSaat = new Panel(); ArsLabel lblYerBasSaat = new ArsLabel(); lblYerBasSaat.Text = qryYerSaat.GetString("BASLANGIC_SAATI"); lblYerBasSaat.PrivateValue = qryYerSaat.GetInt("REC_ID").ToString(); pnlYerSaat.Controls.Add(lblYerBasSaat); lblYerBasSaat.ArTag = 99; lblYerBasSaat.Visible = false; ArsLabel lblYerBitSaat = new ArsLabel(); lblYerBitSaat.Text = qryYerSaat.GetString("BITIS_SAATI"); pnlYerSaat.Controls.Add(lblYerBitSaat); lblYerBitSaat.ArTag = 98; lblYerBitSaat.Visible = false; ArsLabel lblYerKodu = new ArsLabel(); lblYerKodu.Text = qryYer.GetString("YER_KODU"); pnlYerSaat.Controls.Add(lblYerKodu); lblYerKodu.ArTag = 97; lblYerKodu.Visible = false; ArsLabel lblYerTanimi = new ArsLabel(); lblYerTanimi.Text = qryYer.GetString("YER_TANIMI"); pnlYerSaat.Controls.Add(lblYerTanimi); lblYerTanimi.ArTag = 96; lblYerTanimi.Visible = false; MetroButton btnYerSaat = new MetroButton(); btnYerSaat.Text = qryYerSaat.GetString("BAS_BIT_SAAT"); btnYerSaat.BackColor = Color.White; if (qryYerSaat.GetInt("DOLULUK") > 0) { btnYerSaat.BackColor = Color.Red; btnYerSaat.ForeColor = Color.White; btnYerSaat.MouseUp += BtnMouseClick; if (!girisKaydi) { btnYerSaat.ContextMenuStrip = msRezervasyon; } } if (qryYerSaat.GetInt("OPSIYON") > 0) { btnYerSaat.BackColor = Color.Orange; btnYerSaat.ForeColor = Color.White; btnYerSaat.MouseUp += BtnMouseClick; if (!girisKaydi) { btnYerSaat.ContextMenuStrip = msOpsiyon; } } btnYerSaat.Click += SaatClick; btnYerSaat.UseCustomBackColor = true; btnYerSaat.UseCustomForeColor = true; btnYerSaat.Size = new Size(130, 40); pnlYerSaat.Controls.Add(btnYerSaat); btnYerSaat.Location = new Point(85, 3); btnYerSaat.TabStop = false; pnlYerTop.Controls.Add(pnlYerSaat); pnlYerSaat.Dock = DockStyle.Top; pnlYerSaat.Size = new Size(pnlYer.Size.Width, 46); qryYerSaat.Next(); } Label lblYer = new Label(); lblYer.Text = qryYer.GetString("YER_TANIMI"); pnlYer.Controls.Add(lblYer); lblYer.Dock = DockStyle.Fill; lblYer.Font = new Font("Arial", 13, FontStyle.Bold); lblYer.TextAlign = ContentAlignment.MiddleCenter; pnlYerTop.Controls.Add(pnlYer); pnlYer.Dock = DockStyle.Top; pnlYer.Size = new Size(pnlYer.Size.Width, 30); pnlRezervasyonSaatSecim.Controls.Add(pnlYerTop); pnlYerTop.Dock = DockStyle.Top; if (i < qryYer.DataCount() - 1) { totalHeight += 30 + qryYerSaat.DataCount() * 46 + 10 + 10; pnlYerTop.Size = new Size(pnlYerTop.Size.Width, 30 + qryYerSaat.DataCount() * 46 + 10); } else { //if (totalHeight + 30 + (qryYerSaat.DataCount() * 46) + 10 < pnlRezervasyonSaatSecim.Size.Height) pnlYerTop.Size = new Size(pnlYerTop.Size.Width, pnlRezervasyonSaatSecim.Size.Height - totalHeight); /*else*/ pnlYerTop.Size = new Size(pnlYerTop.Size.Width, 30 + qryYerSaat.DataCount() * 46 + 10); } pnlYerTop.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; } qryYer.Next(); } } tbFocus.Focus(); tbFocus.SendToBack(); }
private void TakvimOlustur() { if (acilanTarih.Month != takvimTarih.Month || !firstResize || lastYerIndex != YER_KODU.SelectedIndex || activate) { lastYerIndex = YER_KODU.SelectedIndex; acilanTarih = takvimTarih; activate = false; pnlTakvim.Controls.Clear(); List <string> dayList = new List <string>(); dayList.Add("Pazartesi"); dayList.Add("Salı"); dayList.Add("Çarşamba"); dayList.Add("Perşembe"); dayList.Add("Cuma"); dayList.Add("Cumartesi"); dayList.Add("Pazar"); List <DayOfWeek> dayListEn = new List <DayOfWeek>(); dayListEn.Add(DayOfWeek.Monday); dayListEn.Add(DayOfWeek.Tuesday); dayListEn.Add(DayOfWeek.Wednesday); dayListEn.Add(DayOfWeek.Thursday); dayListEn.Add(DayOfWeek.Friday); dayListEn.Add(DayOfWeek.Saturday); dayListEn.Add(DayOfWeek.Sunday); int weekCount = ArsLibrary.MonthWeekCount(takvimTarih); int pnlWidth = pnlTakvim.Width / 7; int pnlHeight = (pnlTakvim.Height - 30) / weekCount; for (int i = 0; i < 7; i++) { Panel pnlDay = new Panel(); pnlDay.Size = new Size(pnlWidth, 30); pnlDay.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; pnlDay.Location = new Point(i * pnlWidth, 0); Label lblGun = new Label(); lblGun.Text = dayList[i]; lblGun.Font = new Font("Arial", 9, FontStyle.Bold); lblGun.TextAlign = ContentAlignment.MiddleCenter; pnlDay.Controls.Add(lblGun); lblGun.Dock = DockStyle.Fill; pnlTakvim.Controls.Add(pnlDay); } DateTime date = takvimTarih; int month = date.Month; int year = date.Year; int daysThisMonth = DateTime.DaysInMonth(year, month); DateTime beginingOfThisMonth = new DateTime(year, month, 1); int basGun = -1; for (int i = 0; i < 7; i++) { if (beginingOfThisMonth.DayOfWeek == dayListEn[i]) { basGun = i; break; } } beginingOfThisMonth = beginingOfThisMonth.AddDays(-basGun); ArsSQLQry qrySaatAdet = new ArsSQLQry(); qrySaatAdet.SQLText = "SELECT COUNT(*) AS SAAT_ADET FROM [TBLREZERVASYONSAAT] WHERE /*WS*/"; if (YER_KODU.GetString() != "-1") { qrySaatAdet.SQLText += "YER_KODU = '" + YER_KODU.GetString() + "'/*WE*/"; } else { qrySaatAdet.SQLText += "1=1/*WE*/"; } qrySaatAdet.Open(); int saatAdet = qrySaatAdet.GetInt("SAAT_ADET"); ArsSQLQry qryDoluluk = new ArsSQLQry(); qryDoluluk.SQLText = "SELECT COUNT(*) AS DOLULUK, TARIH FROM [TBLREZERVASYONHAR] WHERE /*WS*/1=1 "; if (YER_KODU.GetString() != "-1") { qryDoluluk.SQLText += "AND YER_KODU = '" + YER_KODU.GetString() + "' "; } qryDoluluk.SQLText += "AND TARIH BETWEEN '" + beginingOfThisMonth.AddDays(-1).ToString("MM.dd.yyyy") + "' AND '" + beginingOfThisMonth.AddDays((weekCount * 7) + 1).ToString("MM.dd.yyyy") + "' AND ISNULL(REZ_OPS, 1) = 1/*WE*/ "; qryDoluluk.SQLText += "GROUP BY TARIH"; qryDoluluk.Open(); ArsSQLQry qryOpsiyon = new ArsSQLQry(); qryOpsiyon.SQLText = "SELECT COUNT(*) AS OPSIYON, TARIH FROM [TBLREZERVASYONHAR] WHERE /*WS*/1=1 "; if (YER_KODU.GetString() != "-1") { qryOpsiyon.SQLText += "AND YER_KODU = '" + YER_KODU.GetString() + "' "; } qryOpsiyon.SQLText += "AND TARIH BETWEEN '" + beginingOfThisMonth.AddDays(-1).ToString("MM.dd.yyyy") + "' AND '" + beginingOfThisMonth.AddDays((weekCount * 7) + 1).ToString("MM.dd.yyyy") + "' AND ISNULL(REZ_OPS, 1) = 2 AND OPSIYON_BITIS_TARIHI > '" + DateTime.Now.ToString("MM.dd.yyyy") + "'/*WE*/ "; qryOpsiyon.SQLText += "GROUP BY TARIH"; qryOpsiyon.Open(); for (int i = 0; i < weekCount; i++) { for (int j = 0; j < 7; j++) { int doluluk = 0; int opsiyon = 0; if (qryDoluluk.Found()) { for (int k = 0; k < qryDoluluk.DataCount(); k++) { if (qryDoluluk.GetDate("TARIH") == beginingOfThisMonth.ToString("dd.MM.yyyy")) { doluluk = qryDoluluk.GetInt("DOLULUK"); break; } qryDoluluk.Next(); } } if (qryOpsiyon.Found()) { for (int k = 0; k < qryOpsiyon.DataCount(); k++) { if (qryOpsiyon.GetDate("TARIH") == beginingOfThisMonth.ToString("dd.MM.yyyy")) { opsiyon = qryOpsiyon.GetInt("OPSIYON"); break; } qryOpsiyon.Next(); } } Panel pnlDay = new Panel(); pnlDay.Size = new Size(pnlWidth, pnlHeight); pnlDay.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; pnlDay.Location = new Point(j * pnlWidth, (i * pnlHeight) + 30); if (saatAdet == doluluk) { pnlDay.BackColor = Color.Red; } else if (saatAdet == opsiyon) { pnlDay.BackColor = Color.Orange; } pnlDay.MouseEnter += TakvimMouseEnter; pnlDay.MouseLeave += TakvimMouseLeave; pnlDay.DoubleClick += TakvimClick; pnlTakvim.ContextMenuStrip = msTakvim; ArsLabel lblTarih = new ArsLabel(); lblTarih.Text = beginingOfThisMonth.ToString("dd.MM.yyyy"); lblTarih.Font = new Font("Arial", 9, FontStyle.Bold); lblTarih.TextAlign = ContentAlignment.MiddleCenter; lblTarih.ArTag = 99; lblTarih.Visible = false; pnlDay.Controls.Add(lblTarih); Label lblGun = new Label(); lblGun.Text = beginingOfThisMonth.Day.ToString(); lblGun.Font = new Font("Arial", 18, FontStyle.Bold); lblGun.Size = new Size(pnlWidth, 26); if (beginingOfThisMonth.ToString("dd.MM.yyyy") == DateTime.Now.ToString("dd.MM.yyyy")) { lblGun.ForeColor = Color.FromArgb(50, 160, 220); } else if (beginingOfThisMonth.Month == month) { lblGun.ForeColor = Color.Gray; } else { lblGun.ForeColor = Color.FromArgb(205, 205, 205); } if (saatAdet == doluluk || saatAdet == opsiyon) { lblGun.ForeColor = Color.White; } lblGun.TextAlign = ContentAlignment.TopRight; pnlDay.Controls.Add(lblGun); lblGun.Location = new Point(0, 0); beginingOfThisMonth = beginingOfThisMonth.AddDays(1); pnlTakvim.Controls.Add(pnlDay); } } dtTarihBilgi.Value = takvimTarih; } }