public async Task <IActionResult> Index() { User user = await _userManager.FindByNameAsync(User.Identity.Name); if (User.IsInRole("student")) { GraduationWork graduationWork = await _context.GraduationWorks.FirstOrDefaultAsync(x => x.StudentId == user.SubjectAreaId); return(await Details(graduationWork?.Id)); } IQueryable <GraduationWork> graduationWorks = _context.GraduationWorks .Include(x => x.Student.Group.SchedulePlans.Where(x => x.ApprovedDate != null)) .ThenInclude(x => x.Events) .Include(x => x.EventLogs) .Include(x => x.Reviewer) .Include(x => x.ScientificAdviser); if (User.IsInRole("teacher")) { graduationWorks = graduationWorks.Where(x => x.ScientificAdviserId == user.SubjectAreaId); } return(View(await graduationWorks.OrderByDescending(x => x.ArchievedDate).ThenBy(x => x.Student.FullName).ToListAsync())); }
public async Task <IActionResult> Create([Bind("StudentId, Theme, ScientificAdviserId, ReviewerId")] GraduationWork graduationWork) { if (ModelState.IsValid) { _context.Add(graduationWork); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["StudentId"] = new SelectList(_context.Students, "GradebookNumber", "FullName", graduationWork.StudentId); ViewData["ScientificAdviserId"] = new SelectList(_context.Teachers, "Id", "FullName", graduationWork.ScientificAdviserId); ViewData["ReviewerId"] = new SelectList(_context.Teachers, "Id", "FullName", graduationWork.ReviewerId); return(View(graduationWork)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,StudentId,Theme,ScientificAdviserId,ReviewerId")] GraduationWork graduationWork) { if (id != graduationWork.Id || !GraduationWorkExists(id)) { return(NotFound()); } if (ModelState.IsValid) { _context.Update(graduationWork); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["StudentId"] = new SelectList(_context.Students, "GradebookNumber", "FullName", graduationWork.StudentId); ViewData["ScientificAdviserId"] = new SelectList(_context.Teachers, "Id", "FullName", graduationWork.ScientificAdviserId); ViewData["ReviewerId"] = new SelectList(_context.Teachers, "Id", "FullName", graduationWork.ReviewerId); return(View(graduationWork)); }