Esempio n. 1
0
        /// <summary>
        /// 找到该用户Like过的所有BlogPostEntity
        /// </summary>
        /// <param name="userId">该用户id</param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public IEnumerable <BlogPostEntity> FindLikedBlogPostByUser(Guid userId, int pageIndex, int pageSize)
        {
            var likedHouseIds = LrfService.GetAllMyLRFIds(userId, LRFType.Like);
            var query         = this.getNewQueryObject();
            Dictionary <string, object> queryDict    = new Dictionary <string, object>();
            Dictionary <string, object> subQueryDict = new Dictionary <string, object>();

            subQueryDict.Add("$in", likedHouseIds);
            queryDict.Add("_id", subQueryDict);
            query.AppendQuery(queryDict, QueryLogic.And);
            return(EntityRepository.Find(query, pageIndex, pageSize));
        }
Esempio n. 2
0
        /// <summary>
        /// 找到该用户Like过的所有BlogPostEntity的数目
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public long FindLikedBlogPostCountByUser(Guid userId)
        {
            var likedHouseIds = LrfService.GetAllMyLRFIds(userId, LRFType.Like);
            var query         = this.getNewQueryObject();
            Dictionary <string, object> queryDict    = new Dictionary <string, object>();
            Dictionary <string, object> subQueryDict = new Dictionary <string, object>();

            subQueryDict.Add("$in", likedHouseIds);
            queryDict.Add("_id", subQueryDict);
            query.AppendQuery(queryDict, QueryLogic.And);
            return(EntityRepository.FindCountOfResult(query));
        }
Esempio n. 3
0
        /// <summary>
        /// 找到该用户Chenkin被赞的数目
        /// </summary>
        /// <param name="ownerId"></param>
        /// <returns></returns>
        public int FindCheckinLikedCountByUser(Guid userId)
        {
            Dictionary <string, object> queryDict = new Dictionary <string, object>();

            queryDict.Add("User._id", userId);
            var queryObject = new QueryObject <BlogPostEntity>(CheckInService.EntityRepository);

            queryObject.AppendQuery(queryDict, QueryLogic.And);
            var checkins           = CheckInService.EntityRepository.FindAsQueryable(queryObject);
            int checkinsLikedCount = 0;

            foreach (var checkin in checkins)
            {
                checkinsLikedCount += LrfService.GetLRFCount(checkin.Id, LRFType.Like);
            }
            return(checkinsLikedCount);
        }