private void btnOdaberiDirektorij_Click(object sender, EventArgs e) { try { Datoteka.OdaberiRadniDirektorij(); OsvjeziFormu(); if (Datoteka.ProvjeriPostojanostDatoteka()) { Datoteka.IzbrisiDatoteke(); } this.btnGenerirajKljuceve.Enabled = true; this.btnOdaberiDirektorij.Enabled = false; } catch (Exception poruka) { MessageBox.Show(poruka.Message); } }
private void btnOdabirUlazneDatoteke_Click(object sender, EventArgs e) { string putanjaDatoteke = ""; try { putanjaDatoteke = Datoteka.UcitajSadrzajKriptiranja(); if (putanjaDatoteke.Length > 0 && putanjaDatoteke != "") { txtUlazniPodatak.Text = Datoteka.UcitajSadrzajDatoteke(putanjaDatoteke); //txtUlazniPodatak.Enabled = false; } } catch (Exception poruka) { MessageBox.Show(poruka.Message); } }
/// <summary> /// Metoda koja služi za učitavanje podataka iz datoteke tvrtka /// </summary> /// <param name="args"></param> public static void UcitajPodatkeDatotekeTvrtka(string[] args) { string putanja = SaznajPutanjuDatTvrtka(args); TvrtkaSingleton tvrtkaSingleton = TvrtkaSingleton.GetTvrtkaInstance(); Console.WriteLine("\nZapočinjem čitanje datoteke tvrtka."); string tvrtkaDatotekaText = ""; try { tvrtkaDatotekaText = File.ReadAllText(putanja); } catch { Console.WriteLine("Pogreška kod čitanja datoteke tvrtka.\nProvjerite da li se " + "datoteka nalazi na navedenoj putanji (" + putanja + ").\nIzlazak iz programa."); Console.ReadLine(); Environment.Exit(0); } tvrtkaSingleton.SetCompositeTvrtka(); Console.WriteLine("Završeno čitanje datoteke tvrtka." + "\nZapočinjem učitavanje podataka datoteke tvrtka."); string[] nizRedakaTvrtke = Datoteka.PrepoznajRetkeIzDatoteke(tvrtkaDatotekaText, Datoteka.LINE_SPLIT); tvrtkaSingleton.ListaTvrtki = DohvatiIspravneTvrtke(nizRedakaTvrtke, Datoteka.ATTR_SPLIT); if (tvrtkaSingleton.ListaTvrtki.Count > 0) { Console.WriteLine("Završeno učitavanje podataka datoteke tvrtka. " + "(Ispravnih zapisa: " + tvrtkaSingleton.ListaTvrtki.Count + ")"); } else { Console.WriteLine("Datoteka tvrtki ne sadrži niti jedan ispravan zapis za tvrtku." + "\nGasim program."); Console.ReadLine(); Environment.Exit(0); } }
private void btnProvjeiDigitalniPotpis_Click(object sender, EventArgs e) { string putanjaOdabranaDatoteka = ""; OpenFileDialog odabranaDatoteka = new OpenFileDialog(); if (odabranaDatoteka.ShowDialog() == DialogResult.OK) { putanjaOdabranaDatoteka = odabranaDatoteka.FileName; } byte[] sadrzajDatoteke = Datoteka.UcitajOdredenuDatoteku(putanjaOdabranaDatoteka); byte[] digitalniPotpisDatoteke = RSA.DigitalnoPotpisi(sadrzajDatoteke); bool ispravnostDigitalnogPotpisa = false; ispravnostDigitalnogPotpisa = RSA.ProvjeraValjanostiDigitalnogPotpisa(sadrzajDatoteke, digitalniPotpisDatoteke); if (ispravnostDigitalnogPotpisa) { MessageBox.Show("Datoteka je valjana!"); } else { MessageBox.Show("Datoteka nije valjana!"); } }
/// <summary> /// Metoda koja služi za učitavanje podataka iz datoteke lokacija vozila /// </summary> /// <param name="args"></param> public static void UcitajPodatkeDatotekeLokacijeVozila(string[] args) { string putanja = SaznajPutanjuDatLokacijeVozila(args); TvrtkaSingleton Tvrtka = TvrtkaSingleton.GetTvrtkaInstance(); Console.WriteLine("\nZapočinjem čitanje datoteke lokacije vozila."); string lokacijeVozilaDatotekaText = ""; try { lokacijeVozilaDatotekaText = File.ReadAllText(putanja); } catch { Console.WriteLine("Pogreška kod čitanja datoteke lokacije vozila.\nProvjerite da li se " + "datoteka nalazi na navedenoj putanji (" + putanja + ").\nIzlazak iz programa."); Console.ReadLine(); Environment.Exit(0); } Console.WriteLine("Završeno čitanje datoteke lokacija vozila." + "\nZapočinjem učitavanje podataka datoteke lokacija vozila."); string[] nizRedakaLokacijeVozila = Datoteka.PrepoznajRetkeIzDatoteke(lokacijeVozilaDatotekaText, Datoteka.LINE_SPLIT); Tvrtka.ListaLokacijaVozila = DohvatiIspravneLokacijeVozila(nizRedakaLokacijeVozila, Datoteka.ATTR_SPLIT); Tvrtka.SetMyFolderLocation(Datoteka.DohvatiLokacijuMjestaDatoteke(putanja)); if (Tvrtka.ListaLokacijaVozila.Count > 0) { Console.WriteLine("Završeno učitavanje podataka lokacije vozila. " + "(Ispravnih zapisa: " + Tvrtka.ListaLokacijaVozila.Count + ")"); } else { Console.WriteLine("Datoteka lokacije vozila ne sadrži niti jedan ispravan zapis " + ".\nGasim program."); Console.ReadLine(); Environment.Exit(0); } }
private void OsvjeziFormu() { txtDirektorijRada.Text = Datoteka.DohvatiRadniDirektorij(); }
/// <summary> /// Metoda koja služi za dohvat ispravnih lokacija vozila, redaka /// </summary> /// <param name="nizRedaka"></param> /// <param name="splitter"></param> /// <returns>Vraća listu sa ispravnim podacima</returns> private static List <LokacijeVozila> DohvatiIspravneLokacijeVozila(string[] nizRedaka, char splitter) { TvrtkaSingleton tvrtka = TvrtkaSingleton.GetTvrtkaInstance(); List <LokacijeVozila> izlaznaLista = new List <LokacijeVozila>(); string[] atributiZaglavlja = nizRedaka[0].Split(splitter); for (int i = 1; i < nizRedaka.Length; i++) { int brojGresaka = 0; string[] privremeniObjekt = nizRedaka[i].Split(splitter); if (!Datoteka.ProvjeriBrojAtributa(privremeniObjekt, atributiZaglavlja.Length)) { brojGresaka++; Console.Write("Neispravan broj atributa! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID lokacije mora biti cijeli broj! --> "); } else if (!PostojiLokacija(privremeniObjekt[0])) { brojGresaka++; Console.Write("Unesena loakcija ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[1])) { brojGresaka++; Console.Write("ID vozila mora biti cijeli broj! --> "); } else if (!PostojiVozilo(privremeniObjekt[1])) { brojGresaka++; Console.Write("Uneseno vozilo ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[2])) { brojGresaka++; Console.Write("Broj mjesta mora biti cijeli broj! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[3])) { brojGresaka++; Console.Write("Broj raspoloživih mjesta mora biti cijeli broj! --> "); } else if (int.Parse(privremeniObjekt[3]) > int.Parse(privremeniObjekt[2])) { brojGresaka++; Console.Write("Nemoguće je da postoji više raspoloživih mjesta nego što je ukupno mjesta! --> "); } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiLokacijuVozila(privremeniObjekt)); } } return(izlaznaLista); }
/// <summary> /// Metoda koja služi za dohvaćanje ispravnih aktivnosti, redaka /// </summary> /// <param name="nizRedaka"></param> /// <param name="splitter"></param> /// <returns>Vraća listu sa ispravnim podacima</returns> public static List <Aktivnost> DohvatiIspravneAktivnosti(string[] nizRedaka, char splitter, string[] args) { TvrtkaSingleton tvrtka = TvrtkaSingleton.GetTvrtkaInstance(); string[] atributiZaglavlja = nizRedaka[0].Split(splitter); for (int i = 1; i < nizRedaka.Length; i++) { string[] privremeniObjekt = nizRedaka[i].Split(splitter); if (privremeniObjekt.Length == 6) { int brojGresaka = 0; if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID aktivnosti mora biti cijeli broj! --> "); } else if (!Datoteka.IspravanDatum(privremeniObjekt[1])) { brojGresaka++; Console.Write("Uneseni datum nije ispravnog formata! --> "); } else if (!Datoteka.ProvjeraDaLiJeDatumVeciOdPrethodnog(privremeniObjekt[1], izlaznaLista, args)) { brojGresaka++; } else if (!Datoteka.IspravanInt(privremeniObjekt[2])) { brojGresaka++; Console.Write("ID korisnika mora biti cijeli broj! --> "); } else if (!PostojiKorisnik(privremeniObjekt[2])) { brojGresaka++; Console.Write("Uneseni korisnik ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[3])) { brojGresaka++; Console.Write("ID lokacije mora biti cijeli broj! --> "); } else if (!PostojiLokacija(privremeniObjekt[3])) { brojGresaka++; Console.Write("Unesena lokacija ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[4])) { brojGresaka++; Console.Write("ID vozila mora biti cijeli broj! --> "); } else if (!PostojiVozilo(privremeniObjekt[4])) { brojGresaka++; Console.Write("Uneseno vozilo ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[5])) { brojGresaka++; Console.Write("Broj kilometara mora biti cijeli broj! --> "); } else if (!Datoteka.ProvjeravaJeLiBrojKmVeciOdDometa(int.Parse(privremeniObjekt[4]), int.Parse(privremeniObjekt[5]))) { brojGresaka++; } else if (!Datoteka.ProvjeraPostojiLiBrojMjesta(int.Parse(privremeniObjekt[3]), int.Parse(privremeniObjekt[4]))) { brojGresaka++; } else if (!Datoteka.ProvjeraMozeLiKorisnikVratitiVoziloNaLokaciju(int.Parse(privremeniObjekt[3]), int.Parse(privremeniObjekt[4]), int.Parse(privremeniObjekt[2]))) { brojGresaka++; } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (privremeniObjekt.Length == 2) { int brojGresaka = 0; if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID aktivnosti mora biti cijeli broj! --> "); } else if (int.Parse(privremeniObjekt[0]) == 0) { if (!Datoteka.IspravanDatum(privremeniObjekt[1])) { brojGresaka++; Console.Write("Uneseni datum nije ispravnog formata! --> "); } else if (!Datoteka.ProvjeraDaLiJeDatumVeciOdPrethodnog(privremeniObjekt[1], izlaznaLista, args)) { brojGresaka++; Console.WriteLine("Datum mora biti veći od datuma prethodne aktivnosti! --> "); } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (int.Parse(privremeniObjekt[0]) == 6) { if (privremeniObjekt[1].Trim().Length != 9 && privremeniObjekt[1].Trim().Length != 11 && privremeniObjekt[1].Trim().Length != 16 && privremeniObjekt[1].Trim().Length != 18) { brojGresaka++; Console.Write("Pogrešno unesene naredbe! --> "); } else { } } else if (int.Parse(privremeniObjekt[0]) == 7) { if (privremeniObjekt[1].Trim().Length != 31 && privremeniObjekt[1].Trim().Length != 33) { brojGresaka++; Console.Write("Pogrešno unesene naredbe! --> "); } else { } } else if (int.Parse(privremeniObjekt[0]) == 8) { if (privremeniObjekt[1].Trim().Length != 31 && privremeniObjekt[1].Trim().Length != 33) { brojGresaka++; Console.Write("Pogrešno unesene naredbe! --> "); } else { } } else if (int.Parse(privremeniObjekt[0]) == 10) { } else if (int.Parse(privremeniObjekt[0]) == 11) { } else if (int.Parse(privremeniObjekt[0]) != 0 || int.Parse(privremeniObjekt[0]) != 6 || int.Parse(privremeniObjekt[0]) != 7 || int.Parse(privremeniObjekt[0]) != 8 || int.Parse(privremeniObjekt[0]) != 9 || int.Parse(privremeniObjekt[0]) != 10 || int.Parse(privremeniObjekt[0]) != 11) { brojGresaka++; Console.Write("Unjeli ste pogrešan broj aktivnosti!"); } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (privremeniObjekt.Length == 1) { int brojGresaka = 0; if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID aktivnosti mora biti cijeli broj! --> "); } else if (int.Parse(privremeniObjekt[0]) != 9) { brojGresaka++; Console.Write("Pogrešno unesen broj aktivnosti! Mora iznositi 9! --> "); } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (privremeniObjekt.Length == 5) { int brojGresaka = 0; if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID aktivnosti mora biti cijeli broj! --> "); } else if (!Datoteka.IspravanDatum(privremeniObjekt[1])) { brojGresaka++; Console.Write("Uneseni datum nije ispravnog formata! --> "); } else if (!Datoteka.ProvjeraDaLiJeDatumVeciOdPrethodnog(privremeniObjekt[1], izlaznaLista, args)) { brojGresaka++; } else if (!Datoteka.IspravanInt(privremeniObjekt[2])) { brojGresaka++; Console.Write("ID korisnika mora biti cijeli broj! --> "); } else if (!PostojiKorisnik(privremeniObjekt[2])) { brojGresaka++; Console.Write("Uneseni korisnik ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[3])) { brojGresaka++; Console.Write("ID lokacije mora biti cijeli broj! --> "); } else if (!PostojiLokacija(privremeniObjekt[3])) { brojGresaka++; Console.Write("Unesena lokacija ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[4])) { brojGresaka++; Console.Write("ID vozila mora biti cijeli broj! --> "); } else if (!PostojiVozilo(privremeniObjekt[4])) { brojGresaka++; Console.Write("Uneseno vozilo ne postoji! --> "); } else if (int.Parse(privremeniObjekt[0]) == 2) { //Console.WriteLine(int.Parse(privremeniObjekt[0])); if (!Datoteka.ProvjeriPostojiLiKorisnikSPosudbom(int.Parse(privremeniObjekt[2]), int.Parse(privremeniObjekt[4]))) { brojGresaka++; } else { } } else if (!Datoteka.ProvjeraPostojeLiRaspolozivaVozila(int.Parse(privremeniObjekt[3]), int.Parse(privremeniObjekt[4]))) { brojGresaka++; } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (privremeniObjekt.Length == 7) { int brojGresaka = 0; if (!Datoteka.IspravanInt(privremeniObjekt[0])) { brojGresaka++; Console.Write("ID aktivnosti mora biti cijeli broj! --> "); } else if (!Datoteka.IspravanDatum(privremeniObjekt[1])) { brojGresaka++; Console.Write("Uneseni datum nije ispravnog formata! --> "); } else if (!Datoteka.ProvjeraDaLiJeDatumVeciOdPrethodnog(privremeniObjekt[1], izlaznaLista, args)) { brojGresaka++; } else if (!Datoteka.IspravanInt(privremeniObjekt[2])) { brojGresaka++; Console.Write("ID korisnika mora biti cijeli broj! --> "); } else if (!PostojiKorisnik(privremeniObjekt[2])) { brojGresaka++; Console.Write("Uneseni korisnik ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[3])) { brojGresaka++; Console.Write("ID lokacije mora biti cijeli broj! --> "); } else if (!PostojiLokacija(privremeniObjekt[3])) { brojGresaka++; Console.Write("Unesena lokacija ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[4])) { brojGresaka++; Console.Write("ID vozila mora biti cijeli broj! --> "); } else if (!PostojiVozilo(privremeniObjekt[4])) { brojGresaka++; Console.Write("Uneseno vozilo ne postoji! --> "); } else if (!Datoteka.IspravanInt(privremeniObjekt[5])) { brojGresaka++; Console.Write("Broj kilometara mora biti cijeli broj! --> "); } else if (!Datoteka.IspravanString(privremeniObjekt[6])) { brojGresaka++; Console.Write("Neispravno unesen opis problema! --> "); } else if (!Datoteka.ProvjeravaJeLiBrojKmVeciOdDometa(int.Parse(privremeniObjekt[4]), int.Parse(privremeniObjekt[5]))) { brojGresaka++; } else if (!Datoteka.ProvjeraPostojiLiBrojMjesta(int.Parse(privremeniObjekt[3]), int.Parse(privremeniObjekt[4]))) { brojGresaka++; } else if (!Datoteka.ProvjeraMozeLiKorisnikVratitiVoziloNaLokaciju(int.Parse(privremeniObjekt[3]), int.Parse(privremeniObjekt[4]), int.Parse(privremeniObjekt[2]))) { brojGresaka++; } if (brojGresaka != 0) { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { izlaznaLista.Add(IzradiAktivnost(privremeniObjekt)); } } else if (privremeniObjekt.Length != 1 || privremeniObjekt.Length != 2 || privremeniObjekt.Length != 5 || privremeniObjekt.Length != 6 || privremeniObjekt.Length != 7) { Console.Write("Neispravan broj atributa! --> "); Ispis.IspisGreskeRedak(i, nizRedaka[i]); } else { Ispis.IspisGreskeRedak(i, nizRedaka[i]); } } return(izlaznaLista); }