Example #1
0
        public ActionResult <GetUserMusicResponse> GetUserMusic(GetUserMusicRequest request)
        {
            Guid?aimeId  = _aimeService.FindIdByCardId(request.UserId);
            var  profile = _context.FindProfileWithData(aimeId, p => p.Musics);

            UserMusic[] musics = Array.Empty <UserMusic>();

            if (profile != null)
            {
                musics = profile.Musics
                         .Distinct(UserMusicEqualityComparer.Instance)
                         .Skip(request.NextIndex)
                         .Take(request.MaxCount)
                         .Select(ObjectMapper.Map <UserMusic>)
                         .ToArray();
            }

            return(Ok(new GetUserMusicResponse
            {
                UserId = request.UserId,
                NextIndex = ChunithmUtility.NextPagination(musics, request),
                Length = musics.Length,
                UserMusicList = musics
            }));
        }
Example #2
0
        public ActionResult <GetUserCourseResponse> GetUserCourse(GetUserCourseRequest request)
        {
            Guid?aimeId  = _aimeService.FindIdByCardId(request.UserId);
            var  profile = _context.FindProfileWithData(aimeId, p => p.Courses);

            UserCourse[] courses = Array.Empty <UserCourse>();

            if (profile != null)
            {
                courses = profile.Courses
                          .Skip(request.NextIndex)
                          .Take(request.MaxCount)
                          .Select(ObjectMapper.Map <UserCourse>)
                          .ToArray();
            }

            return(Ok(new GetUserCourseResponse
            {
                UserId = request.UserId,
                NextIndex = ChunithmUtility.NextPagination(courses, request),
                Length = courses.Length,
                UserCourseList = courses
            }));
        }