public Form1() { try { Logolas.Ment("The program has been opened."); Csatlakozas(); BejelentkezoForm dialogus = new BejelentkezoForm(); if (dialogus.ShowDialog() != DialogResult.OK) { Logolas.Ment("The program has been closed." + Environment.NewLine + "----------------------------"); Close(); } else { InitializeComponent(); Inits.Init(); VezerlokLetrehozasa(); AddButtonClick(); FormRefresh(); EtrendFeltetelMentes(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Button1_Click(object sender, EventArgs e) { try { Felhasznalo f = new Felhasznalo(Titkositasok.SHAHash(textBox1.Text.Trim() + Konstans.salt), Titkositasok.SHAHash(textBox2.Text + Konstans.salt), ""); if (!ABKezelo.SikeresBelepes(f)) { throw new WarningException("Unsuccessful login!"); } ABKezelo.setCurrentUser(f); Logolas.Ment("Successful login, name: " + textBox1.Text.Trim()); } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } DialogResult = DialogResult.None; } }
private void Button4_Click(object sender, EventArgs e) { if (listBox1.SelectedIndex != -1) { if (MessageBox.Show("Really want to delete the nutrient?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { Tapanyag t = (Tapanyag)listBox1.SelectedItem; //élelmiszerek dictinoray-ből is törölni kell a tápanyagot foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer)) { item.TapanyagTartalom.Remove(t); ABKezelo.Modositas(item); } string nev = t.Megnevezes; ABKezelo.Torol(t); Logolas.Ment("Nutrient deleted, name: " + nev); ListBoxRefresh(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else { MessageBox.Show("To delete a nutrient choose one!", "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
public RendezesForm(bool tipus) { Logolas.Ment("We are on the sort form"); InitializeComponent(); elelmiszerek = new List <Elelmiszer>(); try { if (tipus) { foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer).ToList()) { elelmiszerek.Add(item); } } else { foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer && (x as Elelmiszer).Hasznalhato) .ToList()) { elelmiszerek.Add(item); } } VezerlokLetrehozasa(); AddButtonClick(); Rendezes(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Button6_Click(object sender, EventArgs e) { try { if (listBox1.SelectedIndex != -1 || listBox2.SelectedIndex != -1) { Elelmiszer el; if (listBox1.SelectedIndex != -1) { el = (Elelmiszer)listBox1.SelectedItem; } else { el = (Elelmiszer)listBox2.SelectedItem; } bool torolheto = true; foreach (Menu item in ABKezelo.Kiolvasas().Where(x => x is Menu)) { if (item.Osszetevo.ContainsKey(el)) { torolheto = false; break; } } if (!torolheto) { throw new WarningException("The food has been used by a menu, so it is not deletable! [delete all menu that is using it or only the food from the menu]"); } if (MessageBox.Show("Really want to delete the food?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { string nev = el.Megnevezes; ABKezelo.Torol(el); Logolas.Ment("Deleted food, name: " + nev); listBoxRefresh(); } } else { throw new WarningException("For deletion choose a food!"); } } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void Button1_Click(object sender, EventArgs e) { try { if (numericUpDown1.Value <= 0) { throw new ArgumentException("The exchange rate should be positive!"); } if (penznem == null) { string fnevhash = ABKezelo.GetCurrentUser(); string nev = textBox1.Text.Trim(); string kod = textBox2.Text.Trim().ToUpper(); if (nev == "" || nev.Length > 30) { throw new ArgumentException("The name should be non-empty and at most 30 characters length!"); } if (kod.Length != 3) { throw new ArgumentException("Currency code should have exactly 3 characters!"); } if (ABKezelo.Kiolvasas().Where(x => x is Penznem && (x as Penznem).Megnevezes == nev).ToList().Count != 0) { throw new ArgumentException("We have already a currency with this name!"); } penznem = new Penznem(fnevhash, nev, kod, (double)numericUpDown1.Value, (byte)numericUpDown2.Value, checkBox1.Checked, checkBox2.Checked); ABKezelo.Beszuras(penznem); Logolas.Ment("New currency added, name: " + penznem.Megnevezes); } else { if (!checkBox1.Checked && ABKezelo.Kiolvasas().Where(x => (x is Elelmiszer) && (x as Elelmiszer).Penz.Megnevezes == penznem.Megnevezes).ToList().Count > 0) { throw new ArgumentException("The currency should be usable, because there is a food that is using it!"); } penznem.Arfolyam = (double)numericUpDown1.Value; penznem.TizedesekSzama = (byte)numericUpDown2.Value; penznem.Hasznalhato = checkBox1.Checked; ABKezelo.Modositas(penznem); Logolas.Ment("Currency modification, name: " + penznem.Megnevezes); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } }
private void Form1_FormClosing(object sender, FormClosingEventArgs e) { if (MessageBox.Show("Really want to exit?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) { e.Cancel = true; } else { ABKezelo.KapcsolatBontas(); Logolas.Ment("The program has been closed." + Environment.NewLine + "----------------------------"); } }
private void Button1_Click(object sender, EventArgs e) { try { if (numericUpDown1.Value <= 0) { throw new WarningException("The rate should be positive!"); } if (mertekegyseg == null) { string fnevhash = ABKezelo.GetCurrentUser(); string nev = textBox1.Text.Trim(); if (nev == "" || nev.Length > 30) { throw new WarningException("The name should be non-empty and at most 30 characters!"); } if (ABKezelo.Kiolvasas().Where(x => x is Mertekegyseg && (x as Mertekegyseg).Megnevezes == nev).ToList().Count != 0) { throw new WarningException("We have already a unit with that name!"); } mertekegyseg = new Mertekegyseg(fnevhash, nev, (MertekegysegFajta)comboBox1.SelectedIndex, (double)numericUpDown1.Value, checkBox1.Checked, checkBox2.Checked); ABKezelo.Beszuras(mertekegyseg); Logolas.Ment("New unit added, name: " + mertekegyseg.Megnevezes); } else { mertekegyseg.Hasznalhato = checkBox1.Checked; ABKezelo.Modositas(mertekegyseg); Logolas.Ment("Unit modification, name: " + mertekegyseg.Megnevezes); } } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } DialogResult = DialogResult.None; } }
private void Button1_Click(object sender, EventArgs e) { try { string fnevhash = ABKezelo.GetCurrentUser(); string mnev = comboBox1.SelectedItem.ToString(); Mertekegyseg m = (Mertekegyseg)ABKezelo.Kiolvasas() .Where(x => (x is Mertekegyseg) && (x as Mertekegyseg).Megnevezes == mnev).First(); if (checkBox1.Checked && numericUpDown1.Value > numericUpDown2.Value) { throw new ArgumentException("The daily minimum intake should not be less than the maximumu!"); } if (tapanyag == null) { string nev = textBox1.Text.Trim(); if (nev == "" || nev.Length > 30) { throw new ArgumentException("The name should be non-empty and at most 30 characters length!"); } if (ABKezelo.Kiolvasas().Where(x => x is Tapanyag && (x as Tapanyag).Megnevezes == nev).ToList().Count > 0) { throw new ArgumentException("We have already a nutrient with this name!"); } tapanyag = new Tapanyag(fnevhash, nev, m, (double)numericUpDown1.Value, (double)numericUpDown2.Value, checkBox1.Checked, checkBox2.Checked); ABKezelo.Beszuras(tapanyag); Logolas.Ment("New nutrient added, name: " + tapanyag.Megnevezes); ABKezelo.BeszurTapanyagElelmiszerekbe(tapanyag); } else { tapanyag.NapiMinBevitel = (double)numericUpDown1.Value; tapanyag.NapiMaxBevitel = (double)numericUpDown2.Value; tapanyag.NapiMax = checkBox1.Checked; tapanyag.Hasznalhato = checkBox2.Checked; ABKezelo.Modositas(tapanyag); Logolas.Ment("Nutrient modification, name: " + tapanyag.Megnevezes); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } }
private void Button1_Click(object sender, EventArgs e) { try { string fnev = ABKezelo.GetCurrentUser(); int i, j, k; int p = 0, q = 0; for (i = 0; i < 2; i++) { for (j = 0; j < 4; j++) { for (k = 0; k < 2; k++) { EtkezesFeltetel etk = new EtkezesFeltetel(fnev, (ElelmiszerTipus2)i, (EtkezesTipus2)j, (Szamlalo)k, (double)numericUpDowns[p].Value, checkBoxs[q].Checked, (double)numericUpDowns[p + 1].Value); p += 2; q++; ABKezelo.Torol(etk); ABKezelo.Beszuras(etk); } } } EtrendIdopont et = new EtrendIdopont(fnev, new List <DateTime>(3)); for (i = 0; i < 3; i++) { et.Datum.Add(new DateTime(2018, 1, 1, (int)numericUpDowns2[2 * i].Value, (int)numericUpDowns2[2 * i + 1].Value, 0)); } if (ABKezelo.Kiolvasas().Where(x => x is EtrendIdopont).ToList().Count > 0) { ABKezelo.Modositas(et); } else { ABKezelo.Beszuras(et); } Logolas.Ment("Saved diet conditions."); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Button1_Click(object sender, EventArgs e) { int l1 = textBox1.Text.Trim().Length; int l2 = textBox2.Text.Length; if (l1 < 4 || l1 > 24) { MessageBox.Show("User name's length should be between 4 and 24 !", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } else if (textBox2.Text != textBox3.Text) { MessageBox.Show("The two passwords should be the same!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } else if (l2 < 4 || l2 > 24) { MessageBox.Show("Password length should be between 4 and 24 !", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } else if (textBox4.Text.Length > 30) { MessageBox.Show("Password remainder should be at most 30 !", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } else { Titkositasok t = new Titkositasok(); string felhasznaloNevHash = Titkositasok.SHAHash(textBox1.Text.Trim() + Konstans.salt); if (ABKezelo.CountUsers(felhasznaloNevHash) > 0) { MessageBox.Show("This username is already registered, choose another one!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.None; } else { string jelszoHash = Titkositasok.SHAHash(textBox2.Text + Konstans.salt); Felhasznalo f = new Felhasznalo(felhasznaloNevHash, jelszoHash, t.f0(felhasznaloNevHash, textBox4.Text, KodolasIranya.Kódol)); ABKezelo.Beszuras(f); Logolas.Ment("Register a new user, the name: " + textBox1.Text.Trim()); } } }
internal KeresesForm(bool tipus, object e = null) { // tipus=true, ha az összes élelmiszer között keresünk // tipus=false, ha csak a használtak között if (e == null) { b = false; } t = tipus; InitializeComponent(); elelmiszerek = new List <Elelmiszer>(); try { Logolas.Ment("We are on search form"); VezerlokLetrehozasa(); AddButtonClick(); if (e == null) { if (tipus) { foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer)) { elelmiszerek.Add(item); } } else { foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer && (x as Elelmiszer).Hasznalhato)) { elelmiszerek.Add(item); } } } else { double ar = (e as Elelmiszer).Ar * (e as Elelmiszer).Penz.Arfolyam; if (tipus) { foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer && (x as Elelmiszer).Ar * (x as Elelmiszer).Penz.Arfolyam >= ar) .ToList()) { elelmiszerek.Add(item); } } else { foreach (Elelmiszer item in ABKezelo.Kiolvasas() .Where(x => x is Elelmiszer && (x as Elelmiszer).Ar * (x as Elelmiszer).Penz.Arfolyam <= ar && (x as Elelmiszer).Hasznalhato).ToList()) { elelmiszerek.Add(item); } } } listBox1.DataSource = null; listBox1.DataSource = elelmiszerek; ComboBox1_SelectedIndexChanged(new object(), new EventArgs()); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void Button4_Click(object sender, EventArgs e) { try { if (listBox1.SelectedIndex != -1) { string str = (listBox1.SelectedItem as Mertekegyseg).Megnevezes; bool torolheto = true; foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer)) { if (item is Ital && (item as Ital).Urmertek.Megnevezes == str) { torolheto = false; break; } if (item is Etel && (item as Etel).TomegMertek.Megnevezes == str) { torolheto = false; break; } } if (!torolheto) { throw new WarningException( "This unit is not deletable, beaucse there is a food using it!"); } if (ABKezelo.Kiolvasas().Where(x => x is Tapanyag && (x as Tapanyag).Mertek.Megnevezes == str).ToList().Count > 0) { throw new WarningException( "This unit is not deletable, because there is a nutrient using it!"); } if (ABKezelo.Kiolvasas().Where(x => x is Etel && (x as Etel).TomegMertek.Megnevezes == str).ToList().Count > 0) { throw new WarningException( "This unit is not deletable, because there is a meal using it!"); } if (ABKezelo.Kiolvasas().Where(x => x is Ital && (x as Ital).Urmertek.Megnevezes == str).ToList().Count > 0) { throw new WarningException( "This unit is not deletable, because there is a drink using it!"); } if (((Mertekegyseg)listBox1.SelectedItem).Torolheto) { if (MessageBox.Show("Really want to delete the unit?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { string nev = ((Mertekegyseg)listBox1.SelectedItem).Megnevezes; ABKezelo.Torol((Mertekegyseg)listBox1.SelectedItem); Logolas.Ment("Unit deleted, name: " + nev); ListBoxRefresh(); } } else { throw new WarningException("This unit is not deletable!"); } } else { throw new WarningException("To delete a unit choose one!"); } } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void Button1_Click(object sender, EventArgs e) { try { string fnevhash = ABKezelo.GetCurrentUser(); if (comboBox1.SelectedIndex != (int)ElelmiszerTipus.menu && checkBox2.Checked && numericUpDown5.Value > numericUpDown6.Value) { throw new WarningException("The maximal consumption should not be less than the minimal!"); } if (elelmiszer == null) { string nev = textBox1.Text.Trim(); if (nev == "" || nev.Length > 30) { throw new WarningException("The name should be non-empty and at most 30 characters!"); } if (elelmiszerek.Where(x => x.Megnevezes == nev).ToList().Count > 0) { throw new WarningException("You already have a food with this name!"); } int i; List <bool> fogyaszthato = new List <bool> { checkBox3.Checked, checkBox4.Checked, checkBox5.Checked }; double ar = (double)numericUpDown2.Value; Penznem penz = penznemek.Where(p => p.Megnevezes == comboBox2.SelectedItem.ToString()).First(); Mertekegyseg mertek1 = mertekegysegek.Where(m => m.Megnevezes == comboBox3.SelectedItem.ToString()).First(); double mennyiseg1 = (double)numericUpDown3.Value; Mertekegyseg mertek2 = mertekegysegek.Where(m => m.Megnevezes == comboBox4.SelectedItem.ToString()).First(); double mennyiseg2 = (double)numericUpDown4.Value; //étel Elelmiszer el = null; switch ((ElelmiszerTipus)comboBox1.SelectedIndex) { case ElelmiszerTipus.meal: { el = new Etel(fnevhash, textBox1.Text.Trim(), (byte)numericUpDown1.Value, penz, ar, checkBox1.Checked, fogyaszthato, checkBox6.Checked, checkBox7.Checked, new Dictionary <Tapanyag, double>(), mennyiseg1, (double)numericUpDown5.Value, (double)numericUpDown6.Value, checkBox2.Checked, mertek1); break; } //ital case ElelmiszerTipus.drink: { el = new Ital(fnevhash, textBox1.Text.Trim(), (byte)numericUpDown1.Value, penz, ar, checkBox1.Checked, fogyaszthato, checkBox6.Checked, checkBox7.Checked, new Dictionary <Tapanyag, double>(), mennyiseg2, (double)numericUpDown5.Value, (double)numericUpDown6.Value, checkBox2.Checked, mertek2); break; } //menü case ElelmiszerTipus.menu: { el = new Menu(fnevhash, textBox1.Text.Trim(), (byte)numericUpDown1.Value, penz, ar, checkBox1.Checked, fogyaszthato, checkBox6.Checked, checkBox7.Checked, new Dictionary <Tapanyag, double>(), (byte)numericUpDown7.Value, 1, mertek1, 1, mertek2, new Dictionary <Elelmiszer, double>(), checkBox8.Checked); break; } } foreach (Tapanyag item in ABKezelo.Kiolvasas().Where(x => x is Tapanyag).ToList()) { el.TapanyagTartalom.Add(item, 0); } for (i = 0; i < labelek.Count(); i++) { string str = labelek[i].Text.Remove(labelek[i].Text.Length - 1); double m = (double)szamlalok[i].Value; Tapanyag t = tapanyagok.Where(x => x.Megnevezes == str).First(); el.TapanyagTartalom[t] = m; } if (el is Menu) { bool van = false; for (i = 0; i < labelek3.Count; i++) { string str = labelek3[i].Text.Remove(labelek3[i].Text.Length - 1); double m = (double)szamlalok3[i].Value; if (m > 0) { van = true; } Elelmiszer el2 = elelmiszerek.Where(x => x.Megnevezes == str).First(); (el as Menu).Osszetevo.Add(el2, m); } if (!van) { throw new WarningException("There is no meal/drink with positive mass/volume!"); } } ABKezelo.Beszuras(el); Logolas.Ment("New food added, name: " + el.Megnevezes); } else { elelmiszer.Orom = (byte)numericUpDown1.Value; elelmiszer.Ar = (double)numericUpDown2.Value; string pnev = comboBox2.SelectedItem.ToString(); elelmiszer.Penz = penznemek.Where(x => x.Megnevezes == pnev).First(); elelmiszer.EgysegTobbszorose = checkBox1.Checked; elelmiszer.Fogyaszthato = new List <bool>() { checkBox3.Checked, checkBox4.Checked, checkBox5.Checked }; elelmiszer.Valtozatossag = checkBox6.Checked; elelmiszer.Hasznalhato = checkBox7.Checked; int i; for (i = 0; i < labelek.Count; i++) { string tnev = labelek[i].Text.Remove(labelek[i].Text.Length - 1); Tapanyag t = tapanyagok.Where(x => x.Megnevezes == tnev).First(); elelmiszer.TapanyagTartalom[t] = (double)szamlalok[i].Value; } if (elelmiszer is Etel) { (elelmiszer as Etel).TomegMertek.Megnevezes = comboBox3.SelectedItem.ToString(); (elelmiszer as Etel).EgysegTomegMennyiseg = (double)numericUpDown3.Value; (elelmiszer as Etel).MinTomeg = (double)numericUpDown5.Value; (elelmiszer as Etel).MaxTomeg = (double)numericUpDown6.Value; (elelmiszer as Etel).MaxTomegE = checkBox2.Checked; } else if (elelmiszer is Ital) { (elelmiszer as Ital).Urmertek.Megnevezes = comboBox4.SelectedItem.ToString(); (elelmiszer as Ital).EgysegUrTartalomMennyiseg = (double)numericUpDown4.Value; (elelmiszer as Ital).MinUrTartalom = (double)numericUpDown5.Value; (elelmiszer as Ital).MaxUrTartalom = (double)numericUpDown6.Value; (elelmiszer as Ital).MaxUrTartalomE = checkBox2.Checked; } else if (elelmiszer is Menu) { (elelmiszer as Menu).TomegMertek.Megnevezes = comboBox3.SelectedItem.ToString(); (elelmiszer as Menu).EgysegTomegMennyiseg = (double)numericUpDown3.Value; (elelmiszer as Menu).Urmertek.Megnevezes = comboBox4.SelectedItem.ToString(); (elelmiszer as Menu).EgysegUrTartalomMennyiseg = (double)numericUpDown4.Value; (elelmiszer as Menu).MaxDarab = (byte)numericUpDown7.Value; (elelmiszer as Menu).Osszetevo = new Dictionary <Elelmiszer, double>(); double total = 0; for (i = 0; i < labelek3.Count; i++) { string str = labelek3[i].Text.Remove(labelek3[i].Text.Length - 1); Elelmiszer el2 = elelmiszerek.Where(x => x.Megnevezes == str).First(); double m = (double)szamlalok3[i].Value; if (m > 0) { (elelmiszer as Menu).Osszetevo.Add(el2, m); total += m; } } if (total == 0) { throw new WarningException("The unit should be positive"); } } ABKezelo.Modositas(elelmiszer); Logolas.Ment("Food modification, name: " + elelmiszer.Megnevezes); } } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } DialogResult = DialogResult.None; } }
private void Button4_Click(object sender, EventArgs e) { try { if (listBox1.SelectedIndex != -1) { Penznem p = (Penznem)listBox1.SelectedItem; bool torolheto = true; foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer)) { if (item.Penz.Megnevezes == p.Megnevezes) { torolheto = false; break; } } if (!torolheto) { throw new WarningException("This currency is not deletable, because there is a food using it!"); } EtrendFeltetel et = (EtrendFeltetel)ABKezelo.Kiolvasas().Where(x => x is EtrendFeltetel).ToList().First(); if (et.Penz.Megnevezes == p.Megnevezes) { throw new WarningException("This currency is not deletable, bceause Form1 is using it!"); } if (((Penznem)listBox1.SelectedItem).Torolheto) { if (MessageBox.Show("Really want to delete the currency?", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { string nev = ((Penznem)listBox1.SelectedItem).Megnevezes; ABKezelo.Torol((Penznem)listBox1.SelectedItem); Logolas.Ment("Currency deleted, name: " + nev); ListBoxRefresh(); } } else { throw new WarningException("This currency is not deletable!"); } } else { throw new WarningException("To delete a currency choose one!"); } } catch (Exception ex) { if (ex is WarningException) { MessageBox.Show(ex.Message, "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
public static void NaptarbaRak() { try { UserCredential credential; using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read)) { string credPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal); credPath = Path.Combine(credPath, ".credentials/calendar-dotnet-quickstart.json"); credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; } var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); Event evnt = new Event(); EtrendFeltetel e = (EtrendFeltetel)ABKezelo.Kiolvasas().Where(x => x is EtrendFeltetel).First(); var l = ABKezelo.Kiolvasas().Where(x => x is EtrendElelmiszer).ToList(); DateTime e1 = e.Datum1; DateTime e2 = e.Datum2; e1 = new DateTime(e1.Year, e1.Month, e1.Day, 0, 0, 0); e2 = new DateTime(e2.Year, e2.Month, e2.Day, 0, 0, 0); DateTime d = e1; int[] ido = new int[3]; var v = ABKezelo.Kiolvasas().Where(x => x is EtrendIdopont).ToList(); if (v.Count > 0) { EtrendIdopont et = (EtrendIdopont)v.First(); for (int i = 0; i < 3; i++) { ido[i] = 60 * et.Datum[i].Hour + et.Datum[i].Minute; } } else { for (int i = 0; i < 3; i++) { ido[i] = 60 * (7 + 6 * i) + 30; } } int num = 0; while (d <= e2) { for (int i = 0; i < 3; i++) { if (d == e1 && i < (int)e.Etkezes1) { continue; } if (d == e2 && i > (int)e.Etkezes2) { continue; } var l2 = l.Where(x => (x as EtrendElelmiszer).Datum == d && (int)(x as EtrendElelmiszer).Etkezes == i).ToList(); string str = ((EtkezesTipus)i).ToString() + ":"; foreach (EtrendElelmiszer item in l2) { Elelmiszer elelmiszer = item.Elelmiszer; if (elelmiszer is Etel) { str += String.Format("{0:0.0} {1} {2};", item.Tomeg, item.Tomegmertekegyseg.Megnevezes, elelmiszer.Megnevezes); } else if (elelmiszer is Ital) { str += String.Format("{0:0.0} {1} {2};", item.Urmertek, item.Urmertekegyseg.Megnevezes, elelmiszer.Megnevezes); } else { str += String.Format("{0:0.0} {1} [{2:0.0} {3}, {4:0.0} {5}];", item.Val, elelmiszer.Megnevezes, item.Tomeg, item.Tomegmertekegyseg.Megnevezes, item.Urmertek, item.Urmertekegyseg.Megnevezes); } } evnt.Summary = str; evnt.Description = ((EtkezesTipus)i).ToString(); DateTime d1 = d + TimeSpan.FromMinutes(ido[i]); DateTime d2 = d1 + TimeSpan.FromMinutes(30); //30 perc hosszú étkezés // időpontok beállitása evnt.Start = new EventDateTime() { DateTime = d1 }; evnt.End = new EventDateTime() { DateTime = d2 }; String calendarId = "primary"; service.Events.Insert(evnt, calendarId).Execute(); } d = d.AddDays(1); } Logolas.Ment("Successful save to calendar"); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static void XMLRead(string filename, bool check = false, string hash = null, bool msg = true) { try { if (File.Exists(filename)) { List <ABHiba> hibak = new List <ABHiba>(); XDocument xml = XDocument.Load(filename); List <Penznem> penznemek = (from p in xml.Root.Elements("Penznem") select new Penznem(p)).ToList(); List <EtrendAdat> e = new List <EtrendAdat>(); foreach (Penznem item in penznemek) { if (check && item.FelhasznaloNevHash != hash) { throw new ArgumentException("Other user saved this, you have no right to use it!"); } e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <Mertekegyseg> mertekegysegek = (from m in xml.Root.Elements("Mertekegyseg") select new Mertekegyseg(m)).ToList(); foreach (Mertekegyseg item in mertekegysegek) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <Tapanyag> tapanyagok = (from t in xml.Root.Elements("Tapanyag") select new Tapanyag(t, mertekegysegek)).ToList(); foreach (Tapanyag item in tapanyagok) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <Etel> etelek = (from etel in xml.Root.Elements("Etel") select new Etel(etel, penznemek, mertekegysegek)).ToList(); foreach (Etel item in etelek) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <Ital> italok = (from ital in xml.Root.Elements("Ital") select new Ital(ital, penznemek, mertekegysegek)).ToList(); foreach (Ital item in italok) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <Menu> menuk = (from menu in xml.Root.Elements("Menu") select new Menu(menu, penznemek, mertekegysegek)).ToList(); foreach (Menu item in menuk) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); e = new List <EtrendAdat>(); List <ElelmiszerTapanyag> elelmiszertapanyag = (from et in xml.Root.Elements("ElelmiszerTapanyag") select new ElelmiszerTapanyag(et, tapanyagok)).ToList(); List <Elelmiszer> elelmiszerek = new List <Elelmiszer>(); foreach (Etel item in etelek) { elelmiszerek.Add(item); } foreach (Ital item in italok) { elelmiszerek.Add(item); } foreach (Tapanyag t in tapanyagok) { ABKezelo.BeszurTapanyagElelmiszerekbe((Tapanyag)Csere(t, hash), elelmiszerek); } foreach (Elelmiszer item in ABKezelo.Kiolvasas().Where(x => x is Elelmiszer).ToList()) { foreach (ElelmiszerTapanyag item2 in elelmiszertapanyag.Where(x => x.ElelmiszerMegnevezes == item.Megnevezes).ToList()) { item.TapanyagTartalom[item2.Tapanyag] = item2.Ertek; } ABKezelo.Modositas(item); } elelmiszerek = new List <Elelmiszer>(); foreach (Etel item in etelek) { elelmiszerek.Add(item); } foreach (Ital item in italok) { elelmiszerek.Add(item); } e = new List <EtrendAdat>(); List <ElelmiszerElelmiszer> elelmiszerelelmiszer = (from et in xml.Root.Elements("ElelmiszerElelmiszer") select new ElelmiszerElelmiszer(et, elelmiszerek)).ToList(); foreach (Menu item in menuk) { ABKezelo.BeszurElelmiszerElelmiszerekbe((Elelmiszer)Csere(item, hash)); } foreach (Menu item in ABKezelo.Kiolvasas().Where(x => x is Menu).ToList()) { foreach (ElelmiszerElelmiszer item2 in elelmiszerelelmiszer.Where(x => x.ElelmiszerMegnevezes == item.Megnevezes).ToList()) { item.Osszetevo[item2.Elelmiszer] = item2.Ertek; } ABKezelo.Modositas(item); } EtrendFeltetel etrendfeltetel = (from x in xml.Root.Elements("EtrendFeltetel") select new EtrendFeltetel(x)).ToList().First(); ABKezelo.Beszuras(Csere(etrendfeltetel, hash)); e = new List <EtrendAdat>(); List <EtkezesFeltetel> etkezesfeltetel = (from x in xml.Root.Elements("EtkezesFeltetel") select new EtkezesFeltetel(x)).ToList(); foreach (EtkezesFeltetel item in etkezesfeltetel) { e.Add(item); } hibak.AddRange(ABKezelo.Csoportosbeszuras(Csere(e, hash))); var etrendidopont = (from x in xml.Root.Elements("EtrendIdopont") select new EtrendIdopont(x)).ToList(); if (etrendidopont.Count > 0) { ABKezelo.Beszuras(Csere(etrendidopont.First(), hash)); } if (hibak.Count > 0) { string szoveg = ""; foreach (ABHiba item in hibak) { szoveg += item + " " + item.Hibas + Environment.NewLine; } throw new Exception(szoveg); } if (msg) { MessageBox.Show("Successful import!", "Info!", MessageBoxButtons.OK, MessageBoxIcon.Information); Logolas.Ment("Successful XML import!"); } } else { throw new FileNotFoundException("Not existing file!"); } } catch (Exception ex) { if (msg) { Logolas.Ment("Unsuccessful XML import!"); } throw ex; } }
public static void XMLSave(string filename, bool msg = true) { try { XDocument xml = new XDocument(new XElement("Gyoker")); foreach (Penznem item in ABKezelo.Kiolvasas().Where(x => x is Penznem).ToList()) { xml.Root.Add(item.ToXML()); } foreach (Mertekegyseg item in ABKezelo.Kiolvasas().Where(x => x is Mertekegyseg).ToList()) { xml.Root.Add(item.ToXML()); } foreach (Tapanyag item in ABKezelo.Kiolvasas().Where(x => x is Tapanyag).ToList()) { xml.Root.Add(item.ToXML()); } foreach (Etel item in ABKezelo.Kiolvasas().Where(x => x is Etel).ToList()) { xml.Root.Add(item.ToXML()); foreach (KeyValuePair <Tapanyag, double> item2 in item.TapanyagTartalom) { ElelmiszerTapanyag item3 = new ElelmiszerTapanyag(item.FelhasznaloNevHash, item.Megnevezes, item2.Key, item2.Value); xml.Root.Add(item3.ToXML()); } } foreach (Ital item in ABKezelo.Kiolvasas().Where(x => x is Ital).ToList()) { xml.Root.Add(item.ToXML()); foreach (KeyValuePair <Tapanyag, double> item2 in item.TapanyagTartalom) { ElelmiszerTapanyag item3 = new ElelmiszerTapanyag(item.FelhasznaloNevHash, item.Megnevezes, item2.Key, item2.Value); xml.Root.Add(item3.ToXML()); } } foreach (Menu item in ABKezelo.Kiolvasas().Where(x => x is Menu).ToList()) { xml.Root.Add(item.ToXML()); foreach (KeyValuePair <Tapanyag, double> item2 in item.TapanyagTartalom) { ElelmiszerTapanyag item3 = new ElelmiszerTapanyag(item.FelhasznaloNevHash, item.Megnevezes, item2.Key, item2.Value); xml.Root.Add(item3.ToXML()); } foreach (KeyValuePair <Elelmiszer, double> item4 in item.Osszetevo) { ElelmiszerElelmiszer item5 = new ElelmiszerElelmiszer(item.FelhasznaloNevHash, item.Megnevezes, item4.Key, item4.Value); xml.Root.Add(item5.ToXML()); } } xml.Root.Add(ABKezelo.Kiolvasas().Where(x => x is EtrendFeltetel).ToList().First().ToXML()); foreach (EtkezesFeltetel item in ABKezelo.Kiolvasas().Where(x => x is EtkezesFeltetel).ToList()) { xml.Root.Add(item.ToXML()); } var e = ABKezelo.Kiolvasas().Where(x => x is EtrendIdopont).ToList(); if (e.Count > 0) { xml.Root.Add(e.First().ToXML()); } try { xml.Save(filename); if (msg) { Logolas.Ment("Successful XML export!"); } } catch (Exception) { if (msg) { Logolas.Ment("Unsuccessful XML export!"); } throw new FileNotFoundException("Unsuccessful file export!"); } } catch (Exception ex) { throw ex; } }
private void Button6_Click(object sender, EventArgs eventargs) { try { if (numericUpDown3.Value <= 0 || numericUpDown3.Value > Konstans.maxValaszthatoFutasiIdo) { throw new ArgumentException("Running time is positive and at most " + Konstans.maxValaszthatoFutasiIdo + " !"); } Logolas.Ment("Diet making/running with the Glpk program."); EtrendMegold e0 = new EtrendMegold(); List <object> ans = e0.Megoldas(); if ((bool)ans[0]) { EtrendFeltetel e = (EtrendFeltetel)ABKezelo.Kiolvasas().Where(x => x is EtrendFeltetel).First(); var l = ABKezelo.Kiolvasas().Where(x => x is EtrendElelmiszer).ToList(); DateTime e1 = e.Datum1; DateTime e2 = e.Datum2; e1 = new DateTime(e1.Year, e1.Month, e1.Day, 0, 0, 0); e2 = new DateTime(e2.Year, e2.Month, e2.Day, 0, 0, 0); DateTime d = e1; string str = ""; if (checkBox1.Checked) { str += String.Format("Minimum cost: {0} {1}", ans[1], (ans[2] as Penznem).Megnevezes) + Environment.NewLine; } else if (checkBox2.Checked) { str += String.Format("Maximum joy: {0}", ans[1]) + Environment.NewLine; } while (d <= e2) { str += String.Format("{0:yyyy.MM.dd.}", d) + Environment.NewLine; for (int i = 0; i < 3; i++) { if (d == e1 && i < (int)e.Etkezes1) { continue; } if (d == e2 && i > (int)e.Etkezes2) { continue; } var l2 = l.Where(x => (x as EtrendElelmiszer).Datum == d && (int)(x as EtrendElelmiszer).Etkezes == i).ToList(); str += " " + (EtkezesTipus)i + ":" + Environment.NewLine; foreach (EtrendElelmiszer item in l2) { Elelmiszer elelmiszer = item.Elelmiszer; if (elelmiszer is Etel) { str += String.Format(" {0:0.00} {1} {2}", item.Tomeg, item.Tomegmertekegyseg.Megnevezes, elelmiszer.Megnevezes); } else if (elelmiszer is Ital) { str += String.Format(" {0:0.00} {1} {2}", item.Urmertek, item.Urmertekegyseg.Megnevezes, elelmiszer.Megnevezes); } else { str += String.Format(" {0:0.00} {1} [{2:0.00} {3}, {4:0.00} {5}]", item.Val, elelmiszer.Megnevezes, item.Tomeg, item.Tomegmertekegyseg.Megnevezes, item.Urmertek, item.Urmertekegyseg.Megnevezes); } str += Environment.NewLine; } } d = d.AddDays(1); } textBox1.Text = str; File.AppendAllText("diets.txt", "Solution:" + Environment.NewLine + str + Environment.NewLine); if (checkBox5.Checked) { Naptar.NaptarbaRak(); // google calendar-ba mentés, ha checkbox be van jelölve } } else { MessageBox.Show("The linear program has no solution!", "Attention!", MessageBoxButtons.OK, MessageBoxIcon.Information); textBox1.Text = "No solution!"; } } catch (Exception exception) { MessageBox.Show(exception.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } Logolas.Ment("Glpk's run has finished."); }