Esempio n. 1
0
        /// <summary>
        /// 分页获取最新的消息。以后可以加入标签,根据用户的兴趣获取,或者根据地理位置获取
        /// </summary>
        /// <param name="page"></param>
        /// <param name="count"></param>
        /// <param name="userid">有userid的时候,是从添加页跳过去的。否则是直接打开首页</param>
        /// <returns></returns>
        public string GetTravelPartLists(int page, int count, int?userid)
        {
            var          resultArr = new List <string>();
            const string jsonItem  = "{" +
                                     "\"userName\": \"@userName\"" +
                                     ",\"userId\": \"@userId\"" +
                                     ",\"headImage\": \"@headImage\"" +
                                     ",\"sex\": \"@sex\"" +
                                     ",\"travelId\": \"@travelId\"" +
                                     ",\"travelName\": \"@travelName\"" +
                                     ",\"travelPartId\": \"@travelPartId\"" +
                                     ",\"description\": \"@description\"" +
                                     ",\"images\": \"@images\"" +
                                     ",\"location\": \"@location\"" +
                                     ",\"createTime\": \"@createTime\"" +
                                     ",\"thembCount\": \"@thembCount\"" +
                                     ",\"commentCount\": \"@commentCount\"" +
                                     "}";
            var startIndex  = (page - 1) * count + 1;
            var endIndex    = page * count;
            var travelParts = _travelPartsBll.GetListByPage(" IsDelete=0", "CreateTime desc", startIndex, endIndex);

            if (travelParts != null && travelParts.Tables[0].Rows.Count > 0)
            {
                var lists = _travelPartsBll.DataTableToList(travelParts.Tables[0]);
                foreach (TravelParts travelPart in lists)
                {
                    int travelId   = travelPart.TravelId ?? 0;
                    var travelName = (travelId > 0) ? _travelsBll.GetModelByCache(travelId).TravelName : "";
                    var userId     = travelPart.UserId;
                    var userModel  = _userBll.GetModelByCache(userId);
                    var userName   = userModel.UserName;
                    var headImage  = "" + userModel.ImgUrl;
                    var sex        = userModel.Sex ? "男" : "女";
                    var str        = jsonItem.Replace("@userName", userName);
                    str = str.Replace("@userId", userId.ToString());
                    str = str.Replace("@headImage", headImage);
                    str = str.Replace("@sex", sex);
                    str = str.Replace("@travelId", travelId.ToString());
                    str = str.Replace("@travelName", travelName);
                    str = str.Replace("@travelPartId", travelPart.Id.ToString());
                    str = str.Replace("@description", travelPart.Description);
                    var imagesStr = string.Empty;
                    if (!string.IsNullOrEmpty(travelPart.PartUrl))
                    {
                        var arr     = travelPart.PartUrl.Split(',');
                        var tempimg = arr[0];
                        tempimg   = tempimg.Replace("http://appimg.impinker.cn", "");
                        imagesStr = _baseUrl + tempimg;
                    }
                    str = str.Replace("@images", imagesStr);//图片或视频
                    str = str.Replace("@location", travelPart.Area);
                    str = str.Replace("@createTime", travelPart.CreateTime.ToString("yy-MM-dd HH:mm"));
                    str = str.Replace("@thembCount", _thumbBll.GetThembCountByPartId(travelPart.Id).ToString());       //
                    str = str.Replace("@commentCount", _commentBll.GetCommentCountByPartId(travelPart.Id).ToString()); //
                    resultArr.Add(str);
                }
                if (resultArr.Count > 0)
                {
                    return(string.Format("[{0}]", string.Join(",", resultArr)));
                }
            }
            return(string.Empty);
        }