private void AddNovyNakladAutaB_Click(object sender, EventArgs e) { if (!GeneratorID.ExistujeID(AutoIDTB.Text)) { MessageBox.Show("Dané auto neexistuje - zvolte validní ID", "ERROR"); return; } ValidaceDatumuACasu(DatumNakladuDTP.Value, CasNakladuTB.Text, true); DateTime datum = DatumNakladuDTP.Value; DateTime cas = DateTime.Parse(CasNakladuTB.Text); DateTime datumACas = new DateTime(datum.Year, datum.Month, datum.Day, cas.Hour, cas.Minute, 00); if (CisloFakturyTB.Text.Length < 0 || CenaNakladuTB.Text.Length < 0 || PopisNakladuTB.Text.Length < 0) { MessageBox.Show("Vstupy nesmí být prázdné - minimálně je potřeba 1 znak", "ERROR"); return; } if (!KontrolaTextVstupu.KontrolaVolnychVstupu(CisloFakturyTB.Text)) { MessageBox.Show("Prosím nepoužívejte znak | v čísle faktury", "ERROR"); } if (!KontrolaTextVstupu.KontrolaVolnychVstupu(PopisNakladuTB.Text)) { MessageBox.Show("Prosím nepoužívejte znak | v popis nákladu", "ERROR"); } decimal cena; if (decimal.TryParse(CenaNakladuTB.Text, out cena)) { cena = decimal.Parse(CenaNakladuTB.Text); } else { MessageBox.Show("Nelze překonvertovat cenu na číslo", "ERROR"); return; } string casovaNarocnostString = CasovaNarocnostTB.Text; if (casovaNarocnostString.Contains(':')) { string[] poleHodinAMinut = casovaNarocnostString.Split(':'); if (poleHodinAMinut.Length == 3) { if (poleHodinAMinut[0].Length == 2 && poleHodinAMinut[1].Length == 2 && poleHodinAMinut[2].Length == 2) { if (int.TryParse(poleHodinAMinut[0], out int i) && int.TryParse(poleHodinAMinut[1], out int y) && int.TryParse(poleHodinAMinut[1], out int z)) { i = int.Parse(poleHodinAMinut[0]); y = int.Parse(poleHodinAMinut[1]); z = int.Parse(poleHodinAMinut[2]); if (i >= 0 && i <= 23 && y >= 0 && y <= 59 && z <= 99) { //correct vstup } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } TimeSpan casovaNarocnostTimeSpan = TimeSpan.Parse(casovaNarocnostString); NakladyAuta novyNaklad = new NakladyAuta(CisloFakturyTB.Text, AutoIDTB.Text, PopisNakladuTB.Text, datumACas, casovaNarocnostTimeSpan, cena); PromenneProVsechnyForms.NakladyList.Add(novyNaklad); foreach (Auto a in PromenneProVsechnyForms.AutaList) { if (a.AutoID == AutoIDTB.Text) { a.NakladyTohotoAuta.Add(novyNaklad); MessageBox.Show("Úspěšně byla přidán náklad - pozn.: pro aktualizaci listboxu vypište jeho obsah znovu", "SUCCESS"); break; } } }
private void AddNakladNovehoAutaB_Click(object sender, EventArgs e) { if (!ValidaceVstupuVTextBoxuProNedostupnost(DatumNakladuDTP.Value, CasNakladuTB.Text, true)) { return; } if (CisloFakturyTB.Text.Length < 0 || CenaNakladuTB.Text.Length < 0 || PopisNakladuTB.Text.Length < 0) { MessageBox.Show("Vstupy nesmí být prázdné - minimálně je potřeba 1 znak", "ERROR"); return; } if (!KontrolaTextVstupu.KontrolaVolnychVstupu(CisloFakturyTB.Text)) { MessageBox.Show("Prosím nepoužívejte znak | v čísle faktury", "ERROR"); } if (!KontrolaTextVstupu.KontrolaVolnychVstupu(PopisNakladuTB.Text)) { MessageBox.Show("Prosím nepoužívejte znak | v popis nákladu", "ERROR"); } string casovaNarocnostString = CasovaNarocnostTB.Text; if (casovaNarocnostString.Contains(':')) { string[] poleHodinAMinut = casovaNarocnostString.Split(':'); if (poleHodinAMinut.Length == 3) { if (poleHodinAMinut[0].Length == 2 && poleHodinAMinut[1].Length == 2 && poleHodinAMinut[2].Length == 2) { if (int.TryParse(poleHodinAMinut[0], out int i) && int.TryParse(poleHodinAMinut[1], out int y) && int.TryParse(poleHodinAMinut[1], out int z)) { i = int.Parse(poleHodinAMinut[0]); y = int.Parse(poleHodinAMinut[1]); z = int.Parse(poleHodinAMinut[2]); if (i >= 0 && i <= 23 && y >= 0 && y <= 59 && z <= 99) { //correct vstup } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } } else { MessageBox.Show("Časová náročnost nemá správný formát", "ERROR"); return; } DateTime datum = DatumNakladuDTP.Value; DateTime cas = DateTime.Parse(CasNakladuTB.Text); DateTime datumACas = new DateTime(datum.Year, datum.Month, datum.Day, cas.Hour, cas.Minute, 00); decimal cena; if (decimal.TryParse(CenaNakladuTB.Text, out cena)) { cena = decimal.Parse(CenaNakladuTB.Text); } else { MessageBox.Show("Nelze překonvertovat cenu na číslo", "ERROR"); return; } NakladyAuta novyNaklad = new NakladyAuta(CisloFakturyTB.Text, PopisNakladuTB.Text, DatumNakladuDTP.Value, TimeSpan.Parse(CasovaNarocnostTB.Text), cena); listNakladuNovehoAuta.Add(novyNaklad); string reformatovanyNaklad = $"{CisloFakturyTB.Text}|{PopisNakladuTB.Text}|{datumACas.ToString("dd.MM.yyyy HH:mm")}|{TimeSpan.Parse(CasovaNarocnostTB.Text).ToString()}|{cena}"; NakladyLB.Items.Add(reformatovanyNaklad); NakladyLB.Items.Add(""); }