public void storniraj() { Ucitavanje u = new Ucitavanje(); u.ucitajracune(); Console.WriteLine("\t{0,12}{1,12}{2,10}{3,14}{4,8}", "broj računa", "datum", "Vrijeme", "Broj artikala", "Iznos"); foreach (Racun r in u.racuni) { Console.WriteLine("\t{0,12}{1,12}{2,10}{3,14}{4,8}", r.brojRacuna, r.datumvrijeme.ToString("dd.MM.yyyy"), r.datumvrijeme.ToString("HH:mm"), r.brojstavki, r.ukupno.ToString("0.00")); } Console.WriteLine("\t_________________________________________________________\n"); Console.Write("\tUnesi broj računa koji želiš stornirati: "); string storno = Console.ReadLine(); if (storno == "") { return; } bool ima = false; foreach (Racun r in u.racuni) { if (r.brojRacuna == Int32.Parse(storno)) { ima = true; } } List <Racun> racuni = new List <Racun>(); racuni = u.racuni.Where(racun => racun.brojRacuna != Int32.Parse(storno)).ToList(); List <string> novizapisi = new List <string>(); foreach (Racun racun in racuni) { string upis = racun.brojRacuna.ToString() + " " + racun.datumvrijeme.ToString("dd.MM.yyy HH:mm") + " " + racun.brojstavki.ToString() + " "; foreach (Stavka q in racun.stavke) { upis = upis + q.broj.ToString() + " " + q.sifra.ToString() + " " + q.naziv + " " + q.kolicina.ToString() + " " + q.cijena.ToString(" ") + " " + q.cijena.ToString() + " " + q.iznos.ToString() + " " + q.pdv.ToString() + " " + q.pdvizracun.ToString() + " "; } upis = upis + racun.ukupno.ToString() + " " + racun.PDV; upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); novizapisi.Add(upis); } System.IO.File.WriteAllLines("racuni.txt", novizapisi); if (ima) { Console.WriteLine("\tRačun broj {0} storniran.", storno); } else { Console.WriteLine("\tRačun broj {0} ne postoji.", storno); } Console.Read(); }
public void Kreiranje(string korisnik) { Racun racun = new Racun(); Izbornik i = new Izbornik(); bool vrti = true; int izbor; int broj = 0; while (vrti) { float zbroj = 0; float pdv = 0; Console.Clear(); Console.WriteLine("*************************************************************************"); Console.WriteLine("|\t*Bagajna POS*\t\t\t\t\t\t\t|\n|\tDatum: {0}\t\t\t\t\t\t|\n|\tVrijeme: {1}\t\t\t\t\t\t\t|", DateTime.Now.ToString("dd.MM.yyyy"), DateTime.Now.ToString("HH:mm")); Console.WriteLine("|\t\t\t\t\t\t\t\t\t|"); Console.WriteLine("|\tDobrodošao, {0}!\t\t\t\t\t\t|", korisnik); Console.WriteLine("|\t*Connected with POS\t\t\t\t\t\t|"); Console.WriteLine("|\t\t\t\t\t\t\t\t\t|"); Console.WriteLine("|_______________________________________________________________________|\n"); Console.WriteLine("\t{0,3}{1,7}{2,15}{3,10}{4,10}", "#", "Šifra", "Naziv", "Količina", "Iznos"); if (racun.stavke != null) { foreach (Stavka s in racun.stavke) { Console.WriteLine("\t{0,3}{1,7}{2,15}{3,10}{4,8}kn", s.broj, s.sifra, s.naziv, s.kolicina, s.iznos.ToString("0.00")); zbroj = zbroj + s.iznos; pdv = pdv + s.pdvizracun; } } Console.WriteLine("\t_______________________________________________"); Console.WriteLine("\t{0,35}{1,8}kn", "Ukupno:", zbroj.ToString("0.00")); i.opcije(korisnik); string x = Console.ReadLine(); if (x == "") { continue; } izbor = Int32.Parse(x); switch (izbor) { case 0: return; case 1: broj++; Stavka s = new Stavka(); s.stavka(korisnik, broj); racun.stavke.Add(s); racun.brojstavki = broj; break; case 2: if (racun.stavke == null) { Console.WriteLine("Ne postoji još ni jedna stavka na računu."); Thread.Sleep(1000); break; } Console.Clear(); Console.WriteLine("*************************************************************************"); Console.WriteLine("|\t*Bagajna POS*\t\t\t\t\t\t\t|\n|\tDatum: {0}\t\t\t\t\t\t|\n|\tVrijeme: {1}\t\t\t\t\t\t\t|", DateTime.Now.ToString("dd.MM.yyyy"), DateTime.Now.ToString("HH:mm")); Console.WriteLine("|\t\t\t\t\t\t\t\t\t|"); Console.WriteLine("|\tDobrodošao, {0}!\t\t\t\t\t\t|", korisnik); Console.WriteLine("|\t*Connected with POS\t\t\t\t\t\t|"); Console.WriteLine("|\t\t\t\t\t\t\t\t\t|"); Console.WriteLine("|_______________________________________________________________________|\n"); Console.WriteLine("\t{0,3}{1,7}{2,15}{3,10}{4,10}", "#", "Šifra", "Naziv", "Količina", "Iznos"); if (racun.stavke != null) { foreach (Stavka z in racun.stavke) { Console.WriteLine("\t{0,3}{1,7}{2,15}{3,10}{4,8}kn", z.broj, z.sifra, z.naziv, z.kolicina, z.iznos.ToString("0.00")); } } Console.WriteLine("\t_______________________________________________"); Console.WriteLine("\t{0,35}{1,8}kn\n", "Ukupno:", zbroj.ToString("0.00")); if (korisnik == "blagajnik") { Console.Write("\n\tPotrebna admin lozinka: "); string admin = Console.ReadLine(); if (admin != "admin") { Console.Write("Netočna."); Thread.Sleep(1000); continue; } } Console.Write("\n\tKoju stavku želite obrisati?: "); string t = Console.ReadLine(); if (t == "") { continue; } int id = Int32.Parse(t); racun.izbrisistavku(id); broj--; break; case 3: if (broj == 0) { Console.WriteLine("\n\tNemoguće proknjižiti prazan račun."); Thread.Sleep(1000); } else { Ucitavanje u = new Ucitavanje(); u.ucitajracune(); int brojrac = u.racuni[u.racuni.Count - 1].brojRacuna + 1; racun.brojRacuna = brojrac; racun.brojstavki = broj; racun.datumvrijeme = DateTime.Now; racun.ukupno = zbroj; racun.PDV = pdv; string upis = racun.brojRacuna.ToString() + " " + racun.datumvrijeme.ToString("dd.MM.yyy HH:mm") + " " + racun.brojstavki.ToString() + " "; foreach (Stavka q in racun.stavke) { upis = upis + q.broj.ToString() + " " + q.sifra.ToString() + " " + q.naziv + " " + q.kolicina.ToString() + " " + q.cijena.ToString(" ") + " " + q.cijena.ToString() + " " + q.iznos.ToString() + " " + q.pdv.ToString() + " " + q.pdvizracun.ToString() + " "; } upis = upis + racun.ukupno.ToString() + " " + racun.PDV; upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); upis = upis.Replace(" ", " "); using (System.IO.StreamWriter file = new System.IO.StreamWriter("racuni.txt", true)) { file.WriteLine(upis); } printer printer = new printer(racun); vrti = false; } break; default: break; } } }
public void izvjescec() { float suma = 0; int rang = 1; Ucitavanje u = new Ucitavanje(); u.ucitajracune(); Dictionary <int, izvjesce> rezultati = new Dictionary <int, izvjesce>(); foreach (Racun r in u.racuni) { foreach (Stavka s in r.stavke) { suma += s.iznos; if (!rezultati.ContainsKey(s.sifra)) { izvjesce i = new izvjesce(); i.broj += s.kolicina; i.iznos += s.iznos; i.naziv = s.naziv; rezultati.Add(s.sifra, i); } else { rezultati[s.sifra].broj++; rezultati[s.sifra].iznos += s.iznos; } } } u.ucitajartikle(); Console.Clear(); Console.WriteLine("\n\tPOS.d.o.o\n"); Console.WriteLine("\t\t\tPRODAJA PO ARTIKLU\n"); Console.WriteLine("\tDatum: {0}", DateTime.Now.ToString("dd.MM.yyyy")); Console.WriteLine("\tBlagajnik: Ingrid M.\n"); Console.WriteLine("\tSortirano po vrijednosti:"); Console.WriteLine("\t___________________________________________________\n"); Console.WriteLine("\t{0,4}{1,7}{2,15}{3,15}{4,8}", "Rang", "Sifra", "Naziv", "Broj prodanih", "Iznos"); int n = rezultati.Count; for (int g = 0; g < n; g++) { float max = 0; int maxkey = 0; foreach (KeyValuePair <int, izvjesce> i in rezultati) { if (i.Value.iznos > max) { max = i.Value.iznos; maxkey = i.Key; } } if (maxkey == 0) { Console.WriteLine("\tJoš uvijek nema zapisa."); Console.Read(); return; } Console.WriteLine("\t{0,3}.{1,7}{2,15}{3,15}{4,8}kn", rang++, maxkey, rezultati[maxkey].naziv, rezultati[maxkey].broj, rezultati[maxkey].iznos.ToString("0.00")); rezultati.Remove(maxkey); } Console.WriteLine("\t___________________________________________________\n"); Console.WriteLine("\t{0,47}kn", "Ukupan iznos maloprodaje: " + suma.ToString("0.00")); Console.Read(); }