예제 #1
0
        private void btnIzbrisi_Click(object sender, EventArgs e)
        {
            int  brojac = 0;
            Smer smer   = (Smer)cmbSmerovi.SelectedItem;

            List <Predmet> predmeti = Predmet.sviPredmeti();

            foreach (Predmet p in predmeti)
            {
                if (p.Smer.ToString().Equals(smer.ToString()))
                {
                    brojac++;
                }
            }

            List <Studenti> studenti = Studenti.sviStudenti();

            foreach (Studenti s in studenti)
            {
                if (s.Smer.ToString().Equals(smer.ToString()))
                {
                    brojac++;
                }
            }

            if (brojac == 0)
            {
                smerovi.Remove(smer);
                Smer.azurirajBrisanjeSmer(smerovi);

                cmbSmerovi.Items.Remove(smer);
                lblPoruka.Text      = "Smer je izbrisan!";
                lblPoruka.ForeColor = Color.Blue;
                btnIzbrisi.Enabled  = false;
            }
            else
            {
                lblPoruka.Text      = "Ne mozete izbrisati smer, morate prvo izbrisati sve predmete i studente sa smera!";
                lblPoruka.ForeColor = Color.Red;
            }
        }
예제 #2
0
        private void cmbPredmeti_SelectedIndexChanged(object sender, EventArgs e)
        {
            btnAzuriraj.Enabled = true;
            grpPodaci.Enabled   = true;

            Predmet predmet = (Predmet)cmbPredmeti.SelectedItem;

            //popunjava podatke o predmetu
            txtESPB.Text     = predmet.ESPB1.ToString();
            txtNaziv.Text    = predmet.Naziv_predmeta;
            txtProfesor.Text = predmet.Profesor;

            if (predmet.Obavezan)
            {
                rbDA.Checked = true;
            }
            else
            {
                rbNE.Checked = true;
            }


            for (int i = 0; i < cmbSmer.Items.Count; i++)
            {
                if (cmbSmer.Items[i].ToString().Equals(predmet.Smer.ToString()))
                {
                    cmbSmer.SelectedIndex = i;
                }
            }

            for (int i = 0; i < cmbSemestar.Items.Count; i++)
            {
                if (cmbSemestar.Items[i].ToString().Equals(predmet.Semestar.ToString()))
                {
                    cmbSemestar.SelectedIndex = i;
                }
            }
        }
        private void cmbPredmeti_SelectedIndexChanged(object sender, EventArgs e)
        {
            Studenti student = (Studenti)cmbStudenti.SelectedItem;

            //Brisanje predmeta sa drugog smera da bi ubacio drugi
            for (int i = 0; i < svi_predmeti_studenta.Items.Count; i++)
            {
                Predmet p = Predmet.vretiPredmetPoNazivu(svi_predmeti_studenta.Items[i].ToString());

                if (p != null)
                {
                    if (!p.Smer.ToString().Equals(student.Smer.ToString()))
                    {
                        svi_predmeti_studenta.Items.RemoveAt(i);
                        cmbPredmeti.Items.Add(p);
                    }
                }
            }

            //Ubacivanje novog predmeta
            Predmet predmet = (Predmet)cmbPredmeti.SelectedItem;

            svi_predmeti_studenta.Items.Add(predmet.Naziv_predmeta + ",  " + predmet.Smer + ",  " + predmet.Semestar, true);
            svi_predmeti_studenta.SetSelected(svi_predmeti_studenta.Items.Count - 1, true);
            cmbPredmeti.Items.Remove(predmet);

            //Trenutni ESPB bodovi
            broj = 0;
            for (int i = 0; i < svi_predmeti_studenta.Items.Count; i++)
            {
                if (svi_predmeti_studenta.GetItemCheckState(i) == CheckState.Checked || svi_predmeti_studenta.GetItemCheckState(i) == CheckState.Indeterminate)
                {
                    broj += 6;
                }
            }
            lblESPB.Text = "ESPB: " + broj;
        }
예제 #4
0
        private void btnAzuriraj_Click(object sender, EventArgs e)
        {
            int     broj    = cmbPredmeti.SelectedIndex;
            Predmet predmet = (Predmet)cmbPredmeti.SelectedItem;

            //kopija predmeta
            Predmet novi_predmet = new Predmet(predmeti[broj]);

            if (!txtNaziv.Text.Equals(""))
            {
                novi_predmet.Naziv_predmeta = txtNaziv.Text;
            }

            if (!cmbSmer.Text.Equals(""))
            {
                novi_predmet.Smer = (Smer)cmbSmer.SelectedItem;
            }

            if (!txtProfesor.Text.Equals(""))
            {
                novi_predmet.Profesor = txtProfesor.Text;
            }

            if (!txtESPB.Text.Equals(""))
            {
                int espb;
                if (Int32.TryParse(txtESPB.Text, out espb))
                {
                    novi_predmet.ESPB1 = espb;
                }
                else
                {
                    lblPorukaESPB.Text      = "Greska, pogresan format!";
                    lblPorukaESPB.ForeColor = Color.Red;
                }
            }

            if (rbDA.Checked)
            {
                novi_predmet.Obavezan = true;
            }
            if (rbNE.Checked)
            {
                novi_predmet.Obavezan = false;
            }

            if (!cmbSemestar.Text.Equals(""))
            {
                novi_predmet.Semestar = (int)cmbSemestar.SelectedItem;
            }

            if (predmet.ToString().Equals(novi_predmet.ToString()))
            {
                lblPoruka.Text      = "Nista niste promenili!";
                lblPoruka.ForeColor = Color.Red;
            }
            else
            {
                //azuriranje izbornih listi
                List <IzbornaLista> izborne_liste = IzbornaLista.listeSvihStudenata();

                for (int i = 0; i < izborne_liste.Count; i++)
                {
                    for (int j = 0; j < izborne_liste[i].Predmeti_studenta.Count; j++)
                    {
                        if (izborne_liste[i].Predmeti_studenta[j].ToString().Equals(predmet.ToString()))
                        {
                            izborne_liste[i].Predmeti_studenta[j] = novi_predmet;
                        }
                    }
                }
                IzbornaLista.azuriranjeBrisanjeIzbornihLista(izborne_liste);


                predmeti[broj] = novi_predmet;
                Predmet.azuriranjeBrisanjePredmeta(predmeti);
                lblPoruka.Text      = "Uspesno ste izmenili predmet";
                lblPoruka.ForeColor = Color.Blue;

                cmbPredmeti.Items.RemoveAt(broj);
                cmbPredmeti.Items.Insert(broj, novi_predmet);
                grpPodaci.Enabled   = false;
                btnAzuriraj.Enabled = false;

                txtESPB.ResetText();
                txtNaziv.ResetText();
                txtProfesor.ResetText();
                cmbSemestar.ResetText();
                cmbSmer.ResetText();
                cmbPredmeti.ResetText();
            }
        }
예제 #5
0
 public AzuriranjePredmeta()
 {
     InitializeComponent();
     predmeti = Predmet.sviPredmeti();
 }
예제 #6
0
        private void btnIzmeni_Click(object sender, EventArgs e)
        {
            List <IzbornaLista> izborneListeIzDatoteke = IzbornaLista.listeSvihStudenata();
            IzbornaLista        lista_studenta         = IzbornaLista.izbornaListaOdStudenta(student);

            int broj = 0;

            //redni broj izborne liste
            for (int i = 0; i < izborneListeIzDatoteke.Count; i++)
            {
                if (izborneListeIzDatoteke[i].ToString().Equals(lista_studenta.ToString()))
                {
                    broj = i;
                    break;
                }
            }

            //ubacuje u listu sve cekiranje predmete
            List <Predmet> predmeti = new List <Predmet>();

            for (int i = 0; i < svi_predmeti_studenta.Items.Count; i++)
            {
                if (svi_predmeti_studenta.GetItemCheckState(i) == CheckState.Checked || svi_predmeti_studenta.GetItemCheckState(i) == CheckState.Indeterminate)
                {
                    Predmet predmet = Predmet.vretiPredmetPoNazivu(svi_predmeti_studenta.Items[i].ToString());
                    if (predmet != null)
                    {
                        predmeti.Add(predmet);
                    }
                }
            }


            if (broj_ESPB >= 48)
            {
                IzbornaLista nova_lista = new IzbornaLista(student, predmeti);

                if (lista_studenta == null)
                {
                    if (IzbornaLista.dodajIzbornuListu(nova_lista))
                    {
                        lblPoruka.Text      = "Uspešno ste dodali izbornu listu";
                        lblPoruka.ForeColor = Color.Blue;
                        svi_predmeti_studenta.Items.Clear();
                        btnIzmeni.Enabled = false;
                        cmbPredmeti.Items.Clear();
                        logovanje.Show();
                        this.Close();
                        return;
                    }
                    else
                    {
                        lblPoruka.Text      = "Došlo je do greške prilikom predaje izborne liste!";
                        lblPoruka.ForeColor = Color.Red;
                        logovanje.Show();
                        this.Close();
                        return;
                    }
                }

                if (lista_studenta.ToString().Equals(nova_lista.ToString()))
                {
                    lblPoruka.Text      = "Greška, nije nista promenjeno!";
                    lblPoruka.ForeColor = Color.Red;
                }
                else
                {
                    izborneListeIzDatoteke.RemoveAt(broj);

                    lista_studenta.Predmeti_studenta = predmeti;
                    izborneListeIzDatoteke.Insert(broj, lista_studenta);

                    IzbornaLista.azuriranjeBrisanjeIzbornihLista(izborneListeIzDatoteke);

                    lblPoruka.Text      = "Uspešno ste ažurirali izbornu listu!";
                    lblPoruka.ForeColor = Color.Blue;

                    logovanje.Show();
                    this.Close();
                }
            }
            else
            {
                lblPoruka.Text      = "Greška, nemate dovoljno ESPB bodova. Potrebno je imati najmanje 48, a trenutno imate " + broj_ESPB + "!";
                lblPoruka.ForeColor = Color.Red;
            }
        }
예제 #7
0
        private void KorisnikMeni_Load(object sender, EventArgs e)
        {
            lblPodaciStudenta.Text      = "Ime studenta: " + student.Ime_studenta + "\nPrezime: " + student.Prezime_studenta + "\nSmer: " + student.Smer.ToString();
            lblPodaciStudenta.ForeColor = Color.Blue;

            IzbornaLista   lista_studenta = IzbornaLista.izbornaListaOdStudenta(student);
            List <Predmet> svi_predmeti   = Predmet.sviPredmeti();

            predmeti_za_sortiranje = new List <Predmet>();

            if (lista_studenta != null)
            {
                //ako student ima izbornu listu
                //dodaje u checklistbox sve predmete iz izborne liste studenta
                foreach (Predmet p in lista_studenta.Predmeti_studenta)
                {
                    predmeti_za_sortiranje.Add(p);
                }


                //dodaje u checklistbox predmete sa smera ili u combobox predmete sa drugog smera
                foreach (Predmet p in svi_predmeti)
                {
                    if (!lista_studenta.imaPredmetUListi(p))
                    {
                        if (p.Smer.ToString().Equals(student.Smer.ToString()))
                        {
                            predmeti_za_sortiranje.Add(p);
                        }
                        else
                        {
                            cmbPredmeti.Items.Add(p);
                        }
                    }
                }
            }
            else
            {
                //ako student nema izbornu listu
                //ubacuje predmete sa smera u checklistbox, a ostale u combobox
                foreach (Predmet p in svi_predmeti)
                {
                    if (p.Smer.ToString().Equals(student.Smer.ToString()))
                    {
                        predmeti_za_sortiranje.Add(p);
                    }
                    else
                    {
                        cmbPredmeti.Items.Insert(cmbPredmeti.Items.Count, p);
                    }
                }
            }

            //kreiranje delegata i dodavanje funkcija
            delSortiranje deleg = new delSortiranje(sortirajPoSemestru);

            deleg += new delSortiranje(sortirajPoImenu);
            deleg += new delSortiranje(prikazSortiraneListe);

            //pozivanje delegata
            deleg(predmeti_za_sortiranje);
        }
예제 #8
0
        private void cmbSmerovi_SelectedIndexChanged(object sender, EventArgs e)
        {
            label2.ResetText();

            Smer                smer          = (Smer)cmbSmerovi.SelectedItem;
            List <Predmet>      predmeti      = Predmet.predmetiSaSmera(smer);
            List <IzbornaLista> izborne_liste = IzbornaLista.listeSvihStudenata();

            ukupan_broj = 0;
            pocetak     = 0;
            kraj        = 0F;
            int y_pomeraj = 0;

            lblPoruka.Visible = false;


            Graphics g = this.CreateGraphics();

            this.Height = 400;

            //brisanje starih labela
            foreach (Label l in sve_labele)
            {
                Controls.Remove(l);
            }
            sve_labele.Clear();

            // ukupan broj studenata na svim predmetima sa odabranog smera
            foreach (Predmet p in predmeti)
            {
                foreach (IzbornaLista lista in izborne_liste)
                {
                    if (lista.imaPredmetUListi(p))
                    {
                        ukupan_broj++;
                    }
                }
            }


            //ako nema studenta na predmetima sa smera
            if (ukupan_broj == 0)
            {
                g.FillEllipse(Brushes.Silver, r);
                g.DrawEllipse(Pens.Black, r);

                lblPoruka.Visible = true;
            }



            foreach (Predmet p in predmeti)
            {
                //broj studenata
                brojac = 0;

                foreach (IzbornaLista lista in izborne_liste)
                {
                    if (lista.imaPredmetUListi(p))
                    {
                        brojac++;
                    }
                }



                if (brojac > 0)
                {
                    pocetak += kraj;
                    kraj     = (360 * brojac) / (float)ukupan_broj;

                    SolidBrush sb = new SolidBrush(Color.FromArgb(slucajni.Next(0, 256), slucajni.Next(0, 256), slucajni.Next(0, 256)));

                    g.DrawEllipse(Pens.Black, r);
                    g.FillPie(sb, r, pocetak, kraj);


                    //dodavanje labela sa predmetima
                    Label lbl = new Label();
                    sve_labele.Add(lbl);
                    lbl.Text     += p.Naziv_predmeta + ",  Broj studenata:" + brojac + ",  Procenat: " + string.Format("{0:N1}%", (kraj * 100) / 360) + "\n";
                    lbl.BackColor = sb.Color;
                    lbl.ForeColor = Color.WhiteSmoke;
                    lbl.Font      = new Font("Arial", 8, FontStyle.Bold);
                    lbl.Location  = new Point(350, (50 + y_pomeraj));
                    lbl.Size      = new Size(450, 20);
                    Controls.Add(lbl);
                    y_pomeraj += 35;
                }
            }

            //visina prozora
            if ((y_pomeraj + 100) > this.Height)
            {
                this.Height = y_pomeraj + 100;
            }
            else
            {
                this.Height = 400;
            }


            g.Dispose();
        }
예제 #9
0
        private void btnAzuriraj_Click(object sender, EventArgs e)
        {
            Smer smer = (Smer)cmbSmerovi.SelectedItem;

            if ((!txtIme.Text.Equals("")) && (!txtIme.Text.ToUpper().Equals(smer.Ime_smera)))
            {
                foreach (Smer s in smerovi)
                {
                    if (s.Ime_smera.Equals(txtIme.Text.ToUpper()))
                    {
                        lblPoruka.Text      = "Greška, podatak već postoji!";
                        lblPoruka.ForeColor = Color.Red;
                        return;
                    }
                }


                int broj = cmbSmerovi.SelectedIndex;


                Smer novi_smer = new Smer(txtIme.Text.ToUpper());

                //Menja smer za sve predmete koji su na tom semru
                List <Predmet> predmeti = Predmet.sviPredmeti();
                for (int i = 0; i < predmeti.Count; i++)
                {
                    if (predmeti[i].Smer.ToString().Equals(smer.ToString()))
                    {
                        predmeti[i].Smer = novi_smer;
                    }
                }
                Predmet.azuriranjeBrisanjePredmeta(predmeti);

                //Menja smer za sve studente koji su na tom semru
                List <Studenti> studenti = Studenti.sviStudenti();
                for (int i = 0; i < studenti.Count; i++)
                {
                    if (studenti[i].Smer.ToString().Equals(smer.ToString()))
                    {
                        studenti[i].Smer = novi_smer;
                    }
                }
                Studenti.azurirajBrisanjeStudenta(studenti);


                smerovi.Remove(smer);
                cmbSmerovi.Items.Remove(smer);

                cmbSmerovi.Items.Insert(broj, novi_smer);
                smerovi.Insert(broj, novi_smer);



                lblPoruka.Text      = "Uspesno ste izvrsili promenu!";
                lblPoruka.ForeColor = Color.Blue;
                Smer.azurirajBrisanjeSmer(smerovi);
                btnAzuriraj.Enabled = false;
                grpPodaci.Enabled   = false;
                cmbSmerovi.ResetText();
                txtIme.ResetText();
            }
            else
            {
                lblPoruka.Text      = "Greska, nije izmenjen ni jedan podatak!";
                lblPoruka.ForeColor = Color.Red;
            }
        }