public GetScoresViewModel() { Input = new GetScoresInput(); Value = new ListResultDto <ScoreItemDto>(); Subjects = new List <AcademicSubjectSimpleItemDto>(); Days = new List <DayItemDto>(); }
public GetScoresViewModel() { Input = new GetScoresInput(); Value = new ListResultDto <ScoreItemDto>(); Students = new List <StudentItemDto>(); Days = new List <DayItemDto>(); }
public async Task <Result <ListResultDto <ScoreItemDto> > > GetScores(GetScoresInput input) { var query = _academicSubjectScoreRepository.GetAll(); var scores = await query.ToListAsync(); if (input.StudentId.HasValue) { scores = scores.Where(score => score.StudentId == input.StudentId.Value).ToList(); } if (input.TeacherId.HasValue) { scores = scores.Where(score => score.TeacherId == input.TeacherId.Value).ToList(); } if (input.Date.HasValue) { scores = scores.Where(score => score.Date.Month == input.Date.Value.Month && score.Date.Year == input.Date.Value.Year).ToList(); } if (input.StudyGroupId.HasValue) { var resultGetStudents = await _studentService.GetStudents(new GetStudentsInput { StudyGroupId = input.StudyGroupId }); if (resultGetStudents.IsSuccessed) { var students = resultGetStudents.Value; scores = (from score in scores from student in students.Items where score.StudentId == student.Id select score).ToList(); } } var scoreDtos = new List <ScoreItemDto>(); foreach (var score in scores) { var scoreDto = await MapEntityToEntityDto(score); scoreDtos.Add(scoreDto); } return(Result <ListResultDto <ScoreItemDto> > .Success(new ListResultDto <ScoreItemDto>(scoreDtos))); }