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(); } }
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(); } }
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 = ""; } }
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; }
// ü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(); } } }
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(); }
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; } } }
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(); } }
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(); }
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); }
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(); } }
// 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; } }
// 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); } } }
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); } } }
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); } }
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); } }
// 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; } }
// 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); } }
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"); }
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(); } }
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(); } } }
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(); } }
// 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(); } }
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); } }
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(); }
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(); } }
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); }
//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"); } }
//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); } } }
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()); }