示例#1
0
        public bool stavkeNisuKorektne(ListStavki listStavki)
        {
            if (listStavki == null)
            {
                throw  new ArgumentNullException();
            }

            Dictionary <String, List <int> > stavkePoLokacijama = new Dictionary <string, List <int> >();

            if (listStavki.Stavke.Count < 23 || listStavki.Stavke.Count > 25)
            {
                return(false);
            }

            foreach (var item in listStavki.Stavke)
            {
                List <int> stavkeNaLokaciji = new List <int>();
                if (stavkePoLokacijama.TryGetValue(item.OBLAST, out stavkeNaLokaciji)) //
                {
                    if (stavkeNaLokaciji.Contains(item.SAT))                           //Ako je vec unet sat za datu lokaciju proglasavamo da je fajl nekorektan
                    {
                        return(false);
                    }
                    stavkeNaLokaciji.Add(item.SAT); //Ako je sve ok dodajemo novi sat u listu sati za tu oblast
                }
                else
                {
                    List <int> novaLista = new List <int>();
                    novaLista.Add(item.SAT);
                }
            }

            return(true);
        }
示例#2
0
        public List <Stavka> ucitajXML(string xml)
        {
            string vreme = DateTime.Now.ToString("dd:MM:yyyy");


            List <Stavka> ret        = new List <Stavka>();
            ListStavki    listStavki = new ListStavki();


            XmlSerializer deserializer = new XmlSerializer(typeof(ListStavki));

            using (TextReader reader = new StreamReader(xml))
            {
                object obj = deserializer.Deserialize(reader);
                listStavki = (ListStavki)obj;
                Console.WriteLine();
            }
            if (!stavkeNisuKorektne(listStavki))
            {
                return(null);
            }

            for (int i = 0; i < listStavki.Stavke.Count; i++)
            {
                Stavka stavka = listStavki.Stavke[i];
                stavka.FAJLUCITAVANJA  = xml;
                stavka.VREMEUCITAVANJA = vreme;
                ret.Add(stavka);
            }
            return(ret);
        }
示例#3
0
        private void Serializuj(ListStavki lista, String imeFajla)
        {
            XmlSerializer serializer = new XmlSerializer(typeof(ListStavki));
            string        path       = Path.GetFullPath(Path.Combine(Directory.GetCurrentDirectory(), @"..\..\..\BazaPodataka\bin\Debug\bazaPodataka_" + imeFajla));

            using (TextWriter textWriter = new StreamWriter(path))
            {
                serializer.Serialize(textWriter, lista);
            }
        }
示例#4
0
        public void stavkeNisuKorektneTrue()
        {
            Service    service = new Service();
            ListStavki list    = new ListStavki();

            for (int i = 0; i < 24; i++)
            {
                list.Stavke.Add(new Stavka("SRB", i, i + 100));
            }

            service.stavkeNisuKorektne(list);
        }
示例#5
0
        public void stavkeNisuKorektneFalse()
        {
            Service    service = new Service();
            ListStavki list    = new ListStavki();

            for (int i = 0; i < 26; i++)
            {
                list.Stavke.Add(new Stavka());
            }

            service.stavkeNisuKorektne(list);
        }
示例#6
0
        private ListStavki DeSerijalizuj(String imeFajla)
        {
            ListStavki retVal = null;

            try
            {
                XmlSerializer serializer = new XmlSerializer(typeof(ListStavki));
                string        path       = Path.GetFullPath(Path.Combine(Directory.GetCurrentDirectory(), @"..\..\..\BazaPodataka\bin\Debug\bazaPodataka_" + imeFajla));
                FileStream    fileStream = new FileStream(path, FileMode.Open);
                retVal = (ListStavki)(serializer.Deserialize(fileStream));
            }catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            return(retVal);
        }
示例#7
0
        private void LoadData()
        {
            ucitano = new List <string>();
            string currentPath = Directory.GetCurrentDirectory();

            using (var reader = new StreamReader("ucitano.csv"))
            {
                while (!reader.EndOfStream)
                {
                    var line = reader.ReadLine();


                    ucitano.Add(line);
                }
            }

            prognoziraneUBazi = DeSerijalizuj("prognozirane.xml");
            ostvareneUBazi    = DeSerijalizuj("ostvarene.xml");
        }