public async Task <IActionResult> DodajRazredUceniku(RazrediUcenikView models, string id, string ispis) { var vjerouciteljUserName = HttpContext.User.Identity.Name; var vjeroucitelj = await userManager.FindByEmailAsync(vjerouciteljUserName); var vjerouciteljId = vjeroucitelj.Id; var razrediUcenika = _context.RazrediUcenik.Where(s => s.UcenikId == id).ToList(); var razredi = _context.Razredi.ToList(); var razrediOvogVjeroucitelja = _context.RazrediUcenik.Where(s => s.VjerouciteljId == vjerouciteljId && s.UcenikId == id).ToList(); if (id == null || models.IsSelected == null || models.SkolskaGodinaId == 0) { return(RedirectToAction("EditUser", new { id })); } else { var odabraniRazredNaziv = razredi.Where(r => r.RazredId.ToString() == models.IsSelected) .Select(r => r.Naziv).SingleOrDefault(); var skolaId = _context.SkoleUcenika.Where(m => m.UcenikId == id) .Select(s => s.SkolaId).SingleOrDefault(); if (skolaId == 0) { return(RedirectToAction("EditUser", new { id })); } var medzlisId = _context.Skole.Where(m => m.SkolaId == skolaId) .Select(s => s.MedzlisId).SingleOrDefault(); var updateRazredUcenik = new RazredUcenik(); if (ispis == "true") { updateRazredUcenik.DatumIspisa = DateTime.Now; _context.Update(updateRazredUcenik); } if (models.IsSelected != null) { //ispis iz razreda var razredUcenik = _context.RazrediUcenik.Where(u => u.UcenikId == id && u.DatumIspisa == DateTime.MinValue).SingleOrDefault(); if (razredUcenik != null) { razredUcenik.DatumIspisa = DateTime.Now; _context.Update(razredUcenik); _context.SaveChanges(); } //upis u novi razred var tempRazredUcenik = new RazredUcenik { Razred = odabraniRazredNaziv, VjerouciteljId = vjerouciteljId, UcenikId = id, SkolaId = skolaId, SkolskaGodinaId = models.SkolskaGodinaId, MedzlisId = medzlisId }; tempRazredUcenik.DatumUpisa = DateTime.Now; tempRazredUcenik.DatumIspisa = DateTime.MinValue; _context.Add(tempRazredUcenik); _context.SaveChanges(); } return(RedirectToAction("EditUser", new { id })); } }
public async Task <IActionResult> DodajRazredUceniku(string userId) { ViewBag.userId = userId; var vjerouciteljUserName = HttpContext.User.Identity.Name; var vjeroucitelj = await userManager.FindByEmailAsync(vjerouciteljUserName); var vjerouciteljId = vjeroucitelj.Id; var razredi = _context.Razredi.ToList(); var razrediUcenikaOvogVjeroucitelja = _context.RazrediUcenik .Where(s => s.UcenikId == userId && s.VjerouciteljId == vjerouciteljId) .Select(s => s.Razred).ToList(); var razrediUcenikaDrugihVjeroucitelja = _context.RazrediUcenik .Where(s => s.UcenikId == userId && s.VjerouciteljId != vjerouciteljId) .Select(s => s.Razred).ToList(); var skolskeGodine = _context.SkolskeGodine; var razrediUcenika = _context.RazrediUcenik.Where(s => s.UcenikId == userId && s.DatumIspisa == DateTime.MinValue).ToList(); var exist = razrediUcenika.Any(); if (exist) { ViewBag.exist = 1; } else { ViewBag.exist = 0; } ViewData["SkolskaGodinaId"] = new SelectList(skolskeGodine.AsEnumerable(), "SkolskaGodinaId", "Godina"); ViewBag.skolskeGodine = skolskeGodine; if (razredi == null) { ViewBag.Error = $"Niste unijeli svoje škole."; return(NotFound()); } else { var tempLista = new List <RazredUcenikView>(); var tempSkoleLista = new RazrediUcenikView(); foreach (var razred in razredi) { var razredUcenikView = new RazredUcenikView { RazredId = razred.RazredId.ToString(), Razred = razred.Naziv, }; if (razrediUcenikaOvogVjeroucitelja.Contains(razred.Naziv)) { tempSkoleLista.IsSelected = null; if (tempLista.Contains(razredUcenikView)) { continue; } else { tempLista.Add(razredUcenikView); } } else { tempSkoleLista.IsSelected = null; if (razrediUcenikaDrugihVjeroucitelja.Any()) { continue; } else { tempLista.Add(razredUcenikView); } } } tempSkoleLista.Razredi = tempLista; return(View(tempSkoleLista)); } }