public async Task <IActionResult> VedomostStudentMarksAddRow(VedomostStudentMark vedomostStudentMark) { _context.VedomostStudentMarks.Add(vedomostStudentMark); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(VedomostStudentMarks), new { id = vedomostStudentMark.VedomostId })); }
public async Task <IActionResult> Edit(int id, [Bind("VedomostStudentMarkId,VedomostId,StudentId,VedomostStudentMarkNameId")] VedomostStudentMark vedomostStudentMark) { if (id != vedomostStudentMark.VedomostStudentMarkId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(vedomostStudentMark); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!VedomostStudentMarkExists(vedomostStudentMark.VedomostStudentMarkId)) { return(NotFound()); } else { throw; } } return(RedirectToAction("VedomostStudentMarks", "Vedomosti", new { id = vedomostStudentMark.VedomostId })); } ViewData["StudentId"] = new SelectList(_context.Students, "StudentId", "StudentId", vedomostStudentMark.StudentId); ViewData["VedomostId"] = new SelectList(_context.Vedomosti, "VedomostId", "VedomostId", vedomostStudentMark.VedomostId); ViewData["VedomostStudentMarkNameId"] = new SelectList(_context.VedomostStudentMarkNames, "VedomostStudentMarkNameId", "VedomostStudentMarkNameId", vedomostStudentMark.VedomostStudentMarkNameId); return(View(vedomostStudentMark)); }
public async Task <IActionResult> VedomostStudentMarksDeleteRow(VedomostStudentMark vedomostStudentMark) { var deletingStudentMark = await _context.VedomostStudentMarks .Where(m => m.VedomostStudentMarkId == vedomostStudentMark.VedomostStudentMarkId) .SingleOrDefaultAsync(); if (deletingStudentMark != null) { _context.VedomostStudentMarks.Remove(deletingStudentMark); await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(VedomostStudentMarks), new { id = vedomostStudentMark.VedomostId })); }
public async Task <IActionResult> Create([Bind("VedomostStudentMarkId,VedomostId,StudentId,VedomostStudentMarkNameId")] VedomostStudentMark vedomostStudentMark) { if (ModelState.IsValid) { _context.Add(vedomostStudentMark); await _context.SaveChangesAsync(); return(RedirectToAction("VedomostStudentMarks", "Vedomosti", new { id = vedomostStudentMark.VedomostId })); } ViewData["StudentId"] = new SelectList(_context.Students, "StudentId", "StudentId", vedomostStudentMark.StudentId); ViewData["VedomostId"] = new SelectList(_context.Vedomosti, "VedomostId", "VedomostId", vedomostStudentMark.VedomostId); ViewData["VedomostStudentMarkNameId"] = new SelectList(_context.VedomostStudentMarkNames, "VedomostStudentMarkNameId", "VedomostStudentMarkNameId", vedomostStudentMark.VedomostStudentMarkNameId); return(View(vedomostStudentMark)); }
public async Task <IActionResult> CreateVedomostStudentMarks(int id) { var vedomost = await _context.Vedomosti .Include(v => v.EduYear) .Include(v => v.SemestrName) .Include(v => v.StudentGroup.EduKurs) .Include(v => v.StudentGroup.Students) .Include(v => v.VedomostStudentMarks) .SingleOrDefaultAsync(v => v.VedomostId == id); if (vedomost != null && vedomost.VedomostStudentMarks.Count == 0) { foreach (var student in vedomost.StudentGroup.Students) { var studentMark = new VedomostStudentMark(); studentMark.StudentId = student.StudentId; studentMark.VedomostStudentMarkNameId = (int)VedomostStudentMarkNameEnum.NeYavNeAtt; vedomost.VedomostStudentMarks.Add(studentMark); } await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Index))); }
/// <summary> /// Добавление строки в ведомость /// </summary> /// <param name="id">УИД ведомости</param> /// <returns></returns> public async Task <IActionResult> VedomostStudentMarksAddRow(int id) { // Определяем группу, для которой составлена ведомость var studentGroup = await _context.Vedomosti.Where(v => v.VedomostId == id).SingleOrDefaultAsync(); // Составляем полный список студентов группы, для которой составлена ведомость var students = await _context.Students.Where(s => s.StudentGroupId == studentGroup.StudentGroupId).ToListAsync(); // Получаем уже имеющиеся записи ведомости var editingStudentMark = await _context.VedomostStudentMarks .Include(m => m.VedomostStudentMarkName) .Include(m => m.Student.StudentGroup.EduKurs) .Include(m => m.Vedomost.EduYear) .Include(m => m.Vedomost.SemestrName) .Where(m => m.VedomostId == id).ToListAsync(); var addedStudentsIds = editingStudentMark.Select(m => m.StudentId).ToList(); // Если уже имеются какие-либо записи, // исключаем студентов из списка, // чтобы избежать дублирования if (editingStudentMark.Count > 0) { foreach (var addedStudentsId in addedStudentsIds) { var addedStudent = students.Where(s => s.StudentId == addedStudentsId).SingleOrDefault(); if (addedStudent != null) { students.Remove(addedStudent); } } } if (students.Count > 0) { ViewBag.students = new SelectList(students, "StudentId", "StudentFio"); } var vedomost = await _context.Vedomosti .Include(v => v.EduYear) .Include(v => v.SemestrName) .Include(v => v.StudentGroup.EduKurs) .Include(v => v.StudentGroup.Students) .Include(v => v.VedomostStudentMarks) .ThenInclude(m => m.VedomostStudentMarkName) .SingleOrDefaultAsync(v => v.VedomostId == id); ViewBag.vedomost = vedomost; if (vedomost == null) { return(NotFound()); } ViewBag.VedomostStudentMarkNameId = new SelectList(_context.VedomostStudentMarkNames, "VedomostStudentMarkNameId", "VedomostStudentMarkNameName"); var vedomostStudentMark = new VedomostStudentMark(); vedomostStudentMark.VedomostId = id; return(View(vedomostStudentMark)); }