public PagedResultDto <UserSubscribeDto> GetUserFansList([FromQuery] UserSubscribeSearchDto searchDto)
        {
            List <UserSubscribeDto> userSubscribes = _userSubscribeRepository.Select.Include(r => r.LinUser)
                                                     .Where(r => r.SubscribeUserId == searchDto.UserId)
                                                     .OrderByDescending(r => r.CreateTime)
                                                     .ToPager(searchDto, out long count)
                                                     .ToList(r => new UserSubscribeDto
            {
                CreateUserId    = r.CreateUserId,
                SubscribeUserId = r.SubscribeUserId,
                Subscribeer     = new OpenUserDto()
                {
                    Id           = r.LinUser.Id,
                    Introduction = r.LinUser.Introduction,
                    Nickname     = r.LinUser.Nickname,
                    Avatar       = r.LinUser.Avatar,
                    Username     = r.LinUser.Username,
                },
                //当前登录的用户是否关注了这个粉丝
                IsSubscribeed = _userSubscribeRepository.Select.Any(u =>
                                                                    u.CreateUserId == _currentUser.Id && u.SubscribeUserId == r.CreateUserId)
            });

            userSubscribes.ForEach(r => { r.Subscribeer.Avatar = _currentUser.GetFileUrl(r.Subscribeer.Avatar); });

            return(new PagedResultDto <UserSubscribeDto>(userSubscribes, count));
        }
Пример #2
0
        public PagedResultDto <TagListDto> GetSubscribeTags(UserSubscribeSearchDto userSubscribeDto)
        {
            var userTags = _userTagRepository.Select.Include(r => r.Tag)
                           .Where(r => r.CreateUserId == userSubscribeDto.UserId)
                           .OrderByDescending(r => r.CreateTime)
                           .ToPagerList(userSubscribeDto, out long count)
                           .Select(r =>
            {
                TagListDto tagDto = _mapper.Map <TagListDto>(r.Tag);
                if (tagDto != null)
                {
                    tagDto.ThumbnailDisplay = _fileRepository.GetFileUrl(tagDto.Thumbnail);
                    tagDto.IsSubscribe      = true;
                }
                else
                {
                    return(new TagListDto()
                    {
                        Id = r.TagId,
                        TagName = "该标签已被拉黑",
                        IsSubscribe = true
                    });
                }
                return(tagDto);
            }).ToList();

            return(new PagedResultDto <TagListDto>(userTags, count));
        }
        public void GetUserSubscribeeeList()
        {
            UserSubscribeSearchDto searchDto = new UserSubscribeSearchDto()
            {
                UserId = 11
            };
            //.Include(r => r.BeSubscribeUser)
            var userSubscribes = _userSubscribeRepository.Select
                                 .Where(r => r.CreateUserId == searchDto.UserId)
                                 .ToList(r => new
            {
                CreateUserId      = r.CreateUserId,
                BeSubscribeUserId = r.SubscribeUserId,
                Subscribeer       = r.SubscribeUser,
                IsSubscribeed     = _userSubscribeRepository.Select.Any(u => u.CreateUserId == 7 && u.SubscribeUserId == r.SubscribeUserId)
            });

            var userSubscribe2 = _userSubscribeRepository.Select
                                 .Where(r => r.CreateUserId == searchDto.UserId)
                                 .ToList(r => new UserSubscribeDto()
            {
                CreateUserId    = r.CreateUserId,
                SubscribeUserId = r.SubscribeUserId,
                Subscribeer     = new OpenUserDto()
                {
                    Id           = r.SubscribeUser.Id,
                    Introduction = r.SubscribeUser.Introduction,
                    Nickname     = r.SubscribeUser.Nickname,
                    Avatar       = r.SubscribeUser.Avatar,
                    Username     = r.SubscribeUser.Username,
                },
                IsSubscribeed = _userSubscribeRepository.Select.Any(u =>
                                                                    u.CreateUserId == 7 && u.SubscribeUserId == r.SubscribeUserId)
            });
        }
Пример #4
0
        /// <summary>
        /// 得到某个用户关注的标签
        /// </summary>
        /// <param name="userSubscribeDto"></param>
        /// <returns></returns>
        public PagedResultDto <TagDto> GetSubscribeTags(UserSubscribeSearchDto userSubscribeDto)
        {
            var userTags = _userTagRepository.Select.Include(r => r.Tag)
                           .Where(r => r.CreateUserId == userSubscribeDto.UserId)
                           .OrderByDescending(r => r.CreateTime)
                           .ToPagerList(userSubscribeDto, out long count)
                           .Select(r =>
            {
                TagDto tagDto           = _mapper.Map <TagDto>(r.Tag);
                tagDto.ThumbnailDisplay = _currentUser.GetFileUrl(tagDto.Thumbnail);
                tagDto.IsSubscribe      = true;
                return(tagDto);
            }).ToList();

            return(new PagedResultDto <TagDto>(userTags, count));
        }
Пример #5
0
 public PagedResultDto <TagListDto> GetUserTagList([FromQuery] UserSubscribeSearchDto userSubscribeDto)
 {
     return(_tagService.GetSubscribeTags(userSubscribeDto));
 }
Пример #6
0
 public PagedResultDto <UserSubscribeDto> GetUserFansList([FromQuery] UserSubscribeSearchDto searchDto)
 {
     return(userSubscribeService.GetUserFansList(searchDto));
 }