Exemplo n.º 1
0
        public ActionResult EdytujKarta(int id)
        {
            var context = new Models.Context();
            var program = context.ProgramyStudiow.Where(p => !p.Usuniety.HasValue).FirstOrDefault(p => p.Id == id);
            var karta   = new NowaKarta()
            {
                Id                  = program.Id,
                WydzialId           = program.WydzialId,
                KierunekId          = program.KierunekId,
                PoziomId            = program.PoziomId,
                ProfilKsztalceniaId = program.ProfilKsztalceniaId,
                ObszarKsztalceniaId = program.ObszarKsztalceniaId,
                GrupaPrzedmiotowId  = program.GrupaPrzedmiotowId,
                SemestrId           = program.SemestrId,
                FormaZaliczeniaId   = program.FormaZaliczeniaId,
                WykladowcaId        = program.WykladowcaId,
                NazwaPrzedmiotu     = program.Nazwa,
                SpecjalnoscId       = program.SpecjalnoscId,
                Kod                 = program.Kod,
                DoWyboru            = program.PrzedmiotDoWyboru,
                ECTS                = program.ECTS
            };

            UzupelnijProgramStudiow(context, karta);
            karta.Godziny.ForEach(g =>
            {
                var znanaGodzina = program.LiczbyGodzin.FirstOrDefault(lg => lg.TypLiczbaGodzinId == g.TypLiczbGodzinId);
                if (znanaGodzina != null)
                {
                    g.Stacjonarne    = znanaGodzina.Stacjonarne;
                    g.Niestacjonarne = znanaGodzina.Niestacjonarne;
                }
            });
            return(View("NowaKarta", karta));
        }
Exemplo n.º 2
0
        public ActionResult NowaKarta()
        {
            var karta   = new NowaKarta();
            var context = new Models.Context();

            UzupelnijProgramStudiow(context, karta);
            return(View(karta));
        }
Exemplo n.º 3
0
        public ActionResult NowyProgram(NowaKarta nowyProgram)
        {
            var context = new Models.Context();
            var program = new Program();

            if (nowyProgram.Id > 0)
            {
                program = context.ProgramyStudiow.Where(p => !p.Usuniety.HasValue).FirstOrDefault(p => p.Id == nowyProgram.Id);
            }

            program.WydzialId           = nowyProgram.WydzialId;
            program.KierunekId          = nowyProgram.KierunekId;
            program.PoziomId            = nowyProgram.PoziomId;
            program.ProfilKsztalceniaId = nowyProgram.ProfilKsztalceniaId;
            program.ObszarKsztalceniaId = nowyProgram.ObszarKsztalceniaId;
            program.GrupaPrzedmiotowId  = nowyProgram.GrupaPrzedmiotowId;
            program.SemestrId           = nowyProgram.SemestrId;
            program.FormaZaliczeniaId   = nowyProgram.FormaZaliczeniaId;
            program.WykladowcaId        = nowyProgram.WykladowcaId;
            program.Nazwa             = nowyProgram.NazwaPrzedmiotu;
            program.SpecjalnoscId     = nowyProgram.SpecjalnoscId;
            program.Kod               = nowyProgram.Kod;
            program.PrzedmiotDoWyboru = nowyProgram.DoWyboru;
            program.ECTS              = nowyProgram.ECTS;

            program.LiczbyGodzin.ForEach(lg =>
            {
                var godzina = nowyProgram.Godziny.FirstOrDefault(g => g.TypLiczbGodzinId == lg.TypLiczbaGodzinId);
                if (godzina != null)
                {
                    lg.Stacjonarne    = godzina.Stacjonarne < 0 ? 0 : godzina.Stacjonarne;
                    lg.Niestacjonarne = godzina.Niestacjonarne < 0 ? 0 : godzina.Niestacjonarne;
                }
            });

            nowyProgram.Godziny.Where(godzina => !program.LiczbyGodzin.Any(lg => lg.TypLiczbaGodzinId == godzina.TypLiczbGodzinId)).ForEach(godzina =>
            {
                program.LiczbyGodzin.Add(new LiczbaGodzin()
                {
                    TypLiczbaGodzinId = godzina.TypLiczbGodzinId,
                    Stacjonarne       = godzina.Stacjonarne < 0 ? 0 : godzina.Stacjonarne,
                    Niestacjonarne    = godzina.Niestacjonarne < 0 ? 0 : godzina.Niestacjonarne
                });
            });


            if (nowyProgram.Id > 0)
            {
                context.Entry(program).State = System.Data.Entity.EntityState.Modified;
            }
            else
            {
                context.ProgramyStudiow.Add(program);
            }
            context.SaveChanges();

            return(RedirectToAction("Index"));
        }
Exemplo n.º 4
0
        private void UzupelnijProgramStudiow(Models.Context context, NowaKarta karta)
        {
            var userID = User.Identity.GetUserId();
            var user   = context.Users.Include("Wydzialy.Wydzial.Kierunki.Specjalnosci").First(u => u.Id == userID);

            karta.Wydzialy = user.Wydzialy.Where(w => w.Wydzial.Kierunki.Any(k => k.Specjalnosci.Any()))
                             .Select(w => w.Wydzial).Select(w =>
                                                            new NowaKartaWydzial()
            {
                Nazwa    = w.Nazwa,
                Id       = w.Id,
                Kierunki = w.Kierunki
                           .Where(k => k.Specjalnosci.Any())
                           .Select(k => new NowaKartaKierunek()
                {
                    Nazwa        = k.Nazwa,
                    Id           = k.Id,
                    Specjalnosci = k.Specjalnosci
                                   .Select(s => new NowaKartaSpecjalnosc()
                    {
                        Nazwa = s.Nazwa,
                        Id    = s.Id
                    })
                })
            }
                                                            ).ToList();

            karta.Poziomy = context.Poziomy.Select(w =>
                                                   new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                   ).ToList();
            karta.ProfileKsztalcenia = context.ProfileKsztalcenia.Select(w =>
                                                                         new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                                         ).ToList();
            karta.ObszaryKsztalcenia = context.ObszaryKsztalcenia.Select(w =>
                                                                         new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                                         ).ToList();
            karta.GrupyPrzedmiotow = context.GrupyPrzedmiotow.Select(w =>
                                                                     new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                                     ).ToList();
            karta.Semestry = context.Semestry.Select(w =>
                                                     new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                     ).ToList();
            karta.FormyZaliczenia = context.FormyZaliczenia.Select(w =>
                                                                   new SelectListItem()
            {
                Text  = w.Nazwa,
                Value = w.Id.ToString()
            }
                                                                   ).ToList();
            karta.Wykladowcy = context.Users.ToList().Select(w =>
                                                             new SelectListItem()
            {
                Text  = string.Join(" ", w.Tytuly.OrderBy(t => t.Kolejnosc).Select(t => t.Nazwa)) + " " + w.Imie + " " + w.Nazwisko,
                Value = w.Id.ToString()
            }
                                                             ).ToList();

            karta.Godziny = context.TypyLiczbGodzin.Select(w =>
                                                           new Godzina()
            {
                Stacjonarne      = 0,
                Niestacjonarne   = 0,
                TypLiczbGodzinId = w.Id,
                Nazwa            = w.Nazwa
            }
                                                           ).ToList();
        }