Example #1
0
 private void buttonKullaniciyiSil_Click(object sender, EventArgs e)
 {
     if(listKullanici.SelectedItems.Count > 0)
     {
         KontrolFormu dialog = new KontrolFormu(listKullanici.SelectedItems[0].SubItems[0].Text + listKullanici.SelectedItems[0].SubItems[1].Text + "adlı kullanıcıyı silmek istediğinize emin misiniz? Kullanıcını anketleri de silinecektir.", true, this);
         dialog.Show();
     }
 }
Example #2
0
 public void veriAktarimiTamamlandi(Button veriBtn)
 {
     if (veriBtn.InvokeRequired)
     {
         setButtonValueCallBack btndelegate = new setButtonValueCallBack(veriAktarimiTamamlandi);
         this.buttonBilgiAktar.Invoke(btndelegate, new object[] { buttonBilgiAktar });
     }
     else
     {
         veriBtn.Enabled = true;
         KontrolFormu dialog = new KontrolFormu("Dosya Aktarımı Tamamlandı", false);
         dialog.Show();
     }
 }
Example #3
0
 private void btnStogaEkle_Click(object sender, EventArgs e)
 {
     if (txtStogaEkle.Text == String.Empty)
     {
         KontrolFormu dialog = new KontrolFormu("Lütfen eklenecek stok miktarını giriniz.", false);
         dialog.Show();
         textboxUrunAdi.Focus();
         return;
     }
     else
     {
         double c = Convert.ToDouble(textBoxUrunMiktari.Text) + Convert.ToDouble(txtStogaEkle.Text);
         textBoxUrunMiktari.Text = c.ToString();
         buttonSaveNewStok_Click(null, null);
         txtStogaEkle.Text = "";
     }
 }
Example #4
0
        public static SqlConnection getConnection()
        {
            SqlConnection cnn;
            try
            {
                cnn = new SqlConnection("server=.;database=ropv1;integrated security=true");
                cnn.Open();
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("SQL Servera bağlanırken bir sorun oluştu", false);
                dialog.Show();
                cnn = null;
            }

            return cnn;
        }
Example #5
0
        // ürün fotoğraf butonu
        private void button3_Click(object sender, EventArgs e)
        {
            Invoker dialog = new Invoker();

            if (dialog.Invoke() == DialogResult.OK)
            {
                ((Button)sender).Text = urunListesi[treeUrunAdi.SelectedNode.Parent.Index].urunAdi[treeUrunAdi.SelectedNode.Index];

                string newPath = Application.StartupPath + @"\resimler\" + urunListesi[treeUrunAdi.SelectedNode.Parent.Index].urunAdi[treeUrunAdi.SelectedNode.Index] + ".png";
                try
                {
                    System.IO.File.Copy(dialog.InvokeDialog.FileName, newPath, true);
                }
                catch
                {
                    KontrolFormu errorDialog = new KontrolFormu("Dosya kaydedilirken bir hata oluştu lütfen tekrar deneyiniz", false);
                    errorDialog.Show();
                }
            }
        }
Example #6
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            try
            {
                int kod = Convert.ToInt32(textBoxTeraziBarkodu.Text);
                if(kod < 10 && textBoxTeraziBarkodu.Text.Length < 2)
                {
                    textBoxTeraziBarkodu.Text = 0 + textBoxTeraziBarkodu.Text;
                }
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Yanlış bir değer girdiniz", false);
                dialog.Show();
                return;
            }

            Properties.Settings.Default.TeraziBarkod = textBoxTeraziBarkodu.Text;
            Properties.Settings.Default.Save();
            this.Close();
        }
Example #7
0
 private void buttonConnection_Click(object sender, EventArgs e)
 {
     if (buttonConnection.Image != Properties.Resources.baglantiOK)
     {
         if (baslat())
         {
             buttonConnection.Image = Properties.Resources.baglantiOK;
         }
         else
         {
             buttonConnection.Image = Properties.Resources.baglantiYOK;
             KontrolFormu dialog2 = new KontrolFormu("Hata! Sunucu başlatılamadı!", false);
             dialog2.Show();
             buttonConnection.Image = Properties.Resources.baglantiYOK;
         }
     }
 }
Example #8
0
        private static void Basla(string masaAdi, string departmanAdi, string garson, string yazdirilacakIndirim, string acilisZamani, string firmaAdi, string adresTelefon, string printerAdi, CrystalReportAdisyon rapor, string odenenMiktar)
        {
            rapor.Refresh();

            decimal odemesiYapilanMiktar = Convert.ToDecimal(odenenMiktar), indirim = Convert.ToDecimal(yazdirilacakIndirim);

            odemesiYapilanMiktar -= indirim;

            if (odemesiYapilanMiktar <= 0 && indirim <= 0)
            {
                ReportObjects ro = rapor.ReportDefinition.ReportObjects;
                ((LineObject)ro[name: "line4"]).ObjectFormat.EnableSuppress = true;
            }

            rapor.SetParameterValue("FirmaAdi", firmaAdi); // firma adı
            rapor.SetParameterValue("Garson", garson);
            rapor.SetParameterValue("Departman", departmanAdi);
            rapor.SetParameterValue("Masa", masaAdi);
            rapor.SetParameterValue("FirmaAdresTelefon", adresTelefon); // firma adres ve telefon
            rapor.SetParameterValue("AcilisZamani", acilisZamani);
            rapor.SetParameterValue("Indirim", indirim);
            rapor.SetParameterValue("OdenenMiktar", odemesiYapilanMiktar);
            try
            {
                rapor.PrintOptions.PrinterName = printerAdi;
                rapor.PrintToPrinter(1, false, 0, 0);
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Yazıcı bulunamadı\nLütfen ayarlarınızı kontrol edin", false);
                dialog.Show();
            }
        }
Example #9
0
        private static void Basla(string masaAdi, string departmanAdi, string firmaAdi, string yaziciAdi, string tanimliYaziciAdi, string garsonu, CrystalReportMutfakUrunIptal rapor)
        {
            rapor.Refresh();

            rapor.SetParameterValue("Masa", masaAdi);
            rapor.SetParameterValue("Departman", departmanAdi);
            rapor.SetParameterValue("FirmaAdi", firmaAdi); // firma adı
            rapor.SetParameterValue("CiktiAlinanYazici", tanimliYaziciAdi);
            rapor.SetParameterValue("Garson", garsonu);

            try
            {
                rapor.PrintOptions.PrinterName = yaziciAdi;
                rapor.PrintToPrinter(1, false, 0, 0);
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Yazıcı bulunamadı\nLütfen ayarlarınızı kontrol edin", false);
                dialog.Show();
                return;
            }

            SqlCommand cmd = SQLBaglantisi.getCommand("UPDATE Siparis SET CiktiAlindiMi=1 WHERE AdisyonID=(SELECT AdisyonID FROM Adisyon WHERE IptalMi=0 AND AcikMi=1 AND MasaAdi=@_MasaninAdi AND DepartmanAdi=@_DepartmanAdi) AND CiktiAlinanYazici=@_CiktiAlinanYazici AND Siparis.IptalMi=1");
            cmd.Parameters.AddWithValue("@_MasaninAdi", masaAdi);
            cmd.Parameters.AddWithValue("@_DepartmanAdi", departmanAdi);
            cmd.Parameters.AddWithValue("@_CiktiAlinanYazici", tanimliYaziciAdi);

            cmd.ExecuteNonQuery();

            cmd.Connection.Close();
            cmd.Connection.Dispose();
        }
Example #10
0
        public void odemeOnaylandi(string odemeTipiGelen, string odenenMiktarGelen, string secilipOdenenSiparisBilgileri)
        {
            string[] siparisler;
            try
            {
                siparisler = secilipOdenenSiparisBilgileri.Split('*');
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri alınırken hata oluştu, lütfen tekrar giriş yapınız", false);
                dialog.Show();
                return;
            }

            if (siparisler.Count() > 0 && siparisler[0] != "")
            {
                int adet;
                string yemeginAdi, tur;
                decimal yemeginFiyati, porsiyon;

                for (int i = 0; i < siparisler.Count(); i++)
                {
                    string[] detaylari = siparisler[i].Split('-');
                    adet = Convert.ToInt32(detaylari[0]);
                    yemeginAdi = detaylari[1];
                    yemeginFiyati = Convert.ToDecimal(detaylari[2]);
                    porsiyon = yemeginFiyati = Convert.ToDecimal(detaylari[3]);
                    tur = detaylari[4];

                    int listedeYeniGelenSiparisVarmi = -1; //ürün cinsi hesapta var mı bak

                    for (int j = 0; j < listOdenenler.Items.Count; j++)
                    {
                        if (yemeginAdi == listOdenenler.Items[j].SubItems[2].Text && (Double)porsiyon == Convert.ToDouble(listOdenenler.Items[j].SubItems[1].Text.Substring(0, listOdenenler.Items[j].SubItems[1].Text.Length - 1)) && tur == listOdenenler.Items[j].SubItems[1].Text[listOdenenler.Items[j].SubItems[1].Text.Length - 1].ToString())
                        {
                            listedeYeniGelenSiparisVarmi = j;
                            break;
                        }
                    }

                    if (listedeYeniGelenSiparisVarmi == -1) //yoksa ürünü hesaba ekle
                    {
                        listOdenenler.Items.Add(adet.ToString());
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add((Double)porsiyon + tur);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginAdi);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginFiyati.ToString("0.00"));
                        listOdenenler.Items[listOdenenler.Items.Count - 1].Font = new Font("Calibri", 18.75F, FontStyle.Bold);
                    }
                    else
                    {
                        listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text = (Convert.ToInt32(listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text) + adet).ToString();
                    }
                }
            }

            int odemeTipi = Convert.ToInt32(odemeTipiGelen);
            decimal odenenMiktar = Convert.ToDecimal(odenenMiktarGelen);

            if (odemeTipi == 101) // nakit
            {
                labelOdenenNakit.Text = (Convert.ToDecimal(labelOdenenNakit.Text) + odenenMiktar).ToString("0.00");
            }
            else if (odemeTipi == 102) // kredi kartı
            {
                labelOdenenKart.Text = (Convert.ToDecimal(labelOdenenKart.Text) + odenenMiktar).ToString("0.00");
            }
            else if (odemeTipi == 103)// yemek fişi
            {
                labelOdenenFis.Text = (Convert.ToDecimal(labelOdenenFis.Text) + odenenMiktar).ToString("0.00");
            }

            labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");

            toplamOdemeVeIndirim += paraUstu + odenenMiktar;

            paraUstu = 0;

            menuFormu.labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            textBoxSecilenlerinTutari.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            textNumberOfItem.Text = textBoxSecilenlerinTutari.Text;
            buttonDeleteText_Click(null, null);
        }
Example #11
0
        private void buttonUrunOzellikleri_Click(object sender, EventArgs e)
        {
            if (pinForm != null)
            {
                if (pinForm.Visible)
                {
                    this.Invoke((MethodInvoker)delegate
                    {
                        pinForm.Close();
                    });
                    pinForm = null;
                }
            }
            leftPanelView.Nodes.Clear();
            splitPanel.Panel2.Controls.Clear();

            switch (whichCheckBoxShouldUncheck) // önceden seçili olan checkboxı kaldır
            {
                #region
                case 1:
                    reportCheckBox.Image = global::ROPv1.Properties.Resources.reportscolor;
                    reportCheckBox.ImageAlign = ContentAlignment.TopCenter;
                    reportCheckBox.ForeColor = SystemColors.ActiveCaption;
                    break;
                case 2:
                    stokCheckBox.Image = global::ROPv1.Properties.Resources.stockcolor;
                    stokCheckBox.ImageAlign = ContentAlignment.TopCenter;
                    stokCheckBox.ForeColor = SystemColors.ActiveCaption;
                    break;
                case 3:
                    ayarCheckBox.Image = global::ROPv1.Properties.Resources.settingscolor;
                    ayarCheckBox.ImageAlign = ContentAlignment.TopCenter;
                    ayarCheckBox.ForeColor = SystemColors.ActiveCaption;
                    break;
                case 4:
                    anketCheckBox.Image = global::ROPv1.Properties.Resources.anket;
                    anketCheckBox.ImageAlign = ContentAlignment.TopCenter;
                    anketCheckBox.ForeColor = SystemColors.ActiveCaption;
                    break;
                default:
                    break;
                #endregion
            }

            whichCheckBoxShouldUncheck = 0;

            if (File.Exists("urunler.xml"))
            {
                UrunlerTusu urunlerTusuView = new UrunlerTusu();
                splitPanel.Panel2.Controls.Add(urunlerTusuView);
                urunlerTusuView.Dock = DockStyle.Fill;
            }
            else
            {
                KontrolFormu dialog = new KontrolFormu("Lütfen önce ürünleri tanımlayınız", false);
                dialog.Show();
            }
        }
Example #12
0
        // Tüm kategoriler içinden kategoriyi silme butonuna basıldı
        private void deleteNewKategori(object sender, EventArgs e)
        {
            if (treeNewKategori.SelectedNode.Text == "Kategorisiz Ürünler")
            {
                KontrolFormu dialog2 = new KontrolFormu("Kategorisiz ürünler silinemez", false);
                dialog2.Show();
                return;
            }

            for (int i = 0; i < menuListesi.Count; i++)
            {
                for (int j = 0; j < menuListesi[i].menukategorileri.Count(); j++)
                {
                    if (menuListesi[i].menukategorileri[j] == treeNewKategori.SelectedNode.Text)
                    {
                        KontrolFormu dialog = new KontrolFormu("Kategoriyi silmeden önce bulunduğu menülerden çıkarmalısınız", false);
                        dialog.Show();
                        return;
                    }
                }
            }

            //Kategoriyi tamamen silme uyarısı
            DialogResult eminMisiniz;

            KontrolFormu dialog22 = new KontrolFormu(treeNewKategori.SelectedNode.Text + " adlı kategoriyi silmek istediğinize emin misiniz?", true);
            eminMisiniz = dialog22.ShowDialog();

            if (eminMisiniz == DialogResult.Yes)
            {
                //kategoriyi listemizden çıkarıp kaydediyoruz
                kategoriListesi[0].kategoriler.Remove(treeNewKategori.SelectedNode.Text);
                XmlSave.SaveRestoran(kategoriListesi, "kategoriler.xml");

                // görünümden çıkarıyoruz
                treeNewKategori.Nodes[treeNewKategori.SelectedNode.Index].Remove();

                if (kategoriListesi[0].kategoriler.Count < 2)
                    buttonDeleteNewKategori.Enabled = false;
            }
        }
Example #13
0
        // Menüyü kaydetme butonu basıldı / sadece menünün adı kaydedilir, kategoriler zaten ekleme çıkarma anında kaydediliyor
        private void saveMenuButtonPressed(object sender, EventArgs e)
        {
            if (textboxMenuName.Text == "Yeni Menü" || textboxMenuName.Text == "")
            {
                KontrolFormu dialog = new KontrolFormu("Eksik veya hatalı bilgi girdiniz, lütfen kontrol ediniz", false);
                dialog.Show();
                return;
            }
            //Yeni menüyü kaydet tuşu. ekle tuşuna basıp bilgileri girdikten sonra kaydete basıyoruz önce girilen bilgilerin doğruluğu
            //kontrol edilir sonra yeni menü mü ekleniyor yoksa eski menü mü düzenleniyor ona bakılır
            if (newMenuForm.Text == "Yeni Menü") // yeni menü ekleniyor
            {
                //menü ismi görünüme eklenir
                treeMenuName.Nodes.Add(textboxMenuName.Text);

                Menuler newMenu = new Menuler();
                newMenu.menuAdi = textboxMenuName.Text;

                newMenuForm.Text = textboxMenuName.Text;

                //yeni menü listeye eklenip kaydedilir
                menuListesi.Add(newMenu);
                XmlSave.SaveRestoran(menuListesi, "menu.xml");

                treeMenuName.SelectedNode = treeMenuName.Nodes[treeMenuName.Nodes.Count - 1];
                treeMenuName.Focus();

                buttonDeleteMenu.Visible = true;
                buttonCancel.Visible = false;

                buttonAddNewKategori.Enabled = true;
                treeNewKategori.Enabled = true;
                treeMenuName.Enabled = true;

                if (treeMenuName.Nodes.Count > 1)
                    buttonDeleteMenu.Enabled = true;
                KontrolFormu dialog = new KontrolFormu("Yeni Menü Kaydedilmiştir", false);
                dialog.Show();
            }
            else // eski menü düzenleniyor
            {
                //eski menünün listedeki ismi güncellenip kaydedilir
                menuListesi[treeMenuName.SelectedNode.Index].menuAdi = textboxMenuName.Text;
                XmlSave.SaveRestoran(menuListesi, "menu.xml");

                //eski menünün görünümdeki ismi güncellenir
                treeMenuName.Nodes[treeMenuName.SelectedNode.Index].Text = textboxMenuName.Text;
                newMenuForm.Text = textboxMenuName.Text;
                KontrolFormu dialog = new KontrolFormu("Menü Güncellenmiştir", false);
                dialog.Show();
            }
            buttonDeleteKategori.Enabled = true;
            //Nodeların eklenmesinden sonra taşma varsa bile ekrana sığması için font boyutunu küçültüyoruz
            foreach (TreeNode node in treeMenuName.Nodes)
            {
                while (treeMenuName.Width - 12 < System.Windows.Forms.TextRenderer.MeasureText(node.Text, new Font(treeMenuName.Font.FontFamily, treeMenuName.Font.Size, treeMenuName.Font.Style)).Width)
                {
                    treeMenuName.Font = new Font(treeMenuName.Font.FontFamily, treeMenuName.Font.Size - 0.5f, treeMenuName.Font.Style);
                }
            }
        }
Example #14
0
        private void buttonYaziciyiKaydet_Click(object sender, EventArgs e)
        {
            KontrolFormu dialog;

            if (comboYukluYazicilar.Text.Contains("-") || comboYukluYazicilar.Text.Contains("<") || comboYukluYazicilar.Text.Contains(">") || comboYukluYazicilar.Text.Contains("&") || comboYukluYazicilar.Text.Contains("=") || comboYukluYazicilar.Text.Contains("*"))
            {
                dialog = new KontrolFormu("Yazıcı adında -, &, <, >, * karakterleri bulunamaz, lütfen yazıcınızı tekrar başka bir isimle yükleyin veya başka bir yazıcı seçin ", false);
                dialog.Show();
                return;
            }

            if (comboYaziciAdi.Text == "Yeni Yazıcı" || comboBoxFirmaAdi.Text == "" || comboYukluYazicilar.Text == "")
            {
                dialog = new KontrolFormu("Eksik veya hatalı bilgi girdiniz, lütfen kontrol ediniz", false);
                dialog.Show();
                return;
            }

            //Yeni yazıcıyı kaydet tuşu. ekle tuşuna basıp bilgileri girdikten sonra kaydete basıyoruz önce girilen bilgilerin doğruluğu
            //kontrol edilir sonra yazıcının treeviewdaki yeri + ayarlardaki yeri tag bilgisi olarak eklenir
            if (newYaziciForm.Text == "Yeni Yazıcı")
            {
                for (int i = 0; i < yazicilar.Count; i++)
                {
                    if (string.Equals(yazicilar[i][0], comboYaziciAdi.Text, StringComparison.CurrentCultureIgnoreCase))
                    {
                        dialog = new KontrolFormu("Aynı yazıcı ismi sistemde kayıtlıdır. Yeni yazıcınızı Adisyon5/Mutfak5 gibi kaydediniz.", false);

                        dialog.Show();
                        return;
                    }
                }

                treeYaziciAdi.Nodes.Add(comboYaziciAdi.Text);

                SqlCommand cmd = SQLBaglantisi.getCommand("INSERT INTO Yazici(YaziciAdi,FirmaAdi,FirmaAdres,Yazici,Telefon) VALUES(@_YaziciAdi,@_FirmaAdi,@_FirmaAdres,@_Yazici,@_Telefon)");
                cmd.Parameters.AddWithValue("@_YaziciAdi", comboYaziciAdi.Text);
                cmd.Parameters.AddWithValue("@_FirmaAdi", comboBoxFirmaAdi.Text);
                cmd.Parameters.AddWithValue("@_FirmaAdres", textBoxAdres.Text);
                cmd.Parameters.AddWithValue("@_Yazici", comboYukluYazicilar.Text);
                cmd.Parameters.AddWithValue("@_Telefon", textBoxTelefon.Text);

                cmd.ExecuteNonQuery();

                cmd.Connection.Close();
                cmd.Connection.Dispose();

                string[] yazici = new string[5];
                yazici[0] = comboYaziciAdi.Text; // yazici adi
                yazici[1] = comboBoxFirmaAdi.Text; // firma adi
                yazici[2] = textBoxAdres.Text; // firma adres
                yazici[3] = comboYukluYazicilar.Text; // yazici
                yazici[4] = textBoxTelefon.Text; // telefon
                yazicilar.Add(yazici);

                newYaziciForm.Text = comboYaziciAdi.Text;

                treeYaziciAdi.SelectedNode = treeYaziciAdi.Nodes[treeYaziciAdi.Nodes.Count - 1];
                treeYaziciAdi.Focus();

                buttonYaziciyiSil.Visible = true;
                buttonIptal.Visible = false;

                if (treeYaziciAdi.Nodes.Count > 1)
                    buttonYaziciyiSil.Enabled = true;

                bool firmaYok = true;
                for (int i = 0; i < comboBoxFirmaAdi.Items.Count; i++)
                {
                    if (comboBoxFirmaAdi.Items[i].ToString() == yazici[1])
                    {
                        firmaYok = false;
                        break;
                    }
                }
                if (firmaYok)
                    comboBoxFirmaAdi.Items.Add(yazici[1]);

                dialog = new KontrolFormu("Yeni Yazıcı Bilgileri Kaydedilmiştir", false);
                dialog.Show();
            }
            else
            {
                if (comboYaziciAdi.Text != yazicilar[treeYaziciAdi.SelectedNode.Index][0])
                {
                    for (int i = 0; i < yazicilar.Count; i++)
                    {
                        if (string.Equals(yazicilar[i][0], comboYaziciAdi.Text, StringComparison.CurrentCultureIgnoreCase))
                        {
                            dialog = new KontrolFormu("Aynı yazıcı ismi sistemde kayıtlıdır. Yeni yazıcınızı Adisyon5/Mutfak5 gibi kaydediniz.", false);
                            dialog.Show();
                            return;
                        }
                    }
                }

                // Yazıcıda değişiklik yapıldıktan sonra basılan kaydet butonu.
                SqlCommand cmd = SQLBaglantisi.getCommand("UPDATE Yazici SET YaziciAdi=@yaziciAdi,FirmaAdi=@firmaAdi,FirmaAdres=@firmaAdres,Yazici=@yazici,Telefon=@telefon WHERE YaziciAdi=@yaziciAdi2");
                cmd.Parameters.AddWithValue("@yaziciAdi", comboYaziciAdi.Text);
                cmd.Parameters.AddWithValue("@firmaAdi", comboBoxFirmaAdi.Text);
                cmd.Parameters.AddWithValue("@firmaAdres", textBoxAdres.Text);
                cmd.Parameters.AddWithValue("@yazici", comboYukluYazicilar.Text);
                cmd.Parameters.AddWithValue("@telefon", textBoxTelefon.Text);
                cmd.Parameters.AddWithValue("@yaziciAdi2", yazicilar[treeYaziciAdi.SelectedNode.Index][0]);
                cmd.ExecuteNonQuery();

                cmd.Connection.Close();
                cmd.Connection.Dispose();

                yazicilar[treeYaziciAdi.SelectedNode.Index][0] = comboYaziciAdi.Text;
                yazicilar[treeYaziciAdi.SelectedNode.Index][1] = comboBoxFirmaAdi.Text;
                yazicilar[treeYaziciAdi.SelectedNode.Index][2] = textBoxAdres.Text;
                yazicilar[treeYaziciAdi.SelectedNode.Index][3] = comboYukluYazicilar.Text;
                yazicilar[treeYaziciAdi.SelectedNode.Index][4] = textBoxTelefon.Text;

                treeYaziciAdi.Nodes[treeYaziciAdi.SelectedNode.Index].Text = comboYaziciAdi.Text;
                newYaziciForm.Text = comboYaziciAdi.Text;

                dialog = new KontrolFormu("Yazıcı Bilgileri Güncellenmiştir", false);

                dialog.Show();
            }

            //Nodeların eklenmesinden sonra taşma varsa bile ekrana sığması için font boyutunu küçültüyoruz
            foreach (TreeNode node in treeYaziciAdi.Nodes)
            {
                while (treeYaziciAdi.Width - 12 < System.Windows.Forms.TextRenderer.MeasureText(node.Text, new Font(treeYaziciAdi.Font.FontFamily, treeYaziciAdi.Font.Size, treeYaziciAdi.Font.Style)).Width)
                {
                    treeYaziciAdi.Font = new Font(treeYaziciAdi.Font.FontFamily, treeYaziciAdi.Font.Size - 0.5f, treeYaziciAdi.Font.Style);
                }
            }
        }
Example #15
0
        private void buttonYaziciyiSil_Click(object sender, EventArgs e)
        {
            if (treeYaziciAdi.SelectedNode == null)
                return;
            List<KategorilerineGoreUrunler> urunListesi = new List<KategorilerineGoreUrunler>();

            XmlLoad<KategorilerineGoreUrunler> loadInfoUrun = new XmlLoad<KategorilerineGoreUrunler>();
            KategorilerineGoreUrunler[] infoUrun = loadInfoUrun.LoadRestoran("urunler.xml");
            urunListesi.AddRange(infoUrun);

            for (int i = 0; i < urunListesi.Count; i++)
                for (int j = 0; j < urunListesi[i].urunYazicisi.Count; j++)
                {
                    if (comboYaziciAdi.Text == urunListesi[i].urunYazicisi[j])
                    {
                        KontrolFormu dialog2 = new KontrolFormu("Yazıcıya bağlı ürünler bulunmakta,\nönce -Ürün Özellikleri-'ni kullanarak yazıcıları değiştiriniz", false);
                        dialog2.Show();
                        return;
                    }

                }

            DialogResult eminMisiniz;

            KontrolFormu dialog = new KontrolFormu(treeYaziciAdi.SelectedNode.Text + " adlı yazıcıyı silmek istediğinize emin misiniz?", true);
            eminMisiniz = dialog.ShowDialog();

            if (eminMisiniz == DialogResult.Yes)
            {
                SqlCommand cmd = SQLBaglantisi.getCommand("DELETE FROM Yazici WHERE YaziciAdi='" + yazicilar[treeYaziciAdi.SelectedNode.Index][0] + "'");

                cmd.ExecuteNonQuery();

                cmd.Connection.Close();
                cmd.Connection.Dispose();

                treeYaziciAdi.Nodes[treeYaziciAdi.SelectedNode.Index].Remove();
                yazicilar.RemoveAt(treeYaziciAdi.SelectedNode.Index);

                if (treeYaziciAdi.Nodes.Count < 2)
                    buttonYaziciyiSil.Enabled = false;

                treeYaziciAdi_AfterSelect(null, null);
            }
        }
Example #16
0
        private void buttonAdisyonYazdir_Click(object sender, EventArgs e)
        {
            if (yaziciForm != null)
            {
                yaziciForm.BringToFront();
                return;
            }

            if (Properties.Settings.Default.Server == 2) //server
            {
                // yazıcıların içerisinde Adisyon ismi ile başlayan yazıcı var mı diye bak varsa o yazıcıya gönder yoksa
                // Show(); ile yazıcı seçim formu göster. seçildiğinde seçilen yazıcıya gönder

                List<string[]> adisyonYazicilari = new List<string[]>();
                List<string[]> digerYazicilar = new List<string[]>();

                SqlCommand cmd = SQLBaglantisi.getCommand("SELECT YaziciAdi,FirmaAdi,FirmaAdres,Yazici,Telefon FROM Yazici");
                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    string[] yazici = new string[5];

                    yazici[0] = dr.GetString(0); // yazici adı
                    yazici[1] = dr.GetString(1); // firma adı
                    yazici[2] = dr.GetString(2); // firma adres
                    yazici[3] = dr.GetString(3); // yazıcı windows adı
                    yazici[4] = dr.GetString(4); // telefon

                    try
                    {
                        if (yazici[0].Substring(0, 7) == "Adisyon")
                        {
                            adisyonYazicilari.Add(yazici);
                        }
                        else
                        {
                            digerYazicilar.Add(yazici);
                        }
                    }
                    catch
                    {
                        digerYazicilar.Add(yazici);
                    }

                }

                cmd.Connection.Close();
                cmd.Connection.Dispose();

                if (adisyonYazicilari.Count == 1) // tek adisyon yazıcısı var direk gönder
                {
                    yazdir(adisyonYazicilari[0]);
                }
                else if (adisyonYazicilari.Count > 1) // 1 den fazla adisyon yazıcısı var hangisinin istendiğini sor
                {
                    yaziciForm = new YaziciFormu(this, digerYazicilar, adisyonYazicilari);
                    yaziciForm.Show();
                }
                else if (digerYazicilar.Count > 0)// adisyon yazıcısı yok, olan yazıcıları göster
                {
                    yaziciForm = new YaziciFormu(this, digerYazicilar);
                    yaziciForm.Show();
                }
                else // hata mesajı, lütfen yazıcı yükleyiniz
                {
                    KontrolFormu dialog = new KontrolFormu("Yüklü yazıcı bulunamadı, lütfen yazıcı yükleyin", false);
                    dialog.Show();
                    return;
                }
            }
            else // client
            {
                // yazıcılar serverdan istenir
                menuFormu.masaFormu.hesapFormundanYazicilariIste("YaziciIstegi", masaAdi, departmanAdi);
            }
        }
Example #17
0
        // serverdan yazıcılar geldi
        public void yazicilarGeldi(string aYazicilari, string dYazicilari, string garson, string acilisZamani)
        {
            this.garson = garson;
            this.acilisZamaniString = acilisZamani;

            string[] adisyonYaziciDizisi, digerYaziciDizisi;

            List<string[]> adisyonYazicilari = new List<string[]>();
            List<string[]> digerYazicilar = new List<string[]>();
            try
            {
                //Gelen mesajı * ile ayır
                adisyonYaziciDizisi = aYazicilari.Split('*');
                digerYaziciDizisi = dYazicilari.Split('*');
            }
            catch (Exception)
            {
                KontrolFormu dialog = new KontrolFormu("Yazıcıları alırken bir hata oluştu, lütfen tekrar deneyiniz", false);
                dialog.Show();
                return;
            }

            for (int i = 0; i < adisyonYaziciDizisi.Count(); i++)
            {
                string[] detaylari = adisyonYaziciDizisi[i].Split('-');
                adisyonYazicilari.Add(detaylari);
            }
            for (int i = 0; i < digerYaziciDizisi.Count(); i++)
            {
                string[] detaylari = digerYaziciDizisi[i].Split('-');
                digerYazicilar.Add(detaylari);
            }

            if (adisyonYazicilari.Count == 1) // tek adisyon yazıcısı var direk gönder
            {
                yazdir(adisyonYazicilari[0]);
            }
            else if (adisyonYazicilari.Count > 1) // 1 den fazla adisyon yazıcısı var hangisinin istendiğini sor
            {
                yaziciForm = new YaziciFormu(this, digerYazicilar, adisyonYazicilari);
                yaziciForm.Show();
            }
            else if (digerYazicilar.Count > 0)// adisyon yazıcısı yok, olan yazıcıları göster
            {
                yaziciForm = new YaziciFormu(this, digerYazicilar);
                yaziciForm.Show();
            }
            else // hata mesajı, lütfen yazıcı yükleyiniz
            {
                KontrolFormu dialog = new KontrolFormu("Yüklü yazıcı bulunamadı, lütfen yazıcı yükleyin", false);
                dialog.Show();
                return;
            }
        }
Example #18
0
        // yazıcı formundan dönen cevap
        public void yazdir(string[] yaziciBilgileri)
        {
            DateTime acilisZamani;

            decimal Odenecek = 0, odenenMiktar = 0;
            for (int i = 0; i < listUrunFiyat.Items.Count; i++)
            {
                Odenecek += Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text);
            }

            odenenMiktar = Odenecek - Convert.ToDecimal(labelKalanHesap.Text);

            if (Properties.Settings.Default.Server == 2) //server
            {
                // masaya bakan ilk garsonun ismini döndüren sql sorgusu
                SqlCommand cmd = SQLBaglantisi.getCommand("SELECT TOP 1 Garsonu,AcilisZamani FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE MasaAdi='" + masaAdi + "' AND DepartmanAdi='" + departmanAdi + "' AND AcikMi=1 ORDER BY VerilisTarihi ASC");
                SqlDataReader dr = cmd.ExecuteReader();
                dr.Read();

                try // açık
                {
                    garson = dr.GetString(0);
                    acilisZamani = dr.GetDateTime(1);
                }
                catch
                {
                    KontrolFormu dialog = new KontrolFormu("Adisyon bilgileri alınırken hata oluştu, lütfen tekrar deneyiniz", false);
                    dialog.Show();
                    return;
                }
                cmd.Connection.Close();
                cmd.Connection.Dispose();

                decimal yazdirilacakIndirim = Convert.ToDecimal(labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 11));

                asyncYaziciyaGonder(masaAdi, departmanAdi, garson, yazdirilacakIndirim, acilisZamani, yaziciBilgileri[1], yaziciBilgileri[2] + " " + yaziciBilgileri[4], yaziciBilgileri[3], raporAdisyon, odenenMiktar).Join();
            }
            else
            {
                decimal yazdirilacakIndirim = Convert.ToDecimal(labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 11));

                acilisZamani = Convert.ToDateTime(acilisZamaniString);

                menuFormu.masaFormu.hesapFormundanAdisyonYazdir(masaAdi, departmanAdi, garson, yazdirilacakIndirim, acilisZamani, yaziciBilgileri[1], yaziciBilgileri[2] + " " + yaziciBilgileri[4], yaziciBilgileri[3], odenenMiktar);
            }
        }
Example #19
0
        public void odenenlerGeldi(string odenenSiparisler, string odemeler)
        {
            string[] siparisler;
            try
            {
                siparisler = odenenSiparisler.Split('*');
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri alınırken hata oluştu, lütfen tekrar giriş yapınız", false);
                dialog.Show();
                return;
            }

            if (siparisler.Count() > 0 && siparisler[0] != "")
            {
                decimal yemeginFiyati, porsiyon;
                int adet;
                string yemeginAdi, tur = "P";
                bool turBool;

                for (int i = 0; i < siparisler.Count(); i++)
                {
                    string[] detaylari = siparisler[i].Split('-');
                    yemeginFiyati = Convert.ToDecimal(detaylari[0]);
                    adet = Convert.ToInt32(detaylari[1]);
                    yemeginAdi = detaylari[2];
                    porsiyon = Convert.ToDecimal(detaylari[3]);
                    turBool = Convert.ToBoolean(detaylari[4]);

                    if (turBool)
                        tur = "K";

                    int gruptaYeniGelenSiparisVarmi = -1; //ürün cinsi hesapta var mı bak
                    for (int j = 0; j < listOdenenler.Items.Count; j++)
                    {
                        if (yemeginAdi == listOdenenler.Items[j].SubItems[2].Text && (Double)porsiyon == Convert.ToDouble(listOdenenler.Items[j].SubItems[1].Text.Substring(0, listOdenenler.Items[j].SubItems[1].Text.Length - 1)) && tur == listOdenenler.Items[j].SubItems[1].Text[listOdenenler.Items[j].SubItems[1].Text.Length - 1].ToString())
                        {
                            gruptaYeniGelenSiparisVarmi = j;
                            break;
                        }
                    }

                    if (gruptaYeniGelenSiparisVarmi == -1) //yoksa ürünü hesaba ekle
                    {
                        listOdenenler.Items.Add(adet.ToString());
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add((Double)porsiyon + tur);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginAdi);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginFiyati.ToString("0.00"));
                        listOdenenler.Items[listOdenenler.Items.Count - 1].Font = new Font("Calibri", 18.75F, FontStyle.Bold);
                    }
                    else // varsa ürünün hesaptaki değerlerini istenilene göre arttır
                    {
                        listOdenenler.Items[gruptaYeniGelenSiparisVarmi].SubItems[0].Text = (Convert.ToDouble(listOdenenler.Items[gruptaYeniGelenSiparisVarmi].SubItems[0].Text) + adet).ToString();
                    }
                }

                if (this.listOdenenler.Items.Count > 0)
                {
                    int itemsCount = this.listOdenenler.Items.Count;
                    int itemHeight = this.listOdenenler.Items[0].Bounds.Height;
                    int VisiableItem = (int)this.listOdenenler.ClientRectangle.Height / itemHeight;
                    if (itemsCount >= VisiableItem)
                    {
                        listOdenenler.Columns[2].Width = urunBoyu;
                        listOdenenler.Columns[3].Width = fiyatBoyu;
                    }
                }
            }

            string[] odeme;
            try
            {
                odeme = odemeler.Split('*');
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri alınırken hata oluştu, lütfen tekrar giriş yapınız", false);
                dialog.Show();
                return;
            }

            if (odeme.Count() > 0 && odeme[0] != "")
            {
                int odemeTipi;
                decimal odenenMiktar;

                for (int i = 0; i < odeme.Count(); i++)
                {
                    string[] detaylari = siparisler[i].Split('-');
                    odemeTipi = Convert.ToInt32(detaylari[0]);
                    odenenMiktar = Convert.ToDecimal(detaylari[1]);
                    if (odemeTipi == 101) // nakit
                    {
                        labelOdenenNakit.Text = (Convert.ToDecimal(labelOdenenNakit.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 102) // kredi kartı
                    {
                        labelOdenenKart.Text = (Convert.ToDecimal(labelOdenenKart.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 103) // yemek fişi
                    {
                        labelOdenenFis.Text = (Convert.ToDecimal(labelOdenenFis.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 104) // indirim TL
                    {
                        labelIndirimTLTutar.Text = odenenMiktar.ToString("0.00");
                        indirim = odenenMiktar;

                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 9);
                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(0, labelIndirimToplam.Text.Length - 1); labelIndirimToplam.Text = "(indirim:" + (Convert.ToDecimal(labelIndirimToplam.Text) + odenenMiktar).ToString("0.00") + ")";

                        if (odenenMiktar == 0)
                        {
                            labelIndirimTL.Visible = false;
                            labelIndirimTLTutar.Visible = false;
                            if (!labelIndirimYuzde.Visible) // eğer yüzdeli indirim de yoksa labelları kaldır
                            {
                                labelIndirimToplam.Visible = false;
                            }
                        }
                        else
                        {
                            labelIndirimToplam.Visible = true;
                            labelIndirimTL.Visible = true;
                            labelIndirimTLTutar.Visible = true;
                        }
                    }
                    else // indirim Yüzde
                    {
                        indirimYuzde = odenenMiktar;
                        odenenMiktar = toplamHesap * odemeTipi / 100;

                        if (indirimYuzde != odenenMiktar)// hesapta değişiklik yapılmış odenen miktarı güncelle
                        {
                            menuFormu.masaFormu.hesapFormundanIndirim(masaAdi, departmanAdi, "Indirim", odemeTipi, odenenMiktar, "");
                        }

                        labelIndirimYuzdeTutar.Text = odenenMiktar.ToString("0.00");

                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 9);
                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(0, labelIndirimToplam.Text.Length - 1);
                        labelIndirimToplam.Text = "(indirim:" + (Convert.ToDecimal(labelIndirimToplam.Text) + odenenMiktar).ToString("0.00") + ")";

                        if (odenenMiktar == 0)
                        {
                            labelIndirimYuzde.Visible = false;
                            labelIndirimYuzdeTutar.Visible = false;
                            if (!labelIndirimTL.Visible) // eğer normal indirim de yoksa labelları kaldır
                            {
                                labelIndirimToplam.Visible = false;
                            }
                        }
                        else
                        {
                            labelIndirimToplam.Visible = true;
                            labelIndirimYuzde.Visible = true;
                            labelIndirimYuzdeTutar.Visible = true;
                        }
                    }
                    toplamOdemeVeIndirim -= odenenMiktar;
                }
            }

            textBoxSecilenlerinTutari.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            textNumberOfItem.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
        }
Example #20
0
        private void girisButtonPressed(object sender, EventArgs e)
        {
            if (adminForm == null)
            {
                if (!File.Exists("tempfiles.xml")) // ilk açılışta veya bir sıkıntı sonucu kategoriler dosyası silinirse kendi default kategorilerimizi giriyoruz.
                {
                    infoKullanici = new UItemp[1];

                    infoKullanici[0] = new UItemp();
                    infoKullanici[0].UIN = (new UnicodeEncoding()).GetBytes("Adınız");
                    infoKullanici[0].UIS = (new UnicodeEncoding()).GetBytes("Soy Adınız");
                    infoKullanici[0].UIUN = (new UnicodeEncoding()).GetBytes("admin");
                    infoKullanici[0].UIU = (new UnicodeEncoding()).GetBytes("Yönetici");

                    infoKullanici[0].UIPN = PasswordHash.CreateHash("0000");
                    infoKullanici[0].UIPW = PasswordHash.CreateHash("00000");
                    infoKullanici[0].UIY[0] = PasswordHash.CreateHash("true");
                    infoKullanici[0].UIY[1] = PasswordHash.CreateHash("true");
                    infoKullanici[0].UIY[2] = PasswordHash.CreateHash("true");
                    infoKullanici[0].UIY[3] = PasswordHash.CreateHash("true");
                    infoKullanici[0].UIY[4] = PasswordHash.CreateHash("true");

                    XmlSave.SaveRestoran(infoKullanici, "tempfiles.xml");

                    File.SetAttributes("tempfiles.xml", FileAttributes.Archive);
                }
                XmlLoad<UItemp> loadInfoKullanicilar = new XmlLoad<UItemp>();
                infoKullanici = loadInfoKullanicilar.LoadRestoran("tempfiles.xml");

                string[] username = new string[1];
                username[0] = userNameTextBox.getNameText(); //name lazım olduğunda al
                string password = passwordTextBox.getPasswordText(); //password lazım olduğunda al

                int kullaniciAdi = -5;

                if (username[0] == "ropisimiz" && password == "roproprop")
                {
                    XmlSave.SaveRestoran(username, "sonKullanici.xml");

                    try
                    {
                        Task reportTask = Task.Factory.StartNew(
                            () =>
                            {
                                adminForm = new AdminGirisFormu(this, true);
                                adminForm.ShowDialog();
                            }
                            , CancellationToken.None
                            , TaskCreationOptions.None
                            , TaskScheduler.FromCurrentSynchronizationContext()
                            );

                        reportTask.Wait();
                    }
                    catch
                    { }

                    //Task.Factory.StartNew(() => adminForm.ShowDialog());
                    //adminForm.Show();
                }
                else
                {
                    for (int i = 0; i < infoKullanici.Count(); i++)
                    {
                        if (username[0] == (new UnicodeEncoding()).GetString(infoKullanici[i].UIUN))
                        {
                            kullaniciAdi = i;
                            break;
                        }
                    }
                    if (kullaniciAdi != -5)
                    {
                        //bool flag = Helper.VerifyHash(password, "SHA512", infoKullanici[kullaniciAdi].UIPW);

                        bool flag = PasswordHash.ValidatePassword(password, infoKullanici[kullaniciAdi].UIPW);

                        bool adisyonDegistirebilirMi = false;

                        if (PasswordHash.ValidatePassword("true", infoKullanici[kullaniciAdi].UIY[3]))
                            adisyonDegistirebilirMi = true;

                        if (flag == true)
                        { //şifre doğru
                            XmlSave.SaveRestoran(username, "sonKullanici.xml");

                            try
                            {
                                Task reportTask = Task.Factory.StartNew(
                                    () =>
                                    {
                                        adminForm = new AdminGirisFormu(this, adisyonDegistirebilirMi);

                                        adminForm.ShowDialog();
                                    }
                                    , CancellationToken.None
                                    , TaskCreationOptions.None
                                    , TaskScheduler.FromCurrentSynchronizationContext()
                                    );

                                reportTask.Wait();
                            }
                            catch
                            { }
                            //Task.Factory.StartNew(() => adminForm.ShowDialog());
                        }
                        else
                        {
                            KontrolFormu dialog2 = new KontrolFormu("Yanlış kullanıcı adı/şifre girdiniz", false);
                            dialog2.Show();
                        }
                    }
                    else
                    {
                        KontrolFormu dialog2 = new KontrolFormu("Yanlış kullanıcı adı/şifre girdiniz", false);
                        dialog2.Show();
                    }
                }

                userNameTextBox = new WPF_UserControls.VerticalCenterTextBox();
                usernameBoxHost.Child = userNameTextBox;
                passwordTextBox = new WPF_UserControls.VerticalCenterPasswordBox();
                passwordBoxHost.Child = passwordTextBox;
            }
            else
            {
                this.SendToBack();
            }
        }
Example #21
0
        private void textBoxBarkod_TextChanged(object sender, EventArgs e)
        {
            if (((TextBox)sender).Text.Length == ((TextBox)sender).MaxLength)
            {
                if (textBoxBarkod.Text.Length < textBoxBarkod.MaxLength)
                {
                    KontrolFormu dialog = new KontrolFormu("Yanlış bir değer girdiniz, barkod 13 haneden oluşmalıdır", false);
                    dialog.Show();
                    return;
                }

                string urunBarkodu = textBoxBarkod.Text.Substring(8, 5);

                int barkoduArananUrununGrubu = -1, barkoduArananUrununGruptakiYeri = -1;

                for (int i = 0; i < urunListesi.Count; i++)
                {
                    for (int j = 0; j < urunListesi[i].urunBarkodu.Count; j++)
                    {
                        if (urunListesi[i].urunBarkodu[j] != "")
                        {
                            if (string.Equals(urunBarkodu, urunListesi[i].urunBarkodu[j], StringComparison.CurrentCultureIgnoreCase))
                            {
                                barkoduArananUrununGrubu = i;
                                barkoduArananUrununGruptakiYeri = j;
                                break;
                            }
                        }
                    }
                }

                if (barkoduArananUrununGrubu == -1)
                {
                    KontrolFormu dialog = new KontrolFormu("Yanlış bir değer girdiniz, barkod bulunamadı", false);
                    dialog.Show();
                    return;
                }
                else
                {
                    double porsiyonVeyaKilo = 0;

                    bool kiloMuAdetMi = Convert.ToBoolean(Convert.ToInt32(textBoxBarkod.Text.Substring(2, 1)));

                    if (kiloMuAdetMi)
                    {
                        porsiyonVeyaKilo = Convert.ToDouble(textBoxBarkod.Text.Substring(3, 2)) + (Convert.ToDouble(textBoxBarkod.Text.Substring(5, 3)) / 1000);
                    }
                    else
                    {
                        porsiyonVeyaKilo = Convert.ToInt32(textBoxBarkod.Text.Substring(3, 5));
                    }

                    if (porsiyonVeyaKilo == 0)
                        return;

                    int urununEklenecegiSira = 0;

                    string urunAdi = urunListesi[barkoduArananUrununGrubu].urunAdi[barkoduArananUrununGruptakiYeri],
                        urunPorsiyonFiyati = urunListesi[barkoduArananUrununGrubu].urunPorsiyonFiyati[barkoduArananUrununGruptakiYeri],
                        urunKiloFiyati = urunListesi[barkoduArananUrununGrubu].urunKiloFiyati[barkoduArananUrununGruptakiYeri];

                    string yazilacakFiyat;
                    string tur = "P";

                    if (kiloMuAdetMi)
                    {
                        yazilacakFiyat = urunKiloFiyati;
                        tur = "K";
                    }
                    else
                        yazilacakFiyat = urunPorsiyonFiyati;

                    if (!labelUrun1Ad.Visible)
                    {
                        buttonUrun1Cancel.Visible = true;
                        labelUrun1Ad.Text = urunAdi;
                        labelUrun1KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun1Fiyat.Text = yazilacakFiyat;

                        labelUrun1Ad.Visible = true;
                        labelUrun1KiloAdet.Visible = true;
                        labelUrun1Fiyat.Visible = true;
                    }
                    else if (!labelUrun2Ad.Visible)
                    {
                        urununEklenecegiSira = 1;
                        buttonUrun2Cancel.Visible = true;
                        labelUrun2Ad.Text = urunAdi;
                        labelUrun2KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun2Fiyat.Text = yazilacakFiyat;

                        labelUrun2Ad.Visible = true;
                        labelUrun2KiloAdet.Visible = true;
                        labelUrun2Fiyat.Visible = true;
                    }
                    else if (!labelUrun3Ad.Visible)
                    {
                        urununEklenecegiSira = 2;
                        buttonUrun3Cancel.Visible = true;
                        labelUrun3Ad.Text = urunAdi;
                        labelUrun3KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun3Fiyat.Text = yazilacakFiyat;

                        labelUrun3Ad.Visible = true;
                        labelUrun3KiloAdet.Visible = true;
                        labelUrun3Fiyat.Visible = true;
                    }
                    else if (!labelUrun4Ad.Visible)
                    {
                        urununEklenecegiSira = 3;
                        buttonUrun4Cancel.Visible = true;
                        labelUrun4Ad.Text = urunAdi;
                        labelUrun4KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun4Fiyat.Text = yazilacakFiyat;

                        labelUrun4Ad.Visible = true;
                        labelUrun4KiloAdet.Visible = true;
                        labelUrun4Fiyat.Visible = true;
                    }
                    else if (!labelUrun5Ad.Visible)
                    {
                        urununEklenecegiSira = 4;
                        buttonUrun5Cancel.Visible = true;
                        labelUrun5Ad.Text = urunAdi;
                        labelUrun5KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun5Fiyat.Text = yazilacakFiyat;

                        labelUrun5Ad.Visible = true;
                        labelUrun5KiloAdet.Visible = true;
                        labelUrun5Fiyat.Visible = true;
                    }
                    else if (!labelUrun6Ad.Visible)
                    {
                        urununEklenecegiSira = 5;
                        buttonUrun6Cancel.Visible = true;
                        labelUrun6Ad.Text = urunAdi;
                        labelUrun6KiloAdet.Text = porsiyonVeyaKilo + tur;
                        labelUrun6Fiyat.Text = yazilacakFiyat;

                        labelUrun6Ad.Visible = true;
                        labelUrun6KiloAdet.Visible = true;
                        labelUrun6Fiyat.Visible = true;
                    }
                    else
                    {
                        KontrolFormu dialog = new KontrolFormu("Bir kerede en fazla 6 ürün girişi yapılabilir", false);
                        dialog.Show();
                        return;
                    }

                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira] = new KategorilerineGoreUrunler();
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunAdi.Add(urunAdi);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunPorsiyonSinifi.Add(urunListesi[barkoduArananUrununGrubu].urunPorsiyonSinifi[barkoduArananUrununGruptakiYeri]);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunPorsiyonFiyati.Add(urunPorsiyonFiyati);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunKiloFiyati.Add(urunKiloFiyati);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunTuru.Add(urunListesi[barkoduArananUrununGrubu].urunTuru[barkoduArananUrununGruptakiYeri]);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunYaziciyaBildirilmeliMi.Add(urunListesi[barkoduArananUrununGrubu].urunYaziciyaBildirilmeliMi[barkoduArananUrununGruptakiYeri]);
                    barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunKategorisi.Add(porsiyonVeyaKilo.ToString());// kategori yerine adedini veya kilosunu yazıyoruz

                    if (kiloMuAdetMi)
                        barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunBarkodu.Add("1"); // barkod yerine ürünün kilo cinsinden girildiğini yazıyoruz
                    else
                        barkodGirisiyleEklenecekUrunler[urununEklenecegiSira].urunBarkodu.Add("0");// barkod yerine ürünün porsiyon cinsinden girildiğini yazıyoruz

                    textBoxBarkod.Clear();
                }
            }
        }
Example #22
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            try
            {
                if (buttonKG.BackColor == SystemColors.ActiveCaption)
                {
                    kilo = Convert.ToDouble(textBoxKG.Text);
                }
                else
                {
                    kilo = Convert.ToDouble(textBoxKG.Text) / 1000;
                }

                kilo = Math.Round(kilo, 2);

                this.Close();
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Lütfen geçerli bir değer giriniz", false);
                dialog.Show();
            }
        }
Example #23
0
        // Tüm kategoriler içinde değiştirilen kategoriyi kaydetme butonuna basıldı
        private void saveNewKategoriPressed(object sender, EventArgs e)
        {
            KontrolFormu dialog;
            if (textBoxYeniKategori.Text == "Yeni Kategori" || textBoxYeniKategori.Text == "" || textBoxYeniKategori.Text == "Kategorisiz Ürünler")
            {
                dialog = new KontrolFormu("Eksik veya hatalı bilgi girdiniz, lütfen kontrol ediniz", false);
                dialog.Show();
                return;
            }

            if (newKategoriForm.Text == "Yeni Kategori")
            {// yeni kategori kaydetme
                for (int j = 0; j < kategoriListesi[0].kategoriler.Count(); j++)
                {
                    if (kategoriListesi[0].kategoriler[j] == textBoxYeniKategori.Text)
                    {
                        dialog = new KontrolFormu("Eksik veya hatalı bilgi girdiniz, lütfen kontrol ediniz", false);
                        dialog.Show();
                        return;
                    }
                }

                // tüm kategoriler görünümüne kategoriyi ekliyoruz
                treeNewKategori.Nodes.Insert(treeNewKategori.Nodes.Count - 1, textBoxYeniKategori.Text);

                newMenuForm.Text = textBoxYeniKategori.Text;

                // tüm kategoriler listemize kategoriyi ekleyip kaydediyoruz
                kategoriListesi[0].kategoriler.Insert(kategoriListesi[0].kategoriler.Count - 1, textBoxYeniKategori.Text);
                XmlSave.SaveRestoran(kategoriListesi, "kategoriler.xml");

                treeNewKategori.SelectedNode = treeNewKategori.Nodes[treeNewKategori.Nodes.Count - 1];
                treeNewKategori.Focus();

                buttonDeleteNewKategori.Visible = true;
                buttonAddKategori.Enabled = true;
                buttonCancelNewKategori.Visible = false;
                buttonAddNewMenu.Enabled = true;
                treeNewKategori.Enabled = true;
                treeMenuName.Enabled = true;
                treeMenuKategori.Enabled = true;

                if (kategoriListesi[0].kategoriler.Count > 1)
                    buttonDeleteNewKategori.Enabled = true;
                dialog = new KontrolFormu("Yeni Kategori Kaydedilmiştir", false);
                dialog.Show();
            }
            else // kategori düzenleme
            {
                if (treeNewKategori.SelectedNode.Text == "Kategorisiz Ürünler")
                {
                    dialog = new KontrolFormu("Kategorisiz ürünler değiştirilemez", false);
                    dialog.Show();
                    return;
                }
                int kacTane = 0;

                for (int j = 0; j < kategoriListesi[0].kategoriler.Count(); j++)
                {
                    if (string.Equals(kategoriListesi[0].kategoriler[j], textBoxYeniKategori.Text, StringComparison.CurrentCultureIgnoreCase))
                    {
                        kacTane++;
                    }
                    if (kacTane == 2)
                    {
                        dialog = new KontrolFormu("Aynı isimde bir kategori bulunmaktadır", false);
                        dialog.Show();
                        return;
                    }
                }

                string nameBeforeSave = treeNewKategori.SelectedNode.Text;

                //kategorinin listedeki ismini güncelliyoruz ve kaydediyoruz
                int temp = 0;
                for (int i = 0; i < kategoriListesi[0].kategoriler.Count; i++)
                {
                    if (kategoriListesi[0].kategoriler[i] == nameBeforeSave)
                    {
                        temp = i;
                        break;
                    }
                }

                kategoriListesi[0].kategoriler[temp] = textBoxYeniKategori.Text;
                XmlSave.SaveRestoran(kategoriListesi, "kategoriler.xml");

                //görünümdeki isimleri güncelliyoruz
                treeNewKategori.SelectedNode.Text = textBoxYeniKategori.Text;
                newKategoriForm.Text = textBoxYeniKategori.Text;

                for (int i = 0; i < menuListesi.Count; i++)
                {
                    for (int j = 0; j < menuListesi[i].menukategorileri.Count(); j++)
                    {
                        if (menuListesi[i].menukategorileri[j] == nameBeforeSave)
                        {
                            menuListesi[i].menukategorileri[j] = textBoxYeniKategori.Text;
                        }
                    }
                }
                XmlSave.SaveRestoran(menuListesi, "menu.xml");
                dialog = new KontrolFormu("Kategori Güncellenmiştir", false);
                dialog.Show();
            }
        }
Example #24
0
        private void buttonOdeme_Click(object sender, EventArgs e)
        {
            decimal odenenMiktar;

            paraUstu = 0;

            try
            {
                if (Convert.ToDecimal(textNumberOfItem.Text) > Convert.ToDecimal(labelKalanHesap.Text))
                {
                    odenenMiktar = Convert.ToDecimal(labelKalanHesap.Text);
                    paraUstu = Convert.ToDecimal(textNumberOfItem.Text) - Convert.ToDecimal(labelKalanHesap.Text);
                }
                else
                {
                    odenenMiktar = Convert.ToDecimal(textNumberOfItem.Text);
                }

                if (odenenMiktar <= 0)
                {
                    textNumberOfItem.Text = "0,00";
                    return;
                }
            }
            catch
            {
                textNumberOfItem.Text = "0,00";
                return;
            }

            if (Properties.Settings.Default.Server == 2) //server - diğer tüm clientlara söylemeli yaptığı ikram vs. neyse
            {
                // adisyon id al
                int adisyonID;
                SqlCommand cmd = SQLBaglantisi.getCommand("SELECT AdisyonID FROM Adisyon WHERE MasaAdi='" + masaAdi + "' AND DepartmanAdi='" + departmanAdi + "' AND AcikMi=1");
                SqlDataReader dr = cmd.ExecuteReader();
                dr.Read();

                try // açık
                {
                    adisyonID = dr.GetInt32(0);
                }
                catch// kapalı
                {
                    cmd.Connection.Close();
                    cmd.Connection.Dispose();
                    KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri kaydedilirken bir hata oluştu, lütfen tekrar deneyiniz", false);
                    dialog.Show();
                    return;
                }

                // odeme miktarını ve türünü gir
                cmd = SQLBaglantisi.getCommand("IF EXISTS (SELECT * FROM OdemeDetay WHERE AdisyonID=@_AdisyonID1 AND OdemeTipi=@_OdemeTipi1) UPDATE OdemeDetay SET OdenenMiktar=OdenenMiktar+@_OdenenMiktar1, IndirimiKimGirdi=@_IndirimiKimGirdi1 WHERE OdemeTipi=@_OdemeTipi2 AND AdisyonID=@_AdisyonID2 ELSE INSERT INTO OdemeDetay(AdisyonID,OdemeTipi,OdenenMiktar,IndirimiKimGirdi) VALUES(@_AdisyonID3,@_OdemeTipi3,@_OdenenMiktar2,@_IndirimiKimGirdi2)");

                cmd.Parameters.AddWithValue("@_AdisyonID1", adisyonID);
                cmd.Parameters.AddWithValue("@_OdemeTipi1", Convert.ToInt32(((Button)sender).Tag));
                cmd.Parameters.AddWithValue("@_OdenenMiktar1", odenenMiktar);
                cmd.Parameters.AddWithValue("@_IndirimiKimGirdi1", siparisiGirenKisi);

                cmd.Parameters.AddWithValue("@_OdemeTipi2", Convert.ToInt32(((Button)sender).Tag));
                cmd.Parameters.AddWithValue("@_AdisyonID2", adisyonID);

                cmd.Parameters.AddWithValue("@_AdisyonID3", adisyonID);
                cmd.Parameters.AddWithValue("@_OdemeTipi3", Convert.ToInt32(((Button)sender).Tag));
                cmd.Parameters.AddWithValue("@_OdenenMiktar2", odenenMiktar);
                cmd.Parameters.AddWithValue("@_IndirimiKimGirdi2", siparisiGirenKisi);

                cmd.ExecuteNonQuery();

                cmd.Connection.Close();
                cmd.Connection.Dispose();

                //ödeme yapılırken sipariş seçilmişse seçilenleri azalt
                for (int i = listUrunFiyat.Items.Count - 1; i > -1; i--)
                {
                    if (listUrunFiyat.Items[i].SubItems[1].Text != "-")
                    {
                        //AKTARMALARDAKİ SİPARİŞLERİ UPDATE ET

                        int secilenAdet = Convert.ToInt32(listUrunFiyat.Items[i].SubItems[1].Text.Substring(1, listUrunFiyat.Items[i].SubItems[1].Text.Length - 2));
                        string yemeginAdi = listUrunFiyat.Items[i].SubItems[3].Text;
                        decimal yemeginFiyati = Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text) / Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[0].Text);
                        decimal porsiyon = Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[2].Text.Substring(0, listUrunFiyat.Items[i].SubItems[2].Text.Length - 1));
                        string tur = listUrunFiyat.Items[i].SubItems[2].Text[listUrunFiyat.Items[i].SubItems[2].Text.Length - 1].ToString();

                        bool turBool = false;

                        if (tur == "K")
                            turBool = true;

                        cmd = SQLBaglantisi.getCommand("SELECT SiparisID,Adet,Siparis.VerilisTarihi,Siparis.Garsonu,NotificationGorulduMu FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE Adisyon.AcikMi=1 AND Adisyon.IptalMi=0 AND Siparis.IkramMi=0 AND Siparis.IptalMi=0 AND Siparis.OdendiMi=0 AND Adisyon.MasaAdi='" + masaAdi + "' AND Adisyon.DepartmanAdi='" + departmanAdi + "' AND Siparis.YemekAdi='" + yemeginAdi + "' AND Siparis.Porsiyon=CONVERT(DECIMAL(5,2),@_Porsiyon) AND Siparis.KiloSatisiMi=@_Tur ORDER BY Adet DESC");

                        cmd.Parameters.AddWithValue("@_Porsiyon", porsiyon);
                        cmd.Parameters.AddWithValue("@_Tur", turBool);

                        dr = cmd.ExecuteReader();

                        int siparisID, adet;
                        DateTime verilisTarihi;
                        bool NotificationGorulduMu;
                        while (dr.Read())
                        {
                            try
                            {
                                siparisID = dr.GetInt32(0);
                                adet = dr.GetInt32(1);
                                verilisTarihi = dr.GetDateTime(2);
                                siparisiGirenKisi = dr.GetString(3);
                                NotificationGorulduMu = dr.GetBoolean(4);
                            }
                            catch
                            {
                                cmd.Connection.Close();
                                cmd.Connection.Dispose();
                                //HATA MESAJI GÖNDER
                                KontrolFormu dialog = new KontrolFormu("Ödeme işlemi gerçekleşirken hata oluştu, lütfen tekrar deneyiniz", false);
                                dialog.Show();
                                return;
                            }

                            if (adet < secilenAdet) // ödenmesi istenenlerin sayısı(kacPorsiyon) ödenebileceklerden(porsiyon) küçükse
                            {
                                odendiUpdateTam(siparisID);

                                secilenAdet -= adet;
                            }
                            else if (adet > secilenAdet) // den büyükse
                            {
                                odendiUpdateInsert(siparisID, adisyonID, adet, (double)yemeginFiyati, secilenAdet, yemeginAdi, verilisTarihi, porsiyon, turBool, NotificationGorulduMu);

                                secilenAdet = 0;
                            }
                            else // elimizde ikram edilmemişler ikramı istenene eşitse
                            {
                                odendiUpdateTam(siparisID);

                                secilenAdet = 0;
                            }
                            if (secilenAdet == 0)
                                break;
                        }

                        cmd.Connection.Close();
                        cmd.Connection.Dispose();

                        int listedeYeniGelenSiparisVarmi = -1; //ürün cinsi alttaki ödenenlerde var mı bak

                        for (int j = 0; j < listOdenenler.Items.Count; j++)
                        {
                            if (listUrunFiyat.Items[i].SubItems[3].Text == listOdenenler.Items[j].SubItems[2].Text && listUrunFiyat.Items[i].SubItems[2].Text == listOdenenler.Items[j].SubItems[1].Text)
                            {
                                listedeYeniGelenSiparisVarmi = j;
                                break;
                            }
                        }

                        double odenmekIstenen = Convert.ToDouble(listUrunFiyat.Items[i].SubItems[1].Text.Substring(1, listUrunFiyat.Items[i].SubItems[1].Text.Length - 2));
                        decimal fiyat = Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text) / Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[0].Text);

                        if (listedeYeniGelenSiparisVarmi == -1) //yoksa ürünü hesaba ekle
                        {
                            listOdenenler.Items.Add(odenmekIstenen.ToString());
                            listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(listUrunFiyat.Items[i].SubItems[2].Text);
                            listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(listUrunFiyat.Items[i].SubItems[3].Text);
                            listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(fiyat.ToString("0.00"));
                            listOdenenler.Items[listOdenenler.Items.Count - 1].Font = new Font("Calibri", 18.75F, FontStyle.Bold);
                        }
                        else // varsa ödenenlerdeki ürün adedi ve fiyatını arttır
                        {
                            listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text = (odenmekIstenen + Convert.ToDouble(listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text)).ToString();
                        }

                        //azaltan kısım
                        listUrunFiyat.Items[i].SubItems[4].Text = (Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text) - ((decimal)odenmekIstenen * fiyat)).ToString("0.00");
                        listUrunFiyat.Items[i].SubItems[0].Text = (Convert.ToDouble(listUrunFiyat.Items[i].SubItems[0].Text) - odenmekIstenen).ToString();

                        menuFormu.listUrunFiyat.Items[i].SubItems[0].Text = (Convert.ToDouble(menuFormu.listUrunFiyat.Items[i].SubItems[0].Text) - odenmekIstenen).ToString();

                        //tamamı seçildiyse var olanı sil
                        if (Convert.ToDouble(listUrunFiyat.Items[i].SubItems[0].Text) == 0)
                        {
                            menuFormu.listUrunFiyat.Items[i].Remove();
                            listUrunFiyat.Items[i].Remove();
                        }
                    }
                }

                // ödeme bilgilerini ekranda göster
                int odemeTipi = Convert.ToInt32(((Button)sender).Tag);

                if (odemeTipi == 101) // nakit
                {
                    labelOdenenNakit.Text = (Convert.ToDecimal(labelOdenenNakit.Text) + odenenMiktar).ToString("0.00");
                }
                else if (odemeTipi == 102) // kredi kartı
                {
                    labelOdenenKart.Text = (Convert.ToDecimal(labelOdenenKart.Text) + odenenMiktar).ToString("0.00");
                }
                else if (odemeTipi == 103) // yemek fişi
                {
                    labelOdenenFis.Text = (Convert.ToDecimal(labelOdenenFis.Text) + odenenMiktar).ToString("0.00");
                }

                labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");

                toplamOdemeVeIndirim += paraUstu + odenenMiktar;

                paraUstu = 0;

                menuFormu.labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
                textBoxSecilenlerinTutari.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
                labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
                textNumberOfItem.Text = textBoxSecilenlerinTutari.Text;
                buttonDeleteText_Click(null, null);

                menuFormu.masaFormu.tumKullanicilaraMesajYolla("komut=OdemeIndirimOnayTablet&masaAdi=" + masaAdi + "&departmanAdi=" + departmanAdi);
            }
            else //client
            {
                //ödeme yapılırken sipariş seçilmişse onları secilipOdenenSiparisBilgileri ne ekle
                StringBuilder secilipOdenenSiparisBilgileri = new StringBuilder();

                for (int i = listUrunFiyat.Items.Count - 1; i > -1; i--)
                {
                    if (listUrunFiyat.Items[i].SubItems[1].Text != "-")
                    {
                        int odenmekIstenen = Convert.ToInt32(listUrunFiyat.Items[i].SubItems[1].Text.Substring(1, listUrunFiyat.Items[i].SubItems[1].Text.Length - 2));
                        decimal fiyat = Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text) / Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[0].Text);

                        secilipOdenenSiparisBilgileri.Append("*" + odenmekIstenen.ToString() + "-" + listUrunFiyat.Items[i].SubItems[3].Text + "-" + fiyat + "-" + listUrunFiyat.Items[i].SubItems[2].Text.Substring(0, listUrunFiyat.Items[i].SubItems[2].Text.Length - 1) + "-" + listUrunFiyat.Items[i].SubItems[2].Text[listUrunFiyat.Items[i].SubItems[2].Text.Length - 1].ToString());

                        //eklenenleri var olandan düş
                        listUrunFiyat.Items[i].SubItems[4].Text = (Convert.ToDecimal(listUrunFiyat.Items[i].SubItems[4].Text) - ((decimal)odenmekIstenen * fiyat)).ToString("0.00");
                        listUrunFiyat.Items[i].SubItems[0].Text = (Convert.ToDouble(listUrunFiyat.Items[i].SubItems[0].Text) - odenmekIstenen).ToString();

                        menuFormu.listUrunFiyat.Items[i].SubItems[0].Text = (Convert.ToDouble(listUrunFiyat.Items[i].SubItems[0].Text) - odenmekIstenen).ToString();

                        //tamamı eklendiyse var olanı sil
                        if (Convert.ToDouble(listUrunFiyat.Items[i].SubItems[0].Text) == 0)
                        {
                            menuFormu.listUrunFiyat.Items[i].Remove();
                            listUrunFiyat.Items[i].Remove();
                        }
                    }
                }
                //baştaki * ı sil
                if (secilipOdenenSiparisBilgileri.Length >= 1)
                {
                    secilipOdenenSiparisBilgileri.Remove(0, 1);
                }
                else
                {
                    secilipOdenenSiparisBilgileri = null;
                }
                //bilgileri servera gönder
                menuFormu.masaFormu.hesapFormundanOdeme(masaAdi, departmanAdi, "OdemeYapildi", Convert.ToInt32(((Button)sender).Tag), odenenMiktar, secilipOdenenSiparisBilgileri, siparisiGirenKisi);
            }
        }
Example #25
0
        private void buttonKaydet_Click(object sender, EventArgs e)
        {
            decimal toplam = 0;

            int secmeliSoruAdedi = Convert.ToInt32(numericSecmeliSoruSayisi.Value);
            int yaziliSoruAdedi = Convert.ToInt32(numericYaziliSoruSayisi.Value);
            int alinacakSecmeliSoruAdedi = secmeliSoruAdedi;

            string[] sorular = new string[17];
            decimal[] puanlandırma = new decimal[17];

            foreach (NumericUpDown puan in this.Controls.OfType<NumericUpDown>())
            {
                if (puan.Name != "numericSecmeliSoruSayisi" && puan.Name != "numericYaziliSoruSayisi")
                {
                    int kacinci = Convert.ToInt32(System.Text.RegularExpressions.Regex.Match(puan.Name, @"\d+").Value);
                    if (kacinci <= 15) // secmeli soru
                    {
                        if (alinacakSecmeliSoruAdedi > 0)
                        {
                            if (kacinci <= secmeliSoruAdedi)
                            {
                                puanlandırma[kacinci - 1] = puan.Value;
                                toplam += puan.Value;
                                alinacakSecmeliSoruAdedi--;
                            }
                        }
                    }

                    if (alinacakSecmeliSoruAdedi == 0)
                        break;
                }
            }

            if (toplam > 100)
            {
                KontrolFormu dialog = new KontrolFormu("Puanlandırma toplamı %100'den fazla(%" + toplam + "), lütfen düzeltiniz.", false);
                dialog.Show();
                return;
            }
            else if (toplam < 100)
            {
                KontrolFormu dialog = new KontrolFormu("Puanlandırma toplamı %100'den az(%" + toplam + "), lütfen düzeltiniz.", false);
                dialog.Show();
                return;
            }

            foreach (TextBox puan in this.Controls.OfType<TextBox>())
            {
                int kacinci = Convert.ToInt32(System.Text.RegularExpressions.Regex.Match(puan.Name, @"\d+").Value);
                if (kacinci <= 15) // secmeli soru
                {
                    if (kacinci <= secmeliSoruAdedi)
                    {
                        sorular[kacinci - 1] = puan.Text;
                    }
                    else
                    {
                        sorular[kacinci - 1] = "";
                    }
                }
                else // yazili soru
                {
                    if (yaziliSoruAdedi == 1)
                    {
                        if (kacinci == 16)
                        {
                            sorular[kacinci - 1] = puan.Text;
                            sorular[kacinci] = "";
                        }
                    }
                    else if (yaziliSoruAdedi == 2)
                    {
                        sorular[kacinci - 1] = puan.Text;
                    }
                    else
                    {
                        sorular[kacinci - 1] = "";
                        sorular[kacinci] = "";
                    }
                }
            }

            SqlCommand cmd;

            cmd = SQLBaglantisi.getCommand("UPDATE AnketSorular SET SoruAktifMi=0");
            cmd.ExecuteNonQuery();

            for (int i = 0; i < 17; i++)
            {
                if (sorular[i] == "")
                    break;

                if (i < numericSecmeliSoruSayisi.Value)// seçmeli sorular
                {
                    cmd = SQLBaglantisi.getCommand("IF EXISTS (SELECT * FROM AnketSorular WHERE Soru=@_Soru1 AND SorununSirasi<16) UPDATE AnketSorular SET EtkiYuzdesi=@_EtkiYuzdesi1, SoruAktifMi=1, SorununSirasi=@_sorununSirasi1 WHERE Soru=@_Soru2 AND SorununSirasi<16 ELSE INSERT INTO AnketSorular(EtkiYuzdesi,Soru,SoruAktifMi,SorununSirasi) VALUES(@_EtkiYuzdesi2,@_Soru3,1,@_SorununSirasi2)");

                    cmd.Parameters.AddWithValue("@_Soru1", sorular[i]);
                    cmd.Parameters.AddWithValue("@_EtkiYuzdesi1", puanlandırma[i]);
                    cmd.Parameters.AddWithValue("@_sorununSirasi1", i + 1);

                    cmd.Parameters.AddWithValue("@_Soru2", sorular[i]);

                    cmd.Parameters.AddWithValue("@_EtkiYuzdesi2", puanlandırma[i]);
                    cmd.Parameters.AddWithValue("@_Soru3", sorular[i]);
                    cmd.Parameters.AddWithValue("@_sorununSirasi2", i + 1);
                    cmd.ExecuteNonQuery();

                }
                else // yazılı sorular
                {
                    cmd = SQLBaglantisi.getCommand("IF EXISTS (SELECT * FROM AnketSorular WHERE Soru=@_Soru1 AND SorununSirasi>15) UPDATE AnketSorular SET EtkiYuzdesi=@_EtkiYuzdesi1, SoruAktifMi=1, SorununSirasi=@_sorununSirasi1 WHERE Soru=@_Soru2 AND SorununSirasi>15 ELSE INSERT INTO AnketSorular(EtkiYuzdesi,Soru,SoruAktifMi,SorununSirasi) VALUES(@_EtkiYuzdesi2,@_Soru3,1,@_SorununSirasi2)");

                    cmd.Parameters.AddWithValue("@_Soru1", sorular[i]);
                    cmd.Parameters.AddWithValue("@_EtkiYuzdesi1", 0);
                    cmd.Parameters.AddWithValue("@_sorununSirasi1", i + 1);

                    cmd.Parameters.AddWithValue("@_Soru2", sorular[i]);

                    cmd.Parameters.AddWithValue("@_EtkiYuzdesi2", 0);
                    cmd.Parameters.AddWithValue("@_Soru3", sorular[i]);
                    cmd.Parameters.AddWithValue("@_sorununSirasi2", i + 1);
                    cmd.ExecuteNonQuery();

                }
            }

            cmd = SQLBaglantisi.getCommand("UPDATE AnketSorular SET SoruAktifMi=0 WHERE (SorununSirasi>@_SecmelilerinSirasi AND SorununSirasi<16) OR (SorununSirasi>@_YazililarinSirasi AND SorununSirasi<18)");

            cmd.Parameters.AddWithValue("@_SecmelilerinSirasi", numericSecmeliSoruSayisi.Value);

            cmd.Parameters.AddWithValue("@_YazililarinSirasi", numericYaziliSoruSayisi.Value + 15);
            cmd.ExecuteNonQuery();

            cmd.Connection.Close();
            cmd.Connection.Dispose();

            KontrolFormu dialog2 = new KontrolFormu("Değişiklikler kaydedildi", false);
            dialog2.Show();
        }
Example #26
0
        private void siparisButtonPressed(object sender, EventArgs e)
        {
            if (!File.Exists("restoran.xml") || !File.Exists("sonKullanici.xml") || !File.Exists("kategoriler.xml") || !File.Exists("masaDizayn.xml") || !File.Exists("menu.xml") || !File.Exists("urunler.xml"))
            {
                KontrolFormu dialog2 = new KontrolFormu("Lütfen önce programı ayarları kullanarak yapılandırın", false);
                dialog2.Show();
                return;
            }

            if (siparisForm == null)
            {
                //sipariş ekranına geçilecek

                //Task.Factory.StartNew(() => siparisForm.ShowDialog());
                try
                {
                    Task reportTask = Task.Factory.StartNew(
                        () =>
                        {
                            siparisForm = new SiparisMasaFormu(kullanicilar, this);

                            siparisForm.ShowDialog();
                        }
                        , CancellationToken.None
                        , TaskCreationOptions.None
                        , TaskScheduler.FromCurrentSynchronizationContext()
                        );

                    reportTask.Wait();
                }
                catch
                { }
            }
            else
            {
                this.SendToBack();
            }
        }
Example #27
0
        private void komut_OdemeGuncelle(string masa, string departmanAdi, string _odemeler, string _gelenOdemeler, ClientRef client, string siparisiGirenKisi)
        {
            string[] stringOdemeler, stringGelenOdemeler;
            try
            {
                stringOdemeler = _odemeler.Split('*');
                stringGelenOdemeler = _gelenOdemeler.Split('*');
            }
            catch
            {
                //HATA MESAJI GÖNDER
                komut_IslemHatasi(client, "İşlem gerçekleştirilemedi, lütfen tekrar deneyiniz");
                return;
            }

            decimal[] odemeler = { 0, 0, 0 }, gelenOdemeler = { 0, 0, 0 };

            odemeler[0] = Convert.ToDecimal(stringOdemeler[0]);
            odemeler[1] = Convert.ToDecimal(stringOdemeler[1]);
            odemeler[2] = Convert.ToDecimal(stringOdemeler[2]);

            gelenOdemeler[0] = Convert.ToDecimal(stringGelenOdemeler[0]);
            gelenOdemeler[1] = Convert.ToDecimal(stringGelenOdemeler[1]);
            gelenOdemeler[2] = Convert.ToDecimal(stringGelenOdemeler[2]);

            // adisyon id al
            int adisyonID;
            SqlCommand cmd = SQLBaglantisi.getCommand("SELECT AdisyonID FROM Adisyon WHERE MasaAdi='" + masa + "' AND DepartmanAdi='" + departmanAdi + "' AND AcikMi=1");
            SqlDataReader dr = cmd.ExecuteReader();
            dr.Read();

            try // açık
            {
                adisyonID = dr.GetInt32(0);
            }
            catch// kapalı
            {
                cmd.Connection.Close();
                cmd.Connection.Dispose();
                KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri kaydedilirken bir hata oluştu, lütfen tekrar deneyiniz", false);
                dialog.Show();
                return;
            }

            decimal odenenMiktar = 0;

            for (int i = 0; i < odemeler.Length; i++)
            {
                if (odemeler[i] != gelenOdemeler[i]) // değişen ödemeleri güncelle
                {
                    odenenMiktar = gelenOdemeler[i];
                    int odemeTipi = 101 + i;

                    cmd = SQLBaglantisi.getCommand("IF EXISTS (SELECT * FROM OdemeDetay WHERE AdisyonID=@_AdisyonID1 AND OdemeTipi=@_OdemeTipi1) UPDATE OdemeDetay SET OdenenMiktar=@_OdenenMiktar1, IndirimiKimGirdi=@_IndirimiKimGirdi1 WHERE OdemeTipi=@_OdemeTipi2 AND AdisyonID=@_AdisyonID2 ELSE INSERT INTO OdemeDetay(AdisyonID,OdemeTipi,OdenenMiktar,IndirimiKimGirdi) VALUES(@_AdisyonID3,@_OdemeTipi2,@_OdenenMiktar2,@_IndirimiKimGirdi2)");

                    cmd.Parameters.AddWithValue("@_AdisyonID1", adisyonID);
                    cmd.Parameters.AddWithValue("@_OdemeTipi1", odemeTipi);
                    cmd.Parameters.AddWithValue("@_OdenenMiktar1", odenenMiktar);
                    cmd.Parameters.AddWithValue("@_IndirimiKimGirdi1", siparisiGirenKisi);

                    cmd.Parameters.AddWithValue("@_OdemeTipi2", odemeTipi);
                    cmd.Parameters.AddWithValue("@_AdisyonID2", adisyonID);

                    cmd.Parameters.AddWithValue("@_AdisyonID3", adisyonID);
                    cmd.Parameters.AddWithValue("@_OdemeTipi2", odemeTipi);
                    cmd.Parameters.AddWithValue("@_OdenenMiktar2", odenenMiktar);
                    cmd.Parameters.AddWithValue("@_IndirimiKimGirdi2", siparisiGirenKisi);
                    cmd.ExecuteNonQuery();

                    cmd.Connection.Close();
                    cmd.Connection.Dispose();
                }
            }

            client.MesajYolla("komut=odemeGuncelleTamamlandi&odemeler=" + odemeler[0] + "*" + odemeler[1] + "*" + odemeler[2] + "&gelenOdemeler=" + gelenOdemeler[0] + "*" + gelenOdemeler[1] + "*" + gelenOdemeler[2] + "&siparisiGirenKisi=" + siparisiGirenKisi);

            tumKullanicilaraMesajYolla("komut=OdemeIndirimOnayTablet&masaAdi=" + masa + "&departmanAdi=" + departmanAdi);
        }
Example #28
0
        //form load
        private void HesapFormu_Load(object sender, EventArgs e)
        {
            if (!adisyonDegistirebilirMi)
                buttonHesapDuzenle.Enabled = false;

            if (!satisYapabilirMi)
            {
                buttonNakit.Enabled = false;
                buttonKart.Enabled = false;
                buttonYemekFisi.Enabled = false;
            }

            if (!indirimYetkisi)
            {
                buttonIndirim.Enabled = false;
                buttonIndirimYuzdeli.Enabled = false;
            }

            labelSaat.Text = DateTime.Now.ToString("HH:mm:ss", new CultureInfo("tr-TR"));
            timerSaat.Start();
            labelGun.Text = DateTime.Now.ToString("dddd", new CultureInfo("tr-TR"));
            labelTarih.Text = DateTime.Now.Date.ToString("d MMMM yyyy", new CultureInfo("tr-TR"));

            labelMasa.Text = "Masa: " + masaAdi;
            labelDepartman.Text = "Departman: " + departmanAdi;

            //labelların fontunu ayarlıyoruz
            while (labelDepartman.Width < System.Windows.Forms.TextRenderer.MeasureText(labelDepartman.Text, new Font(labelDepartman.Font.FontFamily, labelDepartman.Font.Size, labelDepartman.Font.Style)).Width)
            {
                labelDepartman.Font = new Font(labelDepartman.Font.FontFamily, labelDepartman.Font.Size - 0.5f, labelDepartman.Font.Style);
            }

            while (labelMasa.Width < System.Windows.Forms.TextRenderer.MeasureText(labelMasa.Text, new Font(labelMasa.Font.FontFamily, labelMasa.Font.Size, labelMasa.Font.Style)).Width)
            {
                labelMasa.Font = new Font(labelMasa.Font.FontFamily, labelMasa.Font.Size - 0.5f, labelMasa.Font.Style);
            }

            // EĞER ÜRÜN VARSA ADİSYON VAR MI YOK MU BAK VARSA SİPARİŞLERİ EKLE, ÜRÜN YOKSA ADİSYONU OLUŞTUR VE ÜRÜNÜ EKLE
            if (listHesaptakiler.Groups[3].Items.Count > 0)
            {
                if (Properties.Settings.Default.Server == 2) //server - diğer tüm clientlara söylemeli yaptığı ikram vs. neyse
                {
                    SqlCommand cmd;

                    int adisyonID;

                    cmd = SQLBaglantisi.getCommand("SELECT AdisyonID FROM Adisyon WHERE MasaAdi='" + masaAdi + "' AND DepartmanAdi='" + departmanAdi + "' AND AcikMi=1");
                    SqlDataReader dr = cmd.ExecuteReader();
                    dr.Read();

                    try // açık
                    {
                        adisyonID = dr.GetInt32(0);
                        menuFormu.masaAcikMi = true;

                        cmd.Connection.Close();
                        cmd.Connection.Dispose();
                    }
                    catch// kapalı
                    {
                        cmd.Connection.Close();
                        cmd.Connection.Dispose();

                        adisyonID = adisyonOlustur();
                    }

                    foreach (ListViewItem siparis in listHesaptakiler.Groups[3].Items)
                    {
                        siparisOlustur(adisyonID, siparis);

                        menuFormu.masaFormu.serverdanSiparisIkramVeyaIptal(masaAdi, departmanAdi, "siparis", siparis.SubItems[0].Text, siparis.SubItems[2].Text, Convert.ToDecimal(siparis.SubItems[3].Text).ToString(), null, siparis.SubItems[1].Text.Substring(0, siparis.SubItems[1].Text.Length - 1), siparis.SubItems[1].Text[siparis.SubItems[1].Text.Length - 1].ToString());
                    }

                    //yeni ürünler için mutfak bildirimi
                    cmd = SQLBaglantisi.getCommand("SELECT DISTINCT CiktiAlinanYazici,Garsonu FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE MasaAdi=@_MasaAdi AND DepartmanAdi=@_DepartmanAdi AND AcikMi=1 AND IkramMi=0 AND Adisyon.IptalMi=0 AND Siparis.IptalMi=0 AND CiktiAlindiMi=0 AND CiktiAlinmaliMi=1");
                    cmd.Parameters.AddWithValue("@_MasaAdi", masaAdi);
                    cmd.Parameters.AddWithValue("@_DepartmanAdi", departmanAdi);

                    dr = cmd.ExecuteReader();

                    while (dr.Read())
                    {
                        string tanimliYaziciAdi = "", garsonu = "";

                        if (!dr.IsDBNull(0))
                            tanimliYaziciAdi = dr.GetString(0);

                        if (tanimliYaziciAdi == "")
                            continue;

                        garsonu = dr.GetString(1);

                        SqlCommand cmd2 = SQLBaglantisi.getCommand("SELECT FirmaAdi,Yazici FROM Yazici WHERE YaziciAdi=@_YaziciAdi");
                        cmd2.Parameters.AddWithValue("@_YaziciAdi", tanimliYaziciAdi);

                        SqlDataReader dr2 = cmd2.ExecuteReader();

                        string firmaAdi = "", yaziciAdi = "";

                        while (dr2.Read())
                        {
                            firmaAdi = dr2.GetString(0);
                            yaziciAdi = dr2.GetString(1);
                        }
                        cmd2.Connection.Close();
                        cmd2.Connection.Dispose();

                        asyncYaziciyaGonder(masaAdi, departmanAdi, firmaAdi, yaziciAdi, tanimliYaziciAdi, garsonu, raporMutfak).Join();
                    }

                    // iptal edilen ürünler için mutfağa adisyon
                    cmd = SQLBaglantisi.getCommand("SELECT DISTINCT CiktiAlinanYazici,Garsonu FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE MasaAdi=@_MasaAdi AND DepartmanAdi=@_DepartmanAdi AND AcikMi=1 AND IkramMi=0 AND Adisyon.IptalMi=0 AND Siparis.IptalMi=1 AND CiktiAlindiMi=0 AND CiktiAlinmaliMi=1");
                    cmd.Parameters.AddWithValue("@_MasaAdi", masaAdi);
                    cmd.Parameters.AddWithValue("@_DepartmanAdi", departmanAdi);

                    dr = cmd.ExecuteReader();

                    while (dr.Read())
                    {
                        string tanimliYaziciAdi = "", garsonu = "";

                        if (!dr.IsDBNull(0))
                            tanimliYaziciAdi = dr.GetString(0);

                        if (tanimliYaziciAdi == "")
                            continue;

                        garsonu = dr.GetString(1);

                        SqlCommand cmd2 = SQLBaglantisi.getCommand("SELECT FirmaAdi,Yazici FROM Yazici WHERE YaziciAdi=@_YaziciAdi");
                        cmd2.Parameters.AddWithValue("@_YaziciAdi", tanimliYaziciAdi);

                        SqlDataReader dr2 = cmd2.ExecuteReader();

                        string firmaAdi = "", yaziciAdi = "";

                        while (dr2.Read())
                        {
                            firmaAdi = dr2.GetString(0);
                            yaziciAdi = dr2.GetString(1);
                        }
                        cmd2.Connection.Close();
                        cmd2.Connection.Dispose();

                        asyncYaziciyaGonder(masaAdi, departmanAdi, firmaAdi, yaziciAdi, tanimliYaziciAdi, garsonu, raporMutfakIptal).Join();
                    }
                    cmd.Connection.Close();
                    cmd.Connection.Dispose();
                }
                else // client
                {
                    int sonSiparisMi = listHesaptakiler.Groups[3].Items.Count;

                    foreach (ListViewItem siparis in listHesaptakiler.Groups[3].Items)
                    {
                        sonSiparisMi--;

                        menuFormu.masaFormu.serveraSiparis(masaAdi, departmanAdi, "siparis", siparis.SubItems[0].Text, siparis.SubItems[2].Text, siparisiGirenKisi, Convert.ToDecimal(siparis.SubItems[3].Text).ToString(), "", sonSiparisMi, siparis.SubItems[1].Text.Substring(0, siparis.SubItems[1].Text.Length - 1), siparis.SubItems[1].Text[siparis.SubItems[1].Text.Length - 1].ToString(), "ilkSiparis");
                    }
                    menuFormu.masaAcikMi = true;
                }

                //Kaydı sql servera girilen menü formundaki siparişleri yeni sipariş grubundan eski sipariş grubuna alıyoruz
                for (int i = menuFormu.listUrunFiyat.Groups[3].Items.Count - 1; i > -1; i--)
                {
                    int listedeYeniGelenSiparisVarmi = -1; //ürün cinsi eski siparişlerde var mı bak
                    for (int j = 0; j < menuFormu.listUrunFiyat.Groups[2].Items.Count; j++)
                    {
                        if (menuFormu.listUrunFiyat.Groups[3].Items[i].SubItems[2].Text == menuFormu.listUrunFiyat.Groups[2].Items[j].SubItems[2].Text && menuFormu.listUrunFiyat.Groups[3].Items[i].SubItems[1].Text == menuFormu.listUrunFiyat.Groups[2].Items[j].SubItems[1].Text)
                        {
                            listedeYeniGelenSiparisVarmi = j;
                            break;
                        }
                    }

                    if (listedeYeniGelenSiparisVarmi == -1) //yoksa ürünü hesaba ekle
                    {
                        menuFormu.listUrunFiyat.Groups[3].Items[i].Group = menuFormu.listUrunFiyat.Groups[2];
                    }
                    else
                    {
                        menuFormu.listUrunFiyat.Groups[2].Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text = (Convert.ToDouble(menuFormu.listUrunFiyat.Groups[2].Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text) + Convert.ToDouble(menuFormu.listUrunFiyat.Groups[3].Items[i].SubItems[0].Text)).ToString();
                        menuFormu.listUrunFiyat.Groups[3].Items[i].Remove();
                    }
                }
            }

            //Urunleri listeye ekliyoruz , fiyatlarını alıyoruz
            for (int i = 0; i < listHesaptakiler.Groups[2].Items.Count; i++)
            {
                listUrunFiyat.Items.Add(listHesaptakiler.Groups[2].Items[i].Text);
                listUrunFiyat.Items[listUrunFiyat.Items.Count - 1].SubItems.Add("-");
                listUrunFiyat.Items[listUrunFiyat.Items.Count - 1].SubItems.Add(listHesaptakiler.Groups[2].Items[i].SubItems[1].Text);
                listUrunFiyat.Items[listUrunFiyat.Items.Count - 1].SubItems.Add(listHesaptakiler.Groups[2].Items[i].SubItems[2].Text);
                listUrunFiyat.Items[listUrunFiyat.Items.Count - 1].SubItems.Add((Convert.ToDecimal(listHesaptakiler.Groups[2].Items[i].SubItems[3].Text) * Convert.ToInt32(listHesaptakiler.Groups[2].Items[i].Text)).ToString());
                listUrunFiyat.Items[listUrunFiyat.Items.Count - 1].Font = new Font("Calibri", 18.75F, FontStyle.Bold);
                toplamHesap += Convert.ToDecimal(listHesaptakiler.Groups[2].Items[i].SubItems[3].Text) * Convert.ToInt32(listHesaptakiler.Groups[2].Items[i].SubItems[0].Text);
            }

            //listedeki itemların sayısı nedeniyle scroll bar çıkarsa fiyat kısımlarını biraz sola almak için
            if (this.listUrunFiyat.Items.Count > 0)
            {
                int itemsCount = this.listUrunFiyat.Items.Count;
                int itemHeight = this.listUrunFiyat.Items[0].Bounds.Height;
                int VisiableItem = (int)this.listUrunFiyat.ClientRectangle.Height / itemHeight;
                if (itemsCount >= VisiableItem)
                {
                    listUrunFiyat.Columns[3].Width = urunBoyu;
                    listUrunFiyat.Columns[4].Width = fiyatBoyu;
                }
            }

            if (Properties.Settings.Default.Server == 2)
            {
                odemeyeGec();
                //herkesi masadan çıkar
                menuFormu.masaFormu.serverdanHesapOdeme(masaAdi, departmanAdi, "hesapOdeniyor");

                XmlLoad<KategorilerineGoreUrunler> loadInfoUrun = new XmlLoad<KategorilerineGoreUrunler>();
                KategorilerineGoreUrunler[] infoUrun = loadInfoUrun.LoadRestoran("urunler.xml");

                urunListesi.AddRange(infoUrun);

                SqlCommand cmd = SQLBaglantisi.getCommand("SELECT Fiyatı, Adet, YemekAdi, Porsiyon, KiloSatisiMi FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE Adisyon.MasaAdi='" + masaAdi + "' AND Adisyon.DepartmanAdi='" + departmanAdi + "' AND Siparis.IptalMi=0 AND Siparis.OdendiMi=1 AND Siparis.IkramMi=0 AND Adisyon.AcikMi=1 AND Adisyon.IptalMi=0 ORDER BY Adet DESC");
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    decimal yemeginFiyati, porsiyon;
                    int adet;
                    string yemeginAdi;
                    bool turBool;

                    try
                    {
                        yemeginFiyati = dr.GetDecimal(0);
                        adet = dr.GetInt32(1);
                        yemeginAdi = dr.GetString(2);
                        porsiyon = dr.GetDecimal(3);
                        turBool = dr.GetBoolean(4);
                    }
                    catch
                    {
                        KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri alınırken hata oluştu, lütfen tekrar giriş yapınız", false);
                        dialog.Show();
                        return;
                    }

                    string tur = "P";

                    if (turBool)
                        tur = "K";

                    int listedeYeniGelenSiparisVarmi = -1; //ürün cinsi hesapta var mı bak

                    for (int i = 0; i < listOdenenler.Items.Count; i++)
                    {
                        if (yemeginAdi == listOdenenler.Items[i].SubItems[2].Text && (Double)porsiyon == Convert.ToDouble(listOdenenler.Items[i].SubItems[1].Text.Substring(0, listOdenenler.Items[i].SubItems[1].Text.Length - 1)) && tur == listOdenenler.Items[i].SubItems[1].Text[listOdenenler.Items[i].SubItems[1].Text.Length - 1].ToString())
                        {
                            listedeYeniGelenSiparisVarmi = i;
                            break;
                        }
                    }

                    if (listedeYeniGelenSiparisVarmi == -1) //yoksa ürünü hesaba ekle
                    {
                        listOdenenler.Items.Add(adet.ToString());
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add((Double)porsiyon + tur);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginAdi);
                        listOdenenler.Items[listOdenenler.Items.Count - 1].SubItems.Add(yemeginFiyati.ToString("0.00"));
                        listOdenenler.Items[listOdenenler.Items.Count - 1].Font = new Font("Calibri", 18.75F, FontStyle.Bold);
                    }
                    else
                    {
                        listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text = (Convert.ToDouble(listOdenenler.Items[listedeYeniGelenSiparisVarmi].SubItems[0].Text) + adet).ToString();
                    }
                    toplamHesap += Convert.ToDecimal(adet * yemeginFiyati * porsiyon);
                }

                // ODEME BILGILERINE SORGU AT
                cmd = SQLBaglantisi.getCommand("SELECT OdemeTipi, OdenenMiktar from OdemeDetay JOIN Adisyon ON OdemeDetay.AdisyonID=Adisyon.AdisyonID WHERE Adisyon.MasaAdi='" + masaAdi + "' AND Adisyon.DepartmanAdi='" + departmanAdi + "' AND Adisyon.AcikMi=1 AND Adisyon.IptalMi=0");

                dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    int odemeTipi;
                    decimal odenenMiktar;

                    try
                    {
                        odemeTipi = dr.GetInt32(0);
                        odenenMiktar = dr.GetDecimal(1);
                    }
                    catch
                    {
                        KontrolFormu dialog = new KontrolFormu("Ödeme bilgileri alınırken hata oluştu, lütfen tekrar giriş yapınız", false);
                        dialog.Show();
                        return;
                    }

                    if (odemeTipi == 101) // nakit
                    {
                        labelOdenenNakit.Text = (Convert.ToDecimal(labelOdenenNakit.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 102) // kredi kartı
                    {
                        labelOdenenKart.Text = (Convert.ToDecimal(labelOdenenKart.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 103)// yemek fişi
                    {
                        labelOdenenFis.Text = (Convert.ToDecimal(labelOdenenFis.Text) + odenenMiktar).ToString("0.00");
                        labelOdenenToplam.Text = (Convert.ToDecimal(labelOdenenToplam.Text) + odenenMiktar).ToString("0.00");
                    }
                    else if (odemeTipi == 104)// indirim TL
                    {
                        labelIndirimTLTutar.Text = odenenMiktar.ToString("0.00");
                        indirim = odenenMiktar;

                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 9);
                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(0, labelIndirimToplam.Text.Length - 1);
                        labelIndirimToplam.Text = "(indirim:" + (Convert.ToDecimal(labelIndirimToplam.Text) + odenenMiktar).ToString("0.00") + ")";

                        if (odenenMiktar == 0)
                        {
                            labelIndirimTL.Visible = false;
                            labelIndirimTLTutar.Visible = false;
                            if (!labelIndirimYuzde.Visible) // eğer yüzdeli indirim de yoksa labelları kaldır
                            {
                                labelIndirimToplam.Visible = false;
                            }
                        }
                        else
                        {
                            labelIndirimToplam.Visible = true;
                            labelIndirimTL.Visible = true;
                            labelIndirimTLTutar.Visible = true;
                        }
                    }
                    else // indirim Yüzde
                    {
                        indirimYuzde = odenenMiktar;
                        odenenMiktar = toplamHesap * odemeTipi / 100;

                        if (indirimYuzde != odenenMiktar)// hesapta değişiklik yapılmış odenen miktarı güncelle
                        {
                            cmd = SQLBaglantisi.getCommand("SELECT AdisyonID FROM Adisyon WHERE AcikMi=1 AND MasaAdi='" + masaAdi + "' AND DepartmanAdi='" + departmanAdi + "'");
                            dr = cmd.ExecuteReader();
                            dr.Read();
                            int adisyonID = dr.GetInt32(0);

                            cmd = SQLBaglantisi.getCommand("UPDATE OdemeDetay SET OdenenMiktar=@_OdenenMiktar2, OdemeTipi=@_OdemeTipi2 WHERE AdisyonID='" + adisyonID + "' AND OdemeTipi=(SELECT OdemeTipi FROM OdemeDetay WHERE AdisyonID='" + adisyonID + "' AND OdemeTipi<101)");

                            cmd.Parameters.AddWithValue("@_OdenenMiktar2", odenenMiktar);
                            cmd.Parameters.AddWithValue("@_OdemeTipi2", odemeTipi);

                            cmd.ExecuteNonQuery();

                            cmd.Connection.Close();
                            cmd.Connection.Dispose();
                        }

                        labelIndirimYuzdeTutar.Text = odenenMiktar.ToString("0.00");

                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(9, labelIndirimToplam.Text.Length - 9);
                        labelIndirimToplam.Text = labelIndirimToplam.Text.Substring(0, labelIndirimToplam.Text.Length - 1);
                        labelIndirimToplam.Text = "(indirim:" + (Convert.ToDecimal(labelIndirimToplam.Text) + odenenMiktar).ToString("0.00") + ")";

                        if (odenenMiktar == 0)
                        {
                            labelIndirimYuzde.Visible = false;
                            labelIndirimYuzdeTutar.Visible = false;
                            if (!labelIndirimTL.Visible) // eğer normal indirim de yoksa labelları kaldır
                            {
                                labelIndirimToplam.Visible = false;
                            }
                        }
                        else
                        {
                            labelIndirimToplam.Visible = true;
                            labelIndirimYuzde.Visible = true;
                            labelIndirimYuzdeTutar.Visible = true;
                        }
                    }
                    toplamOdemeVeIndirim += odenenMiktar;
                }
                cmd.Connection.Close();
                cmd.Connection.Dispose();

                textBoxSecilenlerinTutari.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
                textNumberOfItem.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
                labelKalanHesap.Text = (toplamHesap - toplamOdemeVeIndirim).ToString("0.00");
            }
            else
            {
                //servera söyle herkesi masadan çıkarsın
                menuFormu.masaFormu.menuFormundanServeraYolla(masaAdi, departmanAdi, "hesapOdeniyor");

                menuFormu.masaFormu.menuFormundanServeraYolla(masaAdi, departmanAdi, "OdenenleriGonder");
            }
        }
Example #29
0
        //Yeni Departmanı Kaydet
        private void buttonAddNewDep(object sender, EventArgs e)
        {
            KontrolFormu dialog;
            if (comboNewDepName.Text == "Yeni Departman" || comboNewDepName.Text == "" || comboNewDepMenu.Text == "" || comboNewDepView.Text == "") // ilerde var olan depo,isim,menü veya masa planı var mı diye bak ona göre burayı göster
            {
                dialog = new KontrolFormu("Eksik veya hatalı bilgi girdiniz, lütfen kontrol ediniz", false);
                dialog.Show();
                return;
            }

            //Yeni departmanı kaydet tuşu. ekle tuşuna basıp bilgileri girdikten sonra kaydete basıyoruz önce girilen bilgilerin doğruluğu
            //kontrol edilir sonra departmanın treeviewdaki yeri + ayarlardaki yeri tag bilgisi olarak eklenir
            //daha sonra comboboxlardaki bilgiler settingse ve ana ekrandaki comboboxlara aktarılır
            if (newDepartmentForm.Text == "Yeni Departman")
            {
                for (int i = 0; i < restoranListesi.Count; i++)
                {
                    if (string.Equals(restoranListesi[i].departmanAdi, comboNewDepName.Text, StringComparison.CurrentCultureIgnoreCase))
                    {
                        dialog = new KontrolFormu("Aynı departman ismi sistemde kayıtlıdır. Lütfen başka bir isimle departman ekleyiniz", false);

                        dialog.Show();
                        return;
                    }
                }

                treeDepartman.Nodes.Add(comboNewDepName.Text);

                Restoran newDepartman = new Restoran();
                newDepartman.departmanAdi = comboNewDepName.Text;
                newDepartman.departmanMenusu = comboNewDepMenu.Text;
                newDepartman.departmanEkrani = comboNewDepView.Text;

                newDepartmentForm.Text = comboNewDepName.Text;

                restoranListesi.Add(newDepartman);

                XmlSave.SaveRestoran(restoranListesi, "restoran.xml");

                treeDepartman.SelectedNode = treeDepartman.Nodes[treeDepartman.Nodes.Count - 1];
                treeDepartman.Focus();

                buttonDeleteDepartment.Visible = true;
                buttonCancel.Visible = false;

                if (treeDepartman.Nodes.Count > 1)
                    buttonDeleteDepartment.Enabled = true;

                dialog = new KontrolFormu("Yeni Departman Bilgileri Kaydedilmiştir", false);
                dialog.Show();
            }
            else
            {
                if (comboNewDepName.Text != restoranListesi[treeDepartman.SelectedNode.Index].departmanAdi)
                {
                    for (int i = 0; i < restoranListesi.Count; i++)
                    {
                        if (string.Equals(restoranListesi[i].departmanAdi, comboNewDepName.Text, StringComparison.CurrentCultureIgnoreCase))
                        {
                            dialog = new KontrolFormu("Aynı departman ismi sistemde kayıtlıdır. Lütfen başka bir isimle departman ekleyiniz", false);
                            dialog.Show();
                            return;
                        }
                    }
                }

                //Departmanda değişiklik yapıldıktan sonra basılan kaydet butonu.
                // Girilen bilgilerin doğruluğu kontrol edilir daha sonra comboboxlardaki bilgiler xmle aktarılır ve departman ismi treeviewda güncellenir.
                restoranListesi[treeDepartman.SelectedNode.Index].departmanAdi = comboNewDepName.Text;
                restoranListesi[treeDepartman.SelectedNode.Index].departmanMenusu = comboNewDepMenu.Text;
                restoranListesi[treeDepartman.SelectedNode.Index].departmanEkrani = comboNewDepView.Text;

                XmlSave.SaveRestoran(restoranListesi, "restoran.xml");

                treeDepartman.Nodes[treeDepartman.SelectedNode.Index].Text = comboNewDepName.Text;
                newDepartmentForm.Text = comboNewDepName.Text;

                dialog = new KontrolFormu("Departman Bilgileri Güncellenmiştir", false);

                dialog.Show();
            }

            //Nodeların eklenmesinden sonra taşma varsa bile ekrana sığması için font boyutunu küçültüyoruz
            foreach (TreeNode node in treeDepartman.Nodes)
            {
                while (treeDepartman.Width - 12 < System.Windows.Forms.TextRenderer.MeasureText(node.Text, new Font(treeDepartman.Font.FontFamily, treeDepartman.Font.Size, treeDepartman.Font.Style)).Width)
                {
                    treeDepartman.Font = new Font(treeDepartman.Font.FontFamily, treeDepartman.Font.Size - 0.5f, treeDepartman.Font.Style);
                }
            }
        }
Example #30
0
        private void komut_yaziciGonder(ClientRef client, string masaAdi, string departmanAdi)
        {
            List<string[]> adisyonYazicilari = new List<string[]>();
            List<string[]> digerYazicilar = new List<string[]>();

            SqlCommand cmd = SQLBaglantisi.getCommand("SELECT YaziciAdi,FirmaAdi,FirmaAdres,Yazici,Telefon FROM Yazici");
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                string[] yazici = new string[5];

                yazici[0] = dr.GetString(0); // yazici adı
                yazici[1] = dr.GetString(1); // firma adı
                yazici[2] = dr.GetString(2); // firma adres
                yazici[3] = dr.GetString(3); // yazıcı windows adı
                yazici[4] = dr.GetString(4); // telefon

                try
                {
                    if (yazici[0].Substring(0, 7) == "Adisyon")
                    {
                        adisyonYazicilari.Add(yazici);
                    }
                    else
                    {
                        digerYazicilar.Add(yazici);
                    }
                }
                catch
                {
                    digerYazicilar.Add(yazici);
                }
            }

            // masaya bakan ilk garsonun ismini döndüren sql sorgusu
            cmd = SQLBaglantisi.getCommand("SELECT TOP 1 Garsonu,AcilisZamani FROM Siparis JOIN Adisyon ON Siparis.AdisyonID=Adisyon.AdisyonID WHERE MasaAdi='" + masaAdi + "' AND DepartmanAdi='" + departmanAdi + "' AND AcikMi=1 ORDER BY VerilisTarihi ASC");
            dr = cmd.ExecuteReader();
            dr.Read();

            string garson;
            DateTime acilisZamani;

            try // açık
            {
                garson = dr.GetString(0);
                acilisZamani = dr.GetDateTime(1);
            }
            catch
            {
                KontrolFormu dialog = new KontrolFormu("Adisyon bilgileri alınırken hata oluştu, lütfen tekrar deneyiniz", false);
                dialog.Show();
                return;
            }

            cmd.Connection.Close();
            cmd.Connection.Dispose();

            StringBuilder aYazicilari = new StringBuilder(), dYazicilari = new StringBuilder();

            for (int i = 0; i < adisyonYazicilari.Count; i++)
            {
                aYazicilari.Append("*" + adisyonYazicilari[i][0] + "-" + adisyonYazicilari[i][1] + "-" + adisyonYazicilari[i][2] + "-" + adisyonYazicilari[i][3] + "-" + adisyonYazicilari[i][4]);
            }

            for (int i = 0; i < digerYazicilar.Count; i++)
            {
                dYazicilari.Append("*" + digerYazicilar[i][0] + "-" + digerYazicilar[i][1] + "-" + digerYazicilar[i][2] + "-" + digerYazicilar[i][3] + "-" + digerYazicilar[i][4]);
            }

            //baştaki * ı sil
            if (aYazicilari.Length >= 1)
            {
                aYazicilari.Remove(0, 1);
            }

            if (dYazicilari.Length >= 1)
            {
                dYazicilari.Remove(0, 1);
            }

            client.MesajYolla("komut=BulunanYazicilar&adisyonYazicilari=" + aYazicilari + "&digerYazicilar=" + dYazicilari + "&garson=" + garson + "&acilisZamani=" + acilisZamani.ToString());
        }