private void AktualizujPlikZHistoria(Zamawiajacy zamawiajacy) { String path = "HistoriaZamowien.txt"; try { if (!File.Exists(path)) { StreamWriter sw = File.CreateText(path); sw.WriteLine("{0}", zamawiajacy.Nazwa1); sw.WriteLine("Zestawy: {0} Główne: {1} Zupy: {2} Dodatkowe: {3}", zamawiajacy.Zestaw1, zamawiajacy.Glowne1, zamawiajacy.Zupy1, zamawiajacy.Dodatkowe1); sw.WriteLine("----"); sw.Close(); } else { FileStream fs = new FileStream(path, FileMode.Append, FileAccess.Write, FileShare.ReadWrite); StreamWriter sw = new StreamWriter(fs); sw.WriteLine("{0}", zamawiajacy.Nazwa1); sw.WriteLine("Zestawy: {0} Główne: {1} Zupy: {2} Dodatkowe: {3}", zamawiajacy.Zestaw1, zamawiajacy.Glowne1, zamawiajacy.Zupy1, zamawiajacy.Dodatkowe1); sw.WriteLine("----"); sw.Close(); } }catch (Exception ex) { MessageBox.Show(ex.Message, "Komunikat", MessageBoxButtons.OK); } }
private void ButtonZen_Click(object sender, EventArgs e) { DialogResult yesno = MessageBox.Show("Czy chcesz zakończyć zamówienie i pożenić ludzi? \r\n" + "Operacji nie będzie można cofnąć!", "Komunikat", MessageBoxButtons.YesNo); if (yesno == DialogResult.Yes) { Stack <Zamawiajacy> revstoszamawiajacych = new Stack <Zamawiajacy>(); int ilosczestawow = 0; int iloscglownych = 0; int ilosczup = 0; int iloscdodatkowych = 0; int lengthstosu = stoszamawiajacych.Count(); try { for (int i = 0; i < lengthstosu; i++) { Zamawiajacy zamawiajacy = stoszamawiajacych.Pop(); ilosczestawow += zamawiajacy.Zestaw1; iloscglownych += zamawiajacy.Glowne1; ilosczup += zamawiajacy.Zupy1; iloscdodatkowych += zamawiajacy.Dodatkowe1; revstoszamawiajacych.Push(zamawiajacy); } Stack <String> stosglownych = new Stack <String>(); Stack <String> stoszup = new Stack <String>(); for (int i = 0; i < lengthstosu; i++) { Zamawiajacy zamawiajacy = revstoszamawiajacych.Pop(); if (zamawiajacy.Glowne1 > 0) { for (int j = 0; j < zamawiajacy.Glowne1; j++) { stosglownych.Push(zamawiajacy.Nazwa1); } } if (zamawiajacy.Zupy1 > 0) { for (int j = 0; j < zamawiajacy.Zupy1; j++) { stoszup.Push(zamawiajacy.Nazwa1); } } } Stack <String> revstosglownych = new Stack <String>(); Stack <String> revstoszup = new Stack <String>(); int lengthg = stosglownych.Count(); int lengthz = stoszup.Count(); for (int i = 0; i < lengthg; i++) { revstosglownych.Push(stosglownych.Pop()); } for (int i = 0; i < lengthz; i++) { revstoszup.Push(stoszup.Pop()); } if (lengthg >= lengthz) { for (int i = 0; i < lengthz; i++) { MessageBox.Show("Pożeniono " + revstosglownych.Pop() + " i " + revstoszup.Pop(), "Żeniaczka", MessageBoxButtons.OK); iloscglownych--; ilosczup--; ilosczestawow++; } } if (lengthg < lengthz) { for (int i = 0; i < lengthg; i++) { MessageBox.Show("Pożeniono " + revstosglownych.Pop() + " i " + revstoszup.Pop(), "Żeniaczka", MessageBoxButtons.OK); iloscglownych--; ilosczup--; ilosczestawow++; } } DodajKoncoweWartosci(ilosczestawow, iloscglownych, ilosczup, iloscdodatkowych); AktualizujHistorieZPliku(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Komunikat", MessageBoxButtons.OK); } } }