User:StrahinjaKralj

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Domen; using Sesija;

namespace KolokvijumPrimer1 {   public partial class FrmKlijent : Form {       //List pre = new List; Broker b = new Broker;

public FrmKlijent {           InitializeComponent; // Prikazuje unete Studente i Predmete cmbStudent.DataSource = Broker.dajSesiju.vratiStudente;//sta je bolje? cmbPredmet.DataSource = b.vratiPredmete; cmbPredmetStatistika.DataSource = b.vratiPredmete; }

// akcija na dugme "Sačuvaj ispitnu prijavu" private void button1_Click(object sender, EventArgs e)       { // Skuplja podatke o prijavi Prijava prijava = new Prijava; prijava.DatumPolaganja = txtDatumPolaganja.Text; prijava.Profesor = txtProfesor.Text; //jako biitno radi sa odabranim studentima Student s = cmbStudent.SelectedItem as Student; prijava.Student = s;           Predmet p = cmbPredmet.SelectedItem as Predmet; prijava.Predmet = p;

// Proverava da li su sva polja za unos prijave popunjena if (txtDatumPolaganja.Text == "" || txtOcena.Text == "" || txtProfesor.Text == "" || cmbPredmet.SelectedItem == null || cmbStudent.SelectedItem == null) {               MessageBox.Show("Morate popuniti sva polja!"); }           else {               prijava.Ocena = Convert.ToInt32(txtOcena.Text);

// Proverava da li ima novca na racunu if (s.StanjeNaRAcunu == 0 || s.StanjeNaRAcunu < Convert.ToDouble(p.Espb_Bodovi*100)) {                   MessageBox.Show("Nemate dovoljno novca na računu!"); }               else {                   bool found = false; // Proverava da li je već uneta prijava za ovog sudenta za ovaj predmet foreach (Prijava pr in b.vratiPrijave) {                       if (prijava.Predmet.SifraPredmeta == pr.Predmet.SifraPredmeta && prijava.Student.SifraStudenta == pr.Student.SifraStudenta) {                           MessageBox.Show("Prijava već postoji!"); found = true; break; }                   }                    if (!found) {                       // Unosi prijavu b.unesiPrijavu(prijava); // Smanjuje stanje na racunu za vrednost prijave s.StanjeNaRAcunu = s.StanjeNaRAcunu - p.Espb_Bodovi * 100; b.azurirajStanjeNaRacunu(s); MessageBox.Show("Prijava je uspešno sačuvana."); }               }            }        }

// akcija na comboBox private void cmbPredmetStatistika_SelectedIndexChanged(object sender, EventArgs e)       { //2 Za selektovani predmet iz comboBox-a prikazuje u tabeli sve Stdente koji su položili taj predmet Predmet p = cmbPredmetStatistika.SelectedItem as Predmet; dataGridView1.DataSource = b.prikaziPolozene(p); }

//3 akcija na dugme "Poništi ispit" private void btnPonistiIspit_Click(object sender, EventArgs e)       { // Za selektovanog Studenta i Predmet se vrši brisanje prijave iz baze Student s = cmbStudent.SelectedItem as Student; Predmet p = cmbPredmet.SelectedItem as Predmet;

bool found = false;

// Proverava se da li ispitna prijava postoji u bazi foreach (Prijava prijava in b.vratiPrijave) {                   if (prijava.Student.SifraStudenta == s.SifraStudenta && prijava.Predmet.SifraPredmeta == p.SifraPredmeta) {                       // Ako postoji ispitna prijava, proveravamo da li ima dovoljno novca na stanju da bi de prijava poništila if (s.StanjeNaRAcunu == 0 || s.StanjeNaRAcunu < Convert.ToDouble(prijava.Ocena * 100)) {                           MessageBox.Show("Nemate dovoljno novca na računu!"); }                       // Ako ima novca na stanju brišemo prijavu else {                           b.obrisiPrijavu(s, p); s.StanjeNaRAcunu = s.StanjeNaRAcunu - prijava.Ocena * 100; b.azurirajStanjeNaRacunu(s); MessageBox.Show("Ispitna prijava je poništena."); }                       found = true; break; }               }                if (!found) MessageBox.Show("Prijava ne postoji u bazi!"); }

} }