public ActionResult ZadrziNaOdeljenju(int id)
        {
            int IDLekara = Convert.ToInt32(Session["IDLekara"]);
            var Provera  = (from o in db.Odeljenjes
                            join l in db.Korisniks.OfType <LekarSpecijalista>()
                            on o.ID equals l.IDOdeljenja
                            where l.ID == IDLekara
                            select o).First();

            if (Provera != null)
            {
                if (Provera.SlobodnihMesta == 0)
                {
                    Session["Obavestenje"] = "Nema slobodnih mesta na odeljenju";
                    return(RedirectToAction("Index", "Home"));
                }
            }
            var pacijent = db.Korisniks.OfType <Pacijent>().SingleOrDefault(p => p.ID == id);

            if (pacijent != null)
            {
                pacijent.IDOdeljenja = db.Korisniks.OfType <LekarSpecijalista>().First(l => l.ID == IDLekara).IDOdeljenja;
                db.Entry(pacijent).Property("IDOdeljenja").IsModified = true;
                db.SaveChanges();
                Odeljenje odeljenje = db.Odeljenjes.Where(o => o.ID == pacijent.IDOdeljenja).First();
                if (odeljenje != null)
                {
                    odeljenje.SlobodnihMesta--;
                    db.Entry(odeljenje).Property("SlobodnihMesta").IsModified = true;
                    db.SaveChanges();
                }
            }
            return(RedirectToAction("Pretraga", "Pacijents"));
        }
Example #2
0
 public IzmenaOdeljenja(Radnik r, Odeljenje o, Komunikacija kom)
 {
     InitializeComponent();
     this.o = o;
     this.r = r;
     k      = kom;
 }
        private void btnDodaj_Click(object sender, EventArgs e)
        {
            try
            {
                ISession session = DataLayer.getSession();

                string nazivOdeljenja = cmbOdeljenja.SelectedItem.ToString();
                int    idOdeljenja    = 0;

                foreach (Odeljenje odeljenje in this.listaOdeljenja)
                {
                    if (odeljenje.Naziv.Equals(nazivOdeljenja))
                    {
                        idOdeljenja = odeljenje.IdOdeljenja;
                    }
                }

                Odeljenje od = session.Load <Odeljenje>(idOdeljenja);
                od.Raspored = txtRasporedCasova.Text;
                session.Close();

                ISession s = DataLayer.getSession();

                s.Update(od);
                s.Flush();
                s.Close();

                MessageBox.Show("Uspesno ste dodali novi raspored casova");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #4
0
 public OdeljenjeView(Odeljenje odeljenje)
 {
     IdOdeljenja = odeljenje.IdOdeljenja;
     Naziv       = odeljenje.Naziv;
     Smer        = odeljenje.Smer;
     Raspored    = odeljenje.Raspored;
 }
Example #5
0
        private void cmdUpdate_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Odeljenje o = s.Load <Odeljenje>(54);

                //originalna sesija se zatvara i raskida se veza izmedju objekta i sesije
                s.Close();

                //objekat se modifikuje potpuno nezavisno od sesije
                o.BrojKasa = 10;

                //otvara se nova sesija
                ISession s1 = DataLayer.GetSession();

                //poziva se Update i objekat se povezuje sa novom sesijom
                s1.Update(o);

                s1.Flush();
                s1.Close();
            }
            catch (Exception ec)
            {
                MessageBox.Show(ec.Message);
            }
        }
Example #6
0
        private void BtnIzmenaOdeljenja_Click(object sender, RoutedEventArgs e)
        {
            Odeljenje od = new Odeljenje();

            od.OdeljenjeID = Convert.ToInt32(tbOdeljenjeID.Text);
            od.Naziv       = tbNaziv.Text;
            if (r.Privilegija == 2)
            {
                od.SefOdeljenja = o.SefOdeljenja as Radnik;
            }
            else
            {
                od.SefOdeljenja = cmbSefOdeljenja.SelectedItem as Radnik;
            }

            od.BrojZaposlenih = Convert.ToInt32(tbBrojZaposlenih.Text);

            int a = k.izmeniOdeljenje(od);

            if (a == 0)
            {
                MessageBox.Show("Neuspesna izmena odeljenja!");
                return;
            }
            else
            {
                MessageBox.Show("Uspesno izmenjeno odeljenje!");
            }
        }
 public PregledOdeljenje(Radnik r, Odeljenje o, Komunikacija kom)
 {
     InitializeComponent();
     this.o = o;
     this.r = r;
     k      = kom;
 }
Example #8
0
        public OdeljenjeLOC traziOdeljenje(int?sifra_odeljenja)
        {
            if (sifra_odeljenja == null)
            {
                return(null);
            }
            else
            {
                Odeljenje odeljenje = SkolaEntities.Odeljenjes.FirstOrDefault(o => o.sifra_odeljenja == sifra_odeljenja);
                if (odeljenje == null)
                {
                    return(null);
                }

                OdeljenjeLOC odeljenjeLoc = new OdeljenjeLOC
                {
                    sifra_odeljenja = odeljenje.sifra_odeljenja,
                    naziv           = odeljenje.naziv,
                    razred          = new RazredLOC {
                        sifra_razreda = odeljenje.Razred.sifra_razreda, naziv = odeljenje.Razred.naziv
                    }
                };

                return(odeljenjeLoc);
            }
        }
Example #9
0
        /// <summary>
        /// Proverava postojanje rednog broja predmeta, da ne bi
        /// kreirao predmet sa rednim brojem nekog vec kreiranog predmeta
        /// </summary>
        /// <param name="razred">The razred.</param>
        /// <param name="odeljenje">The odeljenje.</param>
        /// <param name="predmetId">The predmet identifier.</param>
        /// <param name="rbPredmeta">The rb predmeta.</param>
        /// <returns></returns>
        public JsonResult ProveraPostojanjaRednogBrojaPredmeta(int razred, int odeljenje, int predmetId, int rbPredmeta)
        {
            try
            {
                Odeljenje odabranoOdeljenje = _context.Odeljenja.SingleOrDefault(x => x.Razred == razred && x.OznakaID == odeljenje && x.StatusID == 3);

                var predmet = odabranoOdeljenje.Predmeti
                              .SingleOrDefault(x => x.PredmetID == predmetId);

                var redniBrojPredmeta = _context.Casovi
                                        .Where(d => d.Odeljenje.Id == odabranoOdeljenje.Id && d.Predmet.PredmetID == predmetId)
                                        .OrderBy(x => x.RedniBrojPredmeta)
                                        .SingleOrDefault(x => x.RedniBrojPredmeta == rbPredmeta);

                if (redniBrojPredmeta == null)
                {
                    return(Json(1, JsonRequestBehavior.AllowGet));
                }

                return(Json(0, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
            return(Json(-1, JsonRequestBehavior.AllowGet));
        }
Example #10
0
        public bool DeleteCas(int idCasa)
        {
            using (var db = new ModelOsnovnaSkolaContainer())
            {
                try
                {
                    ZauzetostUcionice z = db.ZauzetostUcionices.SingleOrDefault(x => x.Cas.Id_casa == idCasa);

                    List <Odeljenje> odeljenja = db.Odeljenja.Include(o => o.ZauzetostUcionices).ToList();
                    Odeljenje        odeljenje = odeljenja.SingleOrDefault(x => x.ZauzetostUcionices.Contains(z));
                    odeljenje.ZauzetostUcionices.Remove(z);

                    List <Ucionica> ucionice = db.Ucionicas.Include(x => x.ZauzetostUcionices).ToList();
                    Ucionica        ucionica = ucionice.SingleOrDefault(x => x.ZauzetostUcionices.Contains(z));
                    ucionica.ZauzetostUcionices.Remove(z);

                    db.Entry(z).State = EntityState.Deleted;

                    Cas cas = db.Cas.Find(idCasa);
                    db.Entry(cas).State = EntityState.Deleted;

                    db.SaveChanges();

                    return(true);
                }catch (Exception e)
                {
                    Console.WriteLine("Message: " + e.Message + "\nInner: " + e.InnerException.Message);
                    return(false);
                }
            }
        }
Example #11
0
        public bool upisiNovoOdeljenje(OdeljenjeLOC odeljenjeLoc)
        {
            bool rezultat_upisa    = true;
            bool odeljenje_postoji = SkolaEntities.Odeljenjes.Any(o => o.naziv == odeljenjeLoc.naziv);


            if (odeljenje_postoji == false)
            {
                Odeljenje odeljenje = new Odeljenje
                {
                    naziv         = odeljenjeLoc.naziv,
                    sifra_razreda = odeljenjeLoc.razred.sifra_razreda
                };

                SkolaEntities.Odeljenjes.InsertOnSubmit(odeljenje);

                try
                {
                    SkolaEntities.SubmitChanges();
                }
                catch (Exception e)
                {
                    Console.WriteLine("Greska pri upisu novog odeljenja u bazu " + e);
                    rezultat_upisa = false;
                }
            }
            else
            {
                rezultat_upisa = false;
            }

            return(rezultat_upisa);
        }
Example #12
0
        private void cmdGet_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                Odeljenje o = s.Get <Odeljenje>(100);

                if (o != null)
                {
                    MessageBox.Show(o.PripadaProdavnici.Naziv);
                }
                else
                {
                    MessageBox.Show("Ne postoji odeljenje sa zadatim identifikatorom");
                }


                s.Close();
            }
            catch (Exception ec)
            {
                MessageBox.Show(ec.Message);
            }
        }
Example #13
0
 private void btnDodajOdeljenje_Click(object sender, EventArgs e)
 {
     try
     {
         if (txtNaziv.Text == null || txtNaziv.Text.Equals(""))
         {
             MessageBox.Show("Naziv odeljenja ne sme biti prazan. Molimo Vas unesite naziv !");
         }
         else
         {
             ISession  s = DataLayer.getSession();
             Odeljenje o = new Odeljenje();
             o.Naziv    = txtNaziv.Text;
             o.Smer     = txtSmer.Text;
             o.Raspored = txtRaspored.Text;
             s.Save(o);
             s.Flush();
             s.Close();
             MessageBox.Show("Uspesno dodato novo odeljenje !");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Example #14
0
        public static List <Odeljenje> GetOdeljenja()
        {
            ISession         session   = SessionManager.GetSession();
            List <Odeljenje> odeljenja = new List <Odeljenje>();

            if (session == null)
            {
                return(null);
            }

            var odeljenjaData = session.Execute("select * from \"Odeljenje\"");


            foreach (Row odeljenjeData in odeljenjaData)
            {
                Odeljenje odeljenje = new Odeljenje();
                odeljenje.IDodeljenja = odeljenjeData["IDodeljenja"] != null ? odeljenjeData["IDodeljenja"].ToString() : string.Empty;
                odeljenje.naziv       = odeljenjeData["naziv"] != null ? odeljenjeData["naziv"].ToString() : string.Empty;

                odeljenja.Add(odeljenje);
            }


            return(odeljenja);
        }
Example #15
0
        /// <summary>
        /// Provera postojanja rednog broja casa, da ne bi
        /// kreirao cas sa rednim brojem nekog vec kreiranog casa
        /// </summary>
        /// <param name="razred">The razred.</param>
        /// <param name="odeljenje">The odeljenje.</param>
        /// <param name="redniBrojCasa">The redni broj casa.</param>
        /// <returns></returns>
        public JsonResult ProveraPostojanjaRednogBrojaCasa(int razred, int odeljenje, int redniBrojCasa)
        {
            try
            {
                DateTime datum = DateTime.Today;

                Odeljenje odabranoOdeljenje = _context.Odeljenja.SingleOrDefault(x => x.Razred == razred && x.OznakaID == odeljenje && x.StatusID == 3);

                Cas cas = new Cas();

                cas = _context.Casovi.Where(x => x.OdeljenjeId == odabranoOdeljenje.Id && x.Datum == datum)
                      .SingleOrDefault(x => x.RedniBrojCasa == redniBrojCasa);
                if (cas == null)
                {
                    return(Json(1, JsonRequestBehavior.AllowGet));
                }


                return(Json(0, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
            return(Json(-1, JsonRequestBehavior.AllowGet));
        }
Example #16
0
        private void btnPrikaziNapomene_Click(object sender, EventArgs e)
        {
            Odeljenje            odeljenje = DataProvider.VratiOdeljenjeProfesor(id_razrednog);
            RazredniNapomeneForm rn        = new RazredniNapomeneForm(odeljenje.odeljenjeID);

            rn.ShowDialog();
        }
Example #17
0
 public OdeljenjeView(Odeljenje o)
 {
     this.OdeljenjeId     = o.Id;
     this.Lokacija        = o.Lokacija;
     this.NazivProdavnice = o.PripadaProdavnici.Naziv;
     this.BrojProizvoda   = o.ProdajeSeProizvod.Count;
 }
Example #18
0
        private void btnPrikaziIzostanke_Click(object sender, EventArgs e)
        {
            Odeljenje             odeljenje = DataProvider.VratiOdeljenjeProfesor(id_razrednog);
            RazredniIzostanciForm ri        = new RazredniIzostanciForm(odeljenje.odeljenjeID);

            ri.ShowDialog();
        }
Example #19
0
        public bool ChangeOdeljenje(OdeljenjeIM odeljenje)
        {
            Odeljenje o = dao.FindById(odeljenje.Id_odeljenja);

            o.razred = odeljenje.razred;
            return(dao.Update(o));
        }
Example #20
0
        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);
            }
        }
Example #21
0
        /// <summary>
        /// Kontroler vraća listu predmeta
        /// Prvo kupi sve predmete koje ulogovan profesor predaje u školi
        /// Zatim kupi sve predmete koje određeno odeljenje ima
        /// Vrši se presek te dve liste i vraćaju se predmeti koje profesor može da predaje odeljenju
        /// samo ako to odeljenje ima taj predmet u rasporedu i ako taj profesor predaje taj predmet u školi
        /// </summary>
        /// <param name="razred">The razred.</param>
        /// <param name="odeljenje">The odeljenje.</param>
        /// <returns></returns>
        public JsonResult VratiPredmete(int razred, int odeljenje)
        {
            string user = User.Identity.GetUserId();

            try
            {
                var listaPredmetaProf = _context.Profesori
                                        .Single(p => p.UserProfesorId == user)
                                        .Predmeti
                                        .Select(p => p);

                Odeljenje odabranoOdeljenje = _context.Odeljenja.SingleOrDefault(x => x.Razred == razred && x.OznakaID == odeljenje && x.StatusID == 3);

                var listaPredmetaOdeljenje = odabranoOdeljenje.Predmeti;
                if (odabranoOdeljenje != null)
                {
                    var listaPredmeta = listaPredmetaProf.Intersect(listaPredmetaOdeljenje)
                                        .Select(p => new DTOPredmetCas()
                    {
                        PredmetID = p.PredmetID, NazivPredmeta = p.NazivPredmeta
                    });
                    return(Json(listaPredmeta.ToList(), JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
            return(Json(new List <DTOPredmetCas>(), JsonRequestBehavior.AllowGet));
        }
        private void btnBrisiOdeljenje_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s  = DataLayer.getSession();
                Object   ob = lbOdeljenja.SelectedItem;
                if (ob == null)
                {
                    MessageBox.Show("Selektujte odeljenje koje zelite da obrisete!");
                    return;
                }

                int       pos         = ob.ToString().IndexOf(" ");
                int       idOdeljenje = int.Parse(ob.ToString().Substring(0, pos));
                Odeljenje odeljenje   = s.Get <Odeljenje>(idOdeljenje);

                s.Delete(odeljenje);
                s.Flush();
                s.Close();
                MessageBox.Show("Uspesno obrisano odeljenje!");
                lbOdeljenja.Items.Clear();
                this.CtrlBrisiOdeljenje_Load(null, null);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #23
0
        /// <summary>
        /// Vratis the redni broj predmeta.
        /// </summary>
        /// <param name="razred">The razred.</param>
        /// <param name="odeljenje">The odeljenje.</param>
        /// <param name="predmetId">The predmet identifier.</param>
        /// <returns></returns>
        public JsonResult VratiRedniBrojPredmeta(int razred, int odeljenje, int predmetId)
        {
            try
            {
                Odeljenje odabranoOdeljenje = _context.Odeljenja.SingleOrDefault(x => x.Razred == razred && x.OznakaID == odeljenje && x.StatusID == 3);

                var predmet = odabranoOdeljenje.Predmeti
                              .SingleOrDefault(x => x.PredmetID == predmetId);
                int redniBrojPredmeta;
                try
                {
                    redniBrojPredmeta = _context.Casovi
                                        .Where(d => d.Odeljenje.Id == odabranoOdeljenje.Id && d.Predmet.PredmetID == predmetId)
                                        .OrderBy(x => x.RedniBrojPredmeta)
                                        .Select(r => r.RedniBrojPredmeta)
                                        .Max();
                }
                catch (Exception)
                {
                    redniBrojPredmeta = 0;
                }

                return(Json(redniBrojPredmeta + 1, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
            return(Json(-1, JsonRequestBehavior.AllowGet));
        }
        public List <UcenikLOC> uceniciIzOdeljenja(int?odeljenje)
        {
            var ucenici = SkolaEntities.Uceniks.Where(u => u.sifra_odeljenja == odeljenje);
            List <UcenikLOC> svi_ucenici = new List <UcenikLOC>();


            if (ucenici.Any())
            {
                foreach (var u in ucenici)
                {
                    UcenikLOC ucenikLoc = new UcenikLOC();
                    ucenikLoc.sifra_ucenika  = u.sifra_ucenika;
                    ucenikLoc.ime            = u.ime;
                    ucenikLoc.prezime        = u.prezime;
                    ucenikLoc.jmbg           = u.jmbg;
                    ucenikLoc.korisnicko_ime = u.korisnicko_ime;

                    Odeljenje odelj = SkolaEntities.Odeljenjes.FirstOrDefault(o => o.sifra_odeljenja == odeljenje);
                    ucenikLoc.odeljenje = new OdeljenjeLOC {
                        naziv = odelj.naziv, sifra_odeljenja = odelj.sifra_odeljenja
                    };

                    svi_ucenici.Add(ucenikLoc);
                }
                return(svi_ucenici);
            }
            else
            {
                return(null);
            }
        }
Example #25
0
        private void btnPregled_Click(object sender, EventArgs e)
        {
            try
            {
                ISession  session = DataLayer.getSession();
                Odeljenje o       = null;
                Predmet   p       = null;

                if (cmbPredmeti.Text == "")
                {
                    MessageBox.Show("Morate uneti Predmet");
                }
                else if (cmbOdeljenja.Text == "")
                {
                    MessageBox.Show("Morate uneti Odeljenje");
                }
                else
                {
                    int    pos           = cmbPredmeti.Text.IndexOf("-");
                    string predmetNaziv  = cmbPredmeti.Text.Substring(0, pos);
                    string predmetRazred = cmbPredmeti.Text.Substring(pos + 1);

                    int idPredmet = 0;

                    foreach (Predmet predmet in nastavnik.ListaPredmeta)
                    {
                        if (predmet.Naziv.Equals(predmetNaziv) && predmet.Razred.Equals(predmetRazred))
                        {
                            idPredmet = predmet.IdPredmeta;
                        }
                    }

                    p = session.Load <Predmet>(idPredmet);

                    string odeljenjeBaziv = cmbOdeljenja.Text;

                    int idOdeljenje = 0;

                    foreach (Odeljenje odeljenje in nastavnik.ListaOdeljenjaNastavnik)
                    {
                        if (odeljenje.Naziv.Equals(odeljenjeBaziv))
                        {
                            idOdeljenje = odeljenje.IdOdeljenja;
                        }
                    }

                    o = session.Load <Odeljenje>(idOdeljenje);

                    CtrlNastavnikInfo ctrlNastavnikInfo = new CtrlNastavnikInfo(p, o, this.nastavnik, this.panel);
                    this.panel.Controls.Clear();
                    this.panel.Controls.Add(ctrlNastavnikInfo);
                }
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Odeljenje odeljenje = db.Odeljenjes.Find(id);

            db.Odeljenjes.Remove(odeljenje);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #27
0
        private void RazredniForm_Load(object sender, EventArgs e)
        {
            Odeljenje odeljenje = DataProvider.VratiOdeljenjeProfesor(id_razrednog);

            lblOdeljenje.Text = odeljenje.odeljenjeID;

            this.Popuni_Formu();
        }
Example #28
0
 public CtrlNastavnikInfo(Predmet predmet, Odeljenje odeljenje, NijeUcenik nastavnik, Panel panel)
 {
     InitializeComponent();
     this.predmet   = predmet;
     this.odeljenje = odeljenje;
     this.nastavnik = nastavnik;
     this.panel     = panel;
 }
Example #29
0
        public void izmeniOdeljenjeRadnika(Radnik r, Odeljenje o)
        {
            TransferKlasa transfer = new TransferKlasa();

            transfer.Operacija       = Operacije.izmeniOdeljenjeRadnika;
            transfer.TransferObjekat = r;
            transfer.Rezultat        = o;
            formater.Serialize(tok, transfer);
        }
Example #30
0
        //private static ZaposleniciDAO zDao= new ZaposleniciDAO();



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

            return(dao.Insert(newOdeljenje));
        }