/// <summary>
        /// 某人是否拥有了某个标题的文集
        /// </summary>
        /// <param name="title"></param>
        /// <param name="ownerId"></param>
        /// <returns></returns>
        public static bool ExistCollectionByTitle(string title, string ownerId)
        {
            IMongoQuery TitleQuery = Query.EQ(nameof(Title), title);
            var         cnt        = OwnerTableOperator.GetRecListByOwnerId <Collection>(CollectionName, ownerId, TitleQuery).Count;

            return(cnt != 0);
        }
Esempio n. 2
0
 /// <summary>
 /// 获得某人的所有的文章
 /// </summary>
 /// <param name="ownerId"></param>
 /// <returns></returns>
 public static List <Article> GetListByOwnerId(string ownerId, bool IsOnlyFirstPage = true)
 {
     if (IsOnlyFirstPage)
     {
         return(OwnerTableOperator.GetRecListByOwnerId <Article>(CollectionName, ownerId, ArticleListManager.FirstPageArticleQuery));
     }
     else
     {
         return(OwnerTableOperator.GetRecListByOwnerId <Article>(CollectionName, ownerId));
     }
 }
 /// <summary>
 /// 获得某人文集列表
 /// </summary>
 /// <param name="ownerId"></param>
 /// <returns></returns>
 public static List <Collection> GetCollectionListByOwnerId(string ownerId)
 {
     return(OwnerTableOperator.GetRecListByOwnerId <Collection>(CollectionName, ownerId));
 }
Esempio n. 4
0
        /// <summary>
        /// 获得用户BODY
        /// </summary>
        /// <param name="accountId"></param>
        /// <returns></returns>
        public static UserBody GetUserBody(string accountId)
        {
            IMongoQuery x     = Query.EQ(nameof(UserBody.AccountId), accountId);
            var         cache = MongoDbRepository.GetFirstCacheRec <UserBody>(x);

            if (cache != null)
            {
                return(cache);
            }
            UserBody u = new UserBody();

            u.AccountId = accountId;
            u.UserInfo  = UserInfo.GetUserInfoBySn(accountId);

            switch (u.UserInfo.RegisterMethod)
            {
            case GithubAccount.Github:
                u.GitInfo = GithubAccount.GetGithubAccountBySn(u.UserInfo.RegisterAccountID);
                break;

            case QQAccount.QQ:
                u.QQInfo = QQAccount.GetQQAccountBySn(u.UserInfo.RegisterAccountID);
                break;

            default:
                break;
            }

            //获得用户文章列表
            u.ArticleList = new List <ArticleItemBody>();
            var alist = Article.GetListByOwnerId(accountId);

            foreach (var item in alist)
            {
                u.ArticleList.Add(ArticleListManager.GetArticleItemBodyById(item.Sn));
            }
            //关注的人
            u.FocusList = new List <UserInfo>();
            var focuslist = Focus.GetFocus(accountId);

            foreach (var item in focuslist)
            {
                u.FocusList.Add(UserInfo.GetUserInfoBySn(item));
            }
            //跟随的人
            u.FollowList = new List <UserInfo>();
            var followlist = Focus.GetFollow(accountId);

            foreach (var item in followlist)
            {
                u.FollowList.Add(UserInfo.GetUserInfoBySn(item));
            }
            //收藏
            u.StockList = new List <ArticleItemBody>();
            var slist = OwnerTableOperator.GetRecListByOwnerId <Stock>(accountId);

            foreach (var item in slist)
            {
                u.StockList.Add(ArticleListManager.GetArticleItemBodyById(item.ArticleID));
            }
            UserBody.InsertUserBody(u);
            return(u);
        }