Esempio n. 1
0
        public IActionResult GetStudents([FromBody] GetStudentsViewModel model)
        {
            var claims    = User.Claims;
            var userId    = claims.FirstOrDefault().Value;
            var group     = _context.Lessons.FirstOrDefault(x => x.Id == int.Parse(model.LessonId)).GroupId;
            var jornalCol = _context.JournalColumns.FirstOrDefault(x => x.LessonId == int.Parse(model.LessonId));

            if (jornalCol == null)
            {
                _context.JournalColumns.Add(new Data.Entities.JournalColumn()
                {
                    JournalId = _context.Journals.FirstOrDefault(x => x.GroupId == group).Id,
                    LessonId  = int.Parse(model.LessonId),
                    Topic     = "",
                });
                _context.SaveChanges();
                //return Ok(_studentsRepo.GetStudents(group));
                return(Ok(new StudentsViewModel()
                {
                    Students = _studentsRepo.GetStudents(group).Select(x => new StudentViewModel()
                    {
                        Id = x.Id,
                        Adress = x.Adress,
                        Name = x.Name,
                        LastName = x.LastName,
                    }),
                }));
            }
            else
            {
                var marks = _context.Marks.Where(t => t.JournalColumnId == jornalCol.Id);
                var mr    = _studentsRepo.GetStudents(group).Select(x => new StudentViewModel()
                {
                    Id       = x.Id,
                    Adress   = x.Adress,
                    Name     = x.Name,
                    LastName = x.LastName,
                    Mark     = marks.FirstOrDefault(t => t.StudentId == x.Id) == null ? null : marks.FirstOrDefault(t => t.StudentId == x.Id).Value,
                    MarkType = marks.FirstOrDefault(t => t.StudentId == x.Id) == null ? null : marks.FirstOrDefault(t => t.StudentId == x.Id).MarkTypeId.ToString(),
                    //ControlMark = marks.FirstOrDefault(t => t.StudentId == x.Id && t.MarkTypeId == 3) == null ? null : marks.FirstOrDefault(t => t.StudentId == x.Id && t.MarkTypeId == 3).Value,
                    IsPresent = marks.FirstOrDefault(t => t.StudentId == x.Id) == null ? null : marks.FirstOrDefault(t => t.StudentId == x.Id).IsPresent.ToString()
                });
                return(Ok(new StudentsViewModel()
                {
                    Students = mr,
                    Homework = jornalCol.Homework,
                    Topic = jornalCol.Topic
                }));
            }
        }
        public async Task <IActionResult> Index(GetStudentsViewModel model)
        {
            var result = await _studentService.GetStudents(model.Input);

            if (result.IsSuccessed)
            {
                var resultGetStudyGroups = await _studyGroupService.GetStudyGroups(new GetStudyGroupsInput());

                if (resultGetStudyGroups.IsSuccessed)
                {
                    ViewBag.StudyGroups =
                        new SelectList(resultGetStudyGroups.Value.Items, "Id", "Name");
                }
                model.Value = result.Value;
            }
            return(View(model));
        }
        public async Task <IActionResult> Index()
        {
            var returnUrl = NormalizeReturnUrl(null);
            var model     = new GetStudentsViewModel
            {
                ReturnUrl = returnUrl
            };

            model.Input.StudyGroupId = null;
            var resultGetStudyGroups = await _studyGroupService.GetStudyGroups(new GetStudyGroupsInput());

            if (resultGetStudyGroups.IsSuccessed)
            {
                ViewBag.StudyGroups =
                    new SelectList(resultGetStudyGroups.Value.Items, "Id", "Name");
            }
            var result = await _studentService.GetStudents(model.Input);

            if (result.IsSuccessed)
            {
                model.Value = result.Value;
            }
            return(View(model));
        }