private void btnIzracunaj_Click(object sender, EventArgs e)
        {
            if (comboBoxVremenskaS.SelectedItem == null)
            {
                MessageBox.Show("Niste izabrali ni jednu stanicu! Molimo Vas izaberite stanicu.", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            PribaviPodatkeZaVremenskuStanicu();
            brojac = 0;

            var connectionString = "mongodb://localhost/?safe=true";
            var server           = MongoServer.Create(connectionString);
            var db = server.GetDatabase("MongoNBP");

            // KOLEKCIJE "vremenski_parametri" i "merenja"
            var collectionParametri = db.GetCollection <VremenskiParametar>("vremenski_parametri");
            var collectionMerenja   = db.GetCollection <Merenje>("merenja");

            // Punimo nizMerenja
            foreach (MongoDBRef merenjaRef in vs.IzmereneVrednosti.ToList())
            {
                Merenje m = db.FetchDBRefAs <Merenje>(merenjaRef);
                nizMerenja.Add(m);

                Temperatura     t  = db.FetchDBRefAs <Temperatura>(m.TempData);
                Padavine        p  = db.FetchDBRefAs <Padavine>(m.PadavineData);
                VlaznostVazduha vv = db.FetchDBRefAs <VlaznostVazduha>(m.VlaznostData);

                nizTemperatura.Add(t);
                nizPadavine.Add(p);
                nizVlaznostVazduha.Add(vv);

                brojac++;
            }

            //Gleda se u odnosu na zadnjih n merenja
            nizTemperatura.Reverse();
            nizPadavine.Reverse();
            nizVlaznostVazduha.Reverse();

            if (numBrMerenja.Value > brojac)
            {
                MessageBox.Show("Uneli ste veci broj merenja od postojecih u bazi podataka (Trenutno postoji: " + brojac + " merenja!)", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            double zbirT = 0, zbirP = 0, zbirVV = 0;

            for (int i = 0; i < numBrMerenja.Value; i++)
            {
                zbirT  += nizTemperatura[i].Vrednost;
                zbirP  += nizPadavine[i].Vrednost;
                zbirVV += nizVlaznostVazduha[i].Vrednost;
            }

            txbTemperatura.Text = (zbirT / (double)numBrMerenja.Value).ToString();
            txbPadavine.Text    = (zbirP / (double)numBrMerenja.Value).ToString();
            txbVlaznost.Text    = (zbirVV / (double)numBrMerenja.Value).ToString();
        }
Example #2
0
 public MerenjeForm(Merenje m, Izmeni i, ISession s)
 {
     InitializeComponent();
     merenje = m;
     izmeni  = i;
     session = s;
     prikaziMerenja();
 }
Example #3
0
        private void button3_Click(object sender, EventArgs e)
        {
            //Dodavanje novih merenja
            Merenje     m  = new Merenje();
            MerenjeForm mf = new MerenjeForm(m, this, session);

            mf.Show();
        }
Example #4
0
        private void button4_Click(object sender, EventArgs e)
        {
            //izmena merenja
            if (dataGridView1.SelectedRows.Count == 0)
            {
                MessageBox.Show("Molimo Vas selektujte neko merenje (kliknite skroz levo na strelicu zeljenog merenja)");
                return;
            }
            Merenje     m  = (Merenje)dataGridView1.SelectedRows[0].Tag;
            MerenjeForm mf = new MerenjeForm(m, this, session);

            mf.Show();
        }
Example #5
0
 public void SaveMerenje(Merenje m)
 {
     using (AMIEntities entity = new AMIEntities())
     {
         Merenja mt = new Merenja()
         {
             tip      = m.Tip.ToString(),
             vrednost = m.Vrednost.ToString()
         };
         entity.Merenjas.Add(mt);
         entity.SaveChanges();
     }
 }
Example #6
0
        public void PribaviPodatke()
        {
            brojac = 0;

            nizTemperatura.Clear();
            nizPadavine.Clear();
            nizVlaznostVazduha.Clear();

            logNizTemperatura.Clear();
            logNizPadavine.Clear();
            logNizVlaznostVazduha.Clear();

            var connectionString = "mongodb://localhost/?safe=true";
            var server           = MongoServer.Create(connectionString);
            var db = server.GetDatabase("MongoNBP");

            // KOLEKCIJE "vremenski_parametri" i "merenja"
            var collectionPadavine = db.GetCollection <VremenskiParametar>("vremenski_parametri");
            var collectionMerenja  = db.GetCollection <Merenje>("merenja");

            // Punimo nizMerenja
            foreach (MongoDBRef merenjaRef in vs.IzmereneVrednosti.ToList())
            {
                Merenje m = db.FetchDBRefAs <Merenje>(merenjaRef);
                nizMerenja.Add(m);

                Temperatura     t  = db.FetchDBRefAs <Temperatura>(m.TempData);
                Padavine        p  = db.FetchDBRefAs <Padavine>(m.PadavineData);
                VlaznostVazduha vv = db.FetchDBRefAs <VlaznostVazduha>(m.VlaznostData);

                nizTemperatura.Add(t.Vrednost);
                nizPadavine.Add(p.Vrednost);
                nizVlaznostVazduha.Add(vv.Vrednost);

                if (Math.Log(t.Vrednost) > 0)
                {
                    logNizTemperatura.Add(Math.Log(t.Vrednost));
                }
                if (Math.Log(p.Vrednost) > 0)
                {
                    logNizPadavine.Add(Math.Log(p.Vrednost));
                }
                if (Math.Log(vv.Vrednost) > 0)
                {
                    logNizVlaznostVazduha.Add(Math.Log(vv.Vrednost));
                }

                brojac++;
            }
        }
Example #7
0
        private void btnObrisi_Click(object sender, EventArgs e)
        {
            if (listaStanica.SelectedItems.Count == 0)
            {
                MessageBox.Show("Izaberite vrmensku stanicu koju zelite da obrisete!", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            DialogResult msgResult = MessageBox.Show("Da li ste sigurni da zelite da izvrsite brisanje?", "Upit", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (msgResult == DialogResult.Yes)
            {
                String naziv = listaStanica.SelectedItems[0].SubItems[1].Text;

                var connectionString = "mongodb://localhost/?safe=true";
                var server           = MongoServer.Create(connectionString);
                var db = server.GetDatabase("MongoNBP");

                var collection          = db.GetCollection <VremenskaStanica>("vremenske_stanice");
                var collectionZaposleni = db.GetCollection <Korisnik>("korisnici");
                var collectionMerenja   = db.GetCollection <Merenje>("merenja");

                var query = Query.And(
                    Query.EQ("Okrug", this.okrug),
                    Query.EQ("Naziv", naziv));
                var result         = collection.Find(query).ToList <VremenskaStanica>();
                VremenskaStanica s = result[0];
                foreach (MongoDBRef zaposleniRef in s.Odgovorni.ToList())
                {
                    Zaposleni z = db.FetchDBRefAs <Zaposleni>(zaposleniRef);
                    var       queryZaposleni = Query.And(Query.EQ("Username", z.Username),
                                                         Query.EQ("_t", "Zaposleni"));
                    collectionZaposleni.Remove(queryZaposleni);
                }
                foreach (MongoDBRef merenjeRef in s.IzmereneVrednosti.ToList())
                {
                    Merenje m            = db.FetchDBRefAs <Merenje>(merenjeRef);
                    var     queryMerenje = Query.EQ("_id", new ObjectId(m.Id.ToString()));
                    collectionMerenja.Remove(queryMerenje);
                }
                collection.Remove(query);
                MessageBox.Show("Uspesno ste obrisali vremensku stanicu!", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.PopuniTabelu();
            }
            else
            {
                return;
            }
        }
Example #8
0
        private void BtnExportTxt_Click(object sender, EventArgs e)
        {
            if (comboBox1.SelectedItem == null)
            {
                MessageBox.Show("Niste izabrali ni jednu stanicu! Molimo Vas izaberite stanicu.", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            saveFile.ShowDialog();
            if (saveFile.FileName != "")
            {
                PribaviPodatkeZaVremenskuStanicu();
                var connectionString = "mongodb://localhost/?safe=true";
                var server           = MongoServer.Create(connectionString);
                var db = server.GetDatabase("MongoNBP");

                // KOLEKCIJE "vremenski_parametri" i "merenja"
                var collectionParametri = db.GetCollection <VremenskiParametar>("vremenski_parametri");
                var collectionMerenja   = db.GetCollection <Merenje>("merenja");
                if (vs.IzmereneVrednosti.ToList().Count != 0)
                {
                    foreach (MongoDBRef merenjaRef in vs.IzmereneVrednosti.ToList())
                    {
                        Merenje m = db.FetchDBRefAs <Merenje>(merenjaRef);

                        Temperatura     t  = db.FetchDBRefAs <Temperatura>(m.TempData);
                        Padavine        p  = db.FetchDBRefAs <Padavine>(m.PadavineData);
                        VlaznostVazduha vv = db.FetchDBRefAs <VlaznostVazduha>(m.VlaznostData);
                        using (System.IO.StreamWriter file = new System.IO.StreamWriter(saveFile.FileName + ".txt", true))
                        {
                            file.WriteLine("Merenje ID: " + m.Id + " Vreme merenja: " + m.Log);
                            file.WriteLine("");
                            file.WriteLine("Temeratura:       " + t.Vrednost);
                            file.WriteLine("Padavine:         " + p.Vrednost);
                            file.WriteLine("Vlaznost Vazduha: " + vv.Vrednost);
                            file.WriteLine("");
                        }
                    }
                    MessageBox.Show("Uspesno je kreiran fajl i ekportovane vrednosti!", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Vremenska stanica " + vs.ToString() + " nema izmerenih vrednosti! Pokusajte sa drugom stanicom.", "Greska", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Example #9
0
        public void dodajClana()
        {
            Clan clan = new Clan();

            //clan.sifraKartice = 1;
            clan.ime                = "Petar";
            clan.prezime            = "Ljubic";
            clan.datumRodjenja      = DateTime.Today;
            clan.datumUpisa         = DateTime.Today;
            clan.brojTelefona       = "+123456";
            clan.preporucenaIshrana = "Jedi sve";
            clan.clanarina          = 1400;
            clan.placena            = true;
            clan.dug                = 0;
            clan.napomena           = "nema";
            Merenje merenje = new Merenje();

            merenje.visceralne = 7;
            clan.dodajMerenje(merenje);
            Clanarina clanarina = new Clanarina();

            clanarina.clanarina = 1400;
            clan.dodajClanarinu(clanarina);
            Trening trening = new Trening();

            trening.imeGrupe = "RushFit";
            trening.termin   = "uvece neki";
            trening.clanovi.Add(clan);
            clan.trening = trening;
            //session.Save(clan.trening);
            session.Save(clanarina);
            session.Save(merenje);
            session.Save(clan);
            session.Save(trening);
            session.Flush();
        }
Example #10
0
        private void button5_Click(object sender, EventArgs e)
        {
            //Brisanje merenja
            if (dataGridView1.SelectedRows.Count == 0)
            {
                MessageBox.Show("Molimo Vas selektujte neko merenje (kliknite skroz levo na strelicu zeljenog merenja)");
                return;
            }
            DialogResult dialogResult = MessageBox.Show("Jeste li sigurni da izbrisete merenje ?", "", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                Merenje m = (Merenje)dataGridView1.SelectedRows[0].Tag;
                m.clan.svaMerenja.Remove(m);
                session.SaveOrUpdate(clan);
                session.Delete(m);
                session.Flush();
                popuniMerenja();
            }
            else if (dialogResult == DialogResult.No)
            {
                //do something else
            }
        }
        private void btnProsledi_Click(object sender, EventArgs e)
        {
            if (chbGranice.Checked == false)
            {
                if (!Validacija())
                {
                    return;
                }
            }

            var connectionString = "mongodb://localhost/?safe=true";
            var server           = MongoServer.Create(connectionString);
            var db = server.GetDatabase("MongoNBP");

            // KOLEKCIJA "vremenski_parametri"
            var collectionParametri = db.GetCollection <VremenskiParametar>("vremenski_parametri");

            Temperatura     temp   = new Temperatura(vs.minTemperatura, vs.maxTemperatura, (double)numTemperatura.Value, new MongoDBRef("zaposleni", zaposleni.Id));
            Padavine        pad    = new Padavine(vs.minPadavine, vs.maxPadavine, (double)numPadavine.Value, new MongoDBRef("zaposleni", zaposleni.Id));
            VlaznostVazduha VlVazd = new VlaznostVazduha(vs.minVlaznost, vs.maxVlaznost, (double)numVlaznost.Value, new MongoDBRef("zaposleni", zaposleni.Id));

            if (txbNapomena.Text != "")
            {
                temp.Napomena = txbNapomena.Text;
            }
            if (chbDa.Checked == true)
            {
                pad.opasnostOdPoplava = true;
            }
            if (chbNe.Checked == true)
            {
                pad.opasnostOdPoplava = false;
            }
            if (numProcenti.Value != 0)
            {
                VlVazd.Procentualno = (float)numProcenti.Value;
            }

            collectionParametri.Insert(temp);
            collectionParametri.Insert(pad);
            collectionParametri.Insert(VlVazd);

            // KOLEKCIJA "merenja"
            var collectionMerenja = db.GetCollection <Merenje>("merenja");

            Merenje merenje = new Merenje(new MongoDBRef("vremenski_parametri", temp.Id), new MongoDBRef("vremenski_parametri", VlVazd.Id), new MongoDBRef("vremenski_parametri", pad.Id));

            collectionMerenja.Insert(merenje);

            // KOLEKCIJA "vremenske_stanice"
            var collectionVremenskeStanice = db.GetCollection <VremenskaStanica>("vremenske_stanice");

            vs.IzmereneVrednosti.Add(new MongoDBRef("merenja", merenje.Id));
            collectionVremenskeStanice.Save(vs);

            if (chbAutomatskoGenerisanjePodataka.Checked)
            {
                brojac = 0;
                //MessageBox.Show("Automatski su uneti podaci novog merenja!", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Uspesno ste uneli podatke novog merenja!", "Upozorenje", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
Example #12
0
        static void Main(string[] args)
        {
            ChannelFactory <IDevice> factory = new ChannelFactory <IDevice>(
                new NetTcpBinding(),
                new EndpointAddress("net.tcp://localhost:4000/DeviceMethods"));

            IDevice kanal = factory.CreateChannel();


            int type  = kanal.randomType();
            int value = kanal.randomValue();


            List <Merenje> merenje = new List <Merenje>();

            //Baza.devices.Add(d.AMIDevCode, d);
            Dictionary <int, Merenje> z = new Dictionary <int, Merenje>();

            for (int j = 1; j < 4; j++)
            {
                type  = kanal.randomType();
                value = kanal.randomValue();

                Merenje m = new Merenje(j, (measurmentType)type, value);
                merenje.Add(m);
                //Baza.devices.Add(d.AMIDevCode, d);


                z.Add(m.Id, m);
                Console.WriteLine(" tip " + m.Tip + " val " + m.Vrednost);
                Thread.Sleep(1000);
            }


            int i = kanal.formirajKljuc();

            DevClass d = new DevClass(i, z);

            kanal.DodajDevice(d);
            Console.WriteLine("Uspesno dodat dev");
            Console.WriteLine("dev " + d.AMIDevCode + " time " + d.TimeStamp + " p " + d.Power.ToString());

            kanal.DodajMerenjaDevice(merenje, d);
            Console.WriteLine("uspesno dodato merenje");


            if (kanal.dobaviDevice(i, out DevClass dc))
            {
                Console.WriteLine("dev " + dc.AMIDevCode + " time " + dc.TimeStamp);
                List <Merenje> ss = d.dobaviTipMerenje();
                Console.WriteLine(ss[0].Tip);
            }


            Console.WriteLine("q - za disconnect");
            if (Console.ReadLine() == "q")
            {
                kanal.ukloniDevice(i);

                Console.WriteLine("device diskonektovan");
            }

            Console.ReadKey();
        }
Example #13
0
        private void btnPrikazi_Click(object sender, EventArgs e)
        {
            txbPadavine.Text    = "";
            txbTemperatura.Text = "";
            txbVlaznost.Text    = "";
            nizPadavina.Clear();
            nizTemperatura.Clear();
            nizVlaznost.Clear();
            if (cmbStanice.SelectedItem == null)
            {
                MessageBox.Show("Niste izabrali ni jednu stanicu! Molimo Vas izaberite stanicu.", "Obavestenje", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            PribaviPodatkeZaVremenskuStanicu();


            var connectionString = "mongodb://localhost/?safe=true";
            var server           = MongoServer.Create(connectionString);
            var db = server.GetDatabase("MongoNBP");

            // KOLEKCIJE "vremenski_parametri" i "merenja"
            var collectionParametri = db.GetCollection <VremenskiParametar>("vremenski_parametri");
            var collectionMerenja   = db.GetCollection <Merenje>("merenja");

            // Punimo nizMerenja
            foreach (MongoDBRef merenjaRef in vs.IzmereneVrednosti.ToList())
            {
                Merenje         m  = db.FetchDBRefAs <Merenje>(merenjaRef);
                Temperatura     t  = db.FetchDBRefAs <Temperatura>(m.TempData);
                Padavine        p  = db.FetchDBRefAs <Padavine>(m.PadavineData);
                VlaznostVazduha vv = db.FetchDBRefAs <VlaznostVazduha>(m.VlaznostData);

                nizTemperatura.Add(t);
                nizPadavina.Add(p);
                nizVlaznost.Add(vv);
            }


            nizTemperatura.Reverse();
            nizPadavina.Reverse();
            nizVlaznost.Reverse();

            foreach (Temperatura t in nizTemperatura)
            {
                if (t.Napomena != null)
                {
                    txbTemperatura.Text += t.ToString() + Environment.NewLine;
                }
            }

            foreach (Padavine p in nizPadavina)
            {
                txbPadavine.Text += p.ToString() + Environment.NewLine;
            }

            foreach (VlaznostVazduha v in nizVlaznost)
            {
                if (v.Procentualno != 0)
                {
                    txbVlaznost.Text += v.ToString() + Environment.NewLine;
                }
            }
        }