예제 #1
0
        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();
        }
예제 #2
0
        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();
        }
예제 #3
0
        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;
            }
        }