コード例 #1
0
        public AddDomaciViewModel(OdeljenjeIM odeljenje, DomaciIM domaci)
        {
            Predmeti = Channel.Instance.PredmetiProxy.GetPredmetiForZaposleni(LoggedInZaposleni.Instance.Id_zaposlenog);

            if (domaci != null)
            {
                NoviDomaci      = domaci;
                changing        = true;
                Visible         = "Hidden";
                Visible2        = "Visible";
                Naslov          = "Promena domaceg";
                ButtonContent   = "IZMENI";
                DeletionEnabled = "Visible";
            }
            else
            {
                NoviDomaci               = new DomaciIM();
                Visible                  = "Visible";
                Visible2                 = "Hidden";
                Naslov                   = "Novi domaci";
                NoviDomaci.dan_predaje   = DateTime.Today;
                NoviDomaci.dan_zadavanja = DateTime.Today;
                ButtonContent            = "DODAJ";
                DeletionEnabled          = "Hidden";
            }

            NoviDomaci.ZaposleniId_zaposlenog = LoggedInZaposleni.Instance.Id_zaposlenog;
            SelectedOdeljenje   = odeljenje;
            AddDomaciCommand    = new MyICommand(OnAddDomaci);
            DeleteDomaciCommand = new MyICommand(OnDeleteDomaci);
        }
コード例 #2
0
ファイル: OdeljenjaService.cs プロジェクト: Bozo9977/Projekat
        public bool AddNastavnik(OdeljenjeIM odeljenje, ZaposleniIM zaposleni)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                Zaposleni z = db.Zaposlenici.Find(zaposleni.Id_zaposlenog);
                Odeljenje o = db.Odeljenja.Find(odeljenje.Id_odeljenja);

                if (z is Ucitelj)
                {
                    o.Ucitelj = (z as Ucitelj);
                }
                else
                {
                    if (o.NastavnikOdeljenjes.SingleOrDefault(x => x.NastavnikId_zaposlenog == z.Id_zaposlenog) != null)
                    {
                        return(false);
                    }
                    o.NastavnikOdeljenjes.Add(new NastavnikOdeljenje()
                    {
                        Nastavnik = z as Nastavnik, Odeljenje = o, NastavnikId_zaposlenog = z.Id_zaposlenog, OdeljenjeId_odeljenja = o.Id_odeljenja, Razredni = false
                    });
                }

                db.SaveChanges();
                return(true);
            }
        }
コード例 #3
0
ファイル: OdeljenjaService.cs プロジェクト: Bozo9977/Projekat
        public bool ChangeOdeljenje(OdeljenjeIM odeljenje)
        {
            Odeljenje o = dao.FindById(odeljenje.Id_odeljenja);

            o.razred = odeljenje.razred;
            return(dao.Update(o));
        }
コード例 #4
0
        private bool ValidateCasExistance(CasIM cas, UcionicaIM ucionica, OdeljenjeIM odeljenje, out string errMsg)
        {
            errMsg = "";
            bool zauzeta = false;

            if (!CheckZauzetostPredavaca(cas))
            {
                if (!CheckZauzetostOdeljenja(cas, odeljenje))
                {
                    if (!CheckZauzetostUcionice(cas, ucionica))
                    {
                    }
                    else
                    {
                        zauzeta = true;
                        errMsg  = "Učionica je zauzeta.";
                    }
                }
                else
                {
                    zauzeta = true;
                    errMsg  = $"Odeljenje ima čas u {cas.pocetak.ToString("h\\:mm", CultureInfo.CurrentCulture)}, dana: {cas.datum}.";
                }
            }
            else
            {
                zauzeta = true;
                errMsg  = $"Već imate čas u {cas.pocetak.ToString("h\\:mm", CultureInfo.CurrentCulture)}, dana: {cas.datum}.";
            }

            return(zauzeta);
        }
コード例 #5
0
        public string AddCas(CasIM cas, UcionicaIM ucionica, OdeljenjeIM odeljenje)
        {
            string retMsg = "";

            if (!ValidateCasExistance(cas, ucionica, odeljenje, out retMsg))
            {
                Cas c = new Cas()
                {
                    OblastId_oblasti       = cas.OblastId_oblasti,
                    ZaposleniId_zaposlenog = cas.ZaposleniId_zaposlenog,
                    ZauzetostUcionice      = new ZauzetostUcionice()
                    {
                        datum                 = cas.datum,
                        pocetak               = cas.pocetak,
                        UcionicaId_ucionice   = ucionica.Id_ucionice,
                        OdeljenjeId_odeljenja = odeljenje.Id_odeljenja
                    }
                };
                //c.Imaju.Add(new Ima() { Cas = c, OdeljenjeId_odeljenja = odeljenje.Id_odeljenja });

                if (dao.Insert(c))
                {
                    return("");
                }
                else
                {
                    return("Greška prilikom dodavanja.");
                }
            }
            else
            {
                return(retMsg);
            }
        }
コード例 #6
0
        public AddKontrolniViewModel(OdeljenjeIM odeljenje, KontrolniIM kontrolni)
        {
            if (kontrolni != null)
            {
                NoviKontrolni   = kontrolni;
                changing        = true;
                Visible         = "Hidden";
                Visible2        = "Visible";
                Naslov          = "Promena kontrolnog";
                ButtonContent   = "IZMENI";
                DeletionEnabled = "Visible";
            }
            else
            {
                NoviKontrolni = new KontrolniIM();
                Visible       = "Visible";
                Visible2      = "Hidden";
                Naslov        = "Novi kontrolni";
                NoviKontrolni.datum_odrzavanja = DateTime.Today;
                ButtonContent   = "DODAJ";
                DeletionEnabled = "Hidden";
            }

            NoviKontrolni.ZaposleniId_zaposlenog = LoggedInZaposleni.Instance.Id_zaposlenog;
            SelectedOdeljenje      = odeljenje;
            AddKontrolniCommand    = new MyICommand(OnAddKontrolni);
            DeleteKontrolniCommand = new MyICommand(OnDeleteKontrolni);

            Predmeti = Channel.Instance.PredmetiProxy.GetPredmetiForZaposleni(LoggedInZaposleni.Instance.Id_zaposlenog);
        }
コード例 #7
0
        public AddKontrolniViewModel(OdeljenjeIM odeljenje, KontrolniIM kontrolni)
        {
            if (kontrolni != null)
            {
                NoviKontrolni   = kontrolni;
                changing        = true;
                Visible         = "Hidden";
                Visible2        = "Visible";
                Naslov          = "Promena domaceg";
                ButtonContent   = "Izmeni";
                DeletionEnabled = "Visible";
            }
            else
            {
                NoviKontrolni = new KontrolniIM();
                Visible       = "Visible";
                Visible2      = "Hidden";
                Naslov        = "Novi domaci";
                NoviKontrolni.datum_odrzavanja = DateTime.Today;
                ButtonContent   = "Dodaj";
                DeletionEnabled = "Hidden";
            }

            NoviKontrolni.ZaposleniId_zaposlenog = LoggedInZaposleni.Instance.Id_zaposlenog;
            SelectedOdeljenje      = odeljenje;
            AddKontrolniCommand    = new MyICommand(OnAddKontrolni);
            DeleteKontrolniCommand = new MyICommand(OnDeleteKontrolni);
        }
コード例 #8
0
 public AddDomaciWindow(OdeljenjeIM odeljenje, DomaciIM domaci)
 {
     InitializeComponent();
     DataContext = new AddDomaciViewModel(odeljenje, domaci)
     {
         Window = this
     };
 }
コード例 #9
0
 public AddOdeljenjeWindow(OdeljenjeIM odeljenje)
 {
     InitializeComponent();
     DataContext = new AddOdeljenjeViewModel(odeljenje)
     {
         Window = this
     };
 }
コード例 #10
0
 public AddRazredniWindow(OdeljenjeIM odeljenje, bool dodavanjeRazrednog)
 {
     InitializeComponent();
     DataContext = new AddRazredniViewModel(odeljenje, dodavanjeRazrednog)
     {
         Window = this
     };
 }
コード例 #11
0
 public AddKontrolniWindow(OdeljenjeIM odeljenje, KontrolniIM kontrolni)
 {
     InitializeComponent();
     DataContext = new AddKontrolniViewModel(odeljenje, kontrolni)
     {
         Window = this
     };
 }
コード例 #12
0
ファイル: OdeljenjaService.cs プロジェクト: Bozo9977/Projekat
        //private static ZaposleniciDAO zDao= new ZaposleniciDAO();



        public bool AddOdeljenje(OdeljenjeIM odeljenje)
        {
            Odeljenje newOdeljenje = new Odeljenje()
            {
                razred = odeljenje.razred
            };

            return(dao.Insert(newOdeljenje));
        }
コード例 #13
0
        public AddOdeljenjeViewModel(OdeljenjeIM odeljenje)
        {
            if (odeljenje == null)
            {
                ButtonContent = "DODAJ";
            }
            else
            {
                ButtonContent     = "IZMENI";
                SelectedOdeljenje = odeljenje;
                Razred            = SelectedOdeljenje.razred;
            }

            AddOdeljenjeCommand = new MyICommand(OnAddOdeljenje);
        }
コード例 #14
0
        public AddRazredniViewModel(OdeljenjeIM odeljenje, bool dodavanjeRazrednog)
        {
            if (dodavanjeRazrednog)
            {
                Zaposleni = Channel.Instance.ZaposleniProxy.GetZaposleni().Where(x => x.Ucitelj == false).ToList();
            }
            else
            {
                Zaposleni = Channel.Instance.ZaposleniProxy.GetZaposleni();
            }
            this.dodavanjeRazrednog = dodavanjeRazrednog;
            SelectedOdeljenje       = odeljenje;

            AddRazredniCommand = new MyICommand(OnAddRazredni);
        }
コード例 #15
0
 private void OnAddOdeljenje()
 {
     if (SelectedOdeljenje != null)
     {
         if (Razred <= 0 || Razred > 8)
         {
             MessageBox.Show("Razred mora biti u oviru [1-8] intervala.", "Greška!", MessageBoxButton.OK, MessageBoxImage.Error);
         }
         else
         {
             SelectedOdeljenje.razred = Razred;
             if (Channel.Instance.OdeljenjaProxy.ChangeOdeljenje(SelectedOdeljenje))
             {
                 //MessageBox.Show("Odeljenje izmenjeno.", "Operacija uspešna!", MessageBoxButton.OK, MessageBoxImage.Information);
                 Window.Close();
             }
             else
             {
                 MessageBox.Show("Greška pri izmeni.", "Operacija neuspešna!", MessageBoxButton.OK, MessageBoxImage.Error);
                 Window.Close();
             }
         }
     }
     else
     {
         if (Razred <= 0 || Razred > 8)
         {
             MessageBox.Show("Razred mora biti u oviru [1-8] intervala.", "Greška!", MessageBoxButton.OK, MessageBoxImage.Error);
         }
         else
         {
             OdeljenjeIM odeljenje = new OdeljenjeIM()
             {
                 razred = Razred
             };
             if (Channel.Instance.OdeljenjaProxy.AddOdeljenje(odeljenje))
             {
                 // MessageBox.Show("Odeljenje dodato.", "Operacija uspešna!", MessageBoxButton.OK, MessageBoxImage.Information);
                 Window.Close();
             }
             else
             {
                 MessageBox.Show("Greška pri dodavanju.", "Operacija neuspešna!", MessageBoxButton.OK, MessageBoxImage.Error);
                 Window.Close();
             }
         }
     }
 }
コード例 #16
0
        public bool ChangeCas(CasIM cas, out string retMsg)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                Cas c = db.Cas.Include(z => z.ZauzetostUcionice.Ucionica).Include(p => p.ZauzetostUcionice.Odeljenje).SingleOrDefault(x => x.Id_casa == cas.Id_casa);

                UcionicaIM ucionica = new UcionicaIM()
                {
                    naziv        = c.ZauzetostUcionice.Ucionica.naziv,
                    broj_ucenika = c.ZauzetostUcionice.Ucionica.broj_ucenika,
                    Id_ucionice  = c.ZauzetostUcionice.Ucionica.Id_ucionice
                };
                OdeljenjeIM odeljenje = new OdeljenjeIM()
                {
                    Id_odeljenja = c.ZauzetostUcionice.Odeljenje.Id_odeljenja,
                    razred       = c.ZauzetostUcionice.Odeljenje.razred
                };

                retMsg = "";
                if (!ValidateCasExistance(cas, ucionica, odeljenje, out retMsg))
                {
                    c.ZauzetostUcionice.datum   = cas.datum;
                    c.ZauzetostUcionice.pocetak = cas.pocetak;

                    db.Entry(c).State = EntityState.Modified;
                    db.SaveChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            //Cas c = dao.FindById(cas.Id_casa);

            //c.pocetak = cas.pocetak;
        }
コード例 #17
0
        private bool CheckZauzetostOdeljenja(CasIM cas, OdeljenjeIM odeljenje)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                List <ZauzetostUcionice> zauzetosti = db.ZauzetostUcionices.Include(x => x.Odeljenje).Where(x => x.Odeljenje.Id_odeljenja == odeljenje.Id_odeljenja).ToList();

                zauzetosti.Remove(zauzetosti.SingleOrDefault(x => x.Cas.Id_casa == cas.Id_casa));

                bool zauzeta = false;

                foreach (var z in zauzetosti)
                {
                    if (cas.datum.Date == z.datum.Date)
                    {
                        if ((cas.pocetak - z.pocetak).TotalMinutes < 45 && (cas.pocetak - z.pocetak).TotalMinutes > -45)
                        {
                            zauzeta = true;
                        }
                    }
                }

                return(zauzeta);
            }
        }
コード例 #18
0
ファイル: OdeljenjaService.cs プロジェクト: Bozo9977/Projekat
 public bool DeleteOdeljenje(OdeljenjeIM odeljenje)
 {
     return(dao.Delete(odeljenje.Id_odeljenja));
 }
コード例 #19
0
ファイル: UceniciService.cs プロジェクト: Bozo9977/Projekat
 public bool AddOdeljenjeUceniku(UcenikIM ucenik, OdeljenjeIM odeljenje)
 {
     return(dao.DodajOdeljenje(ucenik.Id_ucenika, odeljenje.Id_odeljenja));
 }