Example #1
0
        public async Task <int> GetAllStudentsAlgorithmInfo()
        {
            var studentInfoDto = await _saRepository.GetAllStudentsAlgorithmInfo();

            CalculatePoints(studentInfoDto);
            studentInfoDto = studentInfoDto.OrderByDescending(p => p.Points).ToList();
            AssignProfessorToStudent(studentInfoDto);

            var professors = studentInfoDto.SelectMany(p => p.ProfessorDtos).Distinct().ToList();
            await _saRepository.UpdateAsyncProfessorEntity(_mapper.Map <List <ProfessorDto>, List <Professor> >(professors));

            var mapStudents = _mapper.Map <List <StudentInfoDto>, List <Student> >(studentInfoDto);

            return(await _saRepository.UpdateAsyncStudentEntity(mapStudents));
        }