/// <summary> /// 获取评论数 /// </summary> /// <param name="type"></param> /// <param name="foreignkeyId"></param> /// <returns></returns> public int GetReviewCount(Enums.ReviewTypeKey type, string foreignkeyId, string userId) { StringBuilder sbSql = new StringBuilder(); sbSql.AppendFormat(" ReviewType = '{0}'", CommonPlatform.Helper.EnumStringHelper.ToString(type)); if (!string.IsNullOrWhiteSpace(foreignkeyId)) { sbSql.AppendFormat(" AND ForeignkeyId = '{0}'", foreignkeyId); } if (!string.IsNullOrWhiteSpace(userId)) { sbSql.AppendFormat(" AND UserId = '{0}'", userId); } int result = GetCount <ReviewInfo>(sbSql.ToString()); return(result); }
/// <summary> /// 添加评论或评论回复 /// </summary> /// <param name="type">类型</param> /// <param name="foreignkeyId">外键id</param> /// <param name="preReviewId">所属评论id</param> /// <param name="reviewerId">提交者id</param> /// <param name="title">标题</param> /// <param name="content">内容</param> /// <param name="websiteOwner">站点所有者</param> /// <param name="reviewMainId">主id</param> /// <returns></returns> public bool AddReview(Enums.ReviewTypeKey type, string foreignkeyId, int preReviewId, string reviewerId, string title, string content, string websiteOwner, out int reviewMainId, int isHideUserName) { reviewMainId = int.Parse(GetGUID(TransacType.CommAdd)); var typeKey = CommonPlatform.Helper.EnumStringHelper.ToString(type); //保存基本信息 Model.ReviewInfo data = new ReviewInfo() { ReviewMainId = reviewMainId, ReviewType = typeKey, ForeignkeyId = foreignkeyId, ParentId = preReviewId, ReviewTitle = title, ReviewContent = content, WebsiteOwner = websiteOwner, IsHideUserName = isHideUserName, InsertDate = DateTime.Now, UserId = reviewerId }; if (type != Enums.ReviewTypeKey.CommentReply) { data.Expand1 = foreignkeyId; bllJuActivity.PlusNumericalCol("CommentCount", int.Parse(foreignkeyId)); bllJuActivity.PlusNumericalCol("CommentAndReplayCount", int.Parse(foreignkeyId)); } else if (type == Enums.ReviewTypeKey.CommentReply) { int pre = 0; int.TryParse(foreignkeyId, out pre); var preData = GetReviewInfo(pre); if (preData != null) { data.Expand1 = preData.ForeignkeyId; bllJuActivity.PlusNumericalCol("CommentAndReplayCount", int.Parse(preData.ForeignkeyId)); } } var result = Add(data); BLLRedis.ClearReviewList(websiteOwner); return(result); }
public List <ReviewInfo> GetReviewList(Enums.ReviewTypeKey type, out int totalCount, int pageIndex, int pageSize, string foreignkeyId, string websiteOwner, string currUserId, string orderby = "", string UserId = "", string auditStatus = "", string expand1 = "", bool showStatistic = true, bool showReplayToUser = true) { List <ReviewInfo> result = new List <ReviewInfo>(); StringBuilder strWhere = new StringBuilder(); strWhere.AppendFormat(" ReviewType = '{0}' ", CommonPlatform.Helper.EnumStringHelper.ToString(type)); if (!string.IsNullOrWhiteSpace(foreignkeyId)) { strWhere.AppendFormat(" AND ForeignkeyId = '{0}' ", foreignkeyId); } if (!string.IsNullOrWhiteSpace(UserId)) { strWhere.AppendFormat(" AND UserId = '{0}' ", UserId); } //if (!string.IsNullOrWhiteSpace(websiteOwner)) //{ // strWhere.AppendFormat(" AND websiteOwner = '{0}' ", websiteOwner); //} if (!string.IsNullOrWhiteSpace(expand1)) { strWhere.AppendFormat(" AND Expand1 = '{0}' ", expand1); } if (!string.IsNullOrWhiteSpace(auditStatus)) { strWhere.AppendFormat(" AND AuditStatus = {0} ", auditStatus); } if (string.IsNullOrWhiteSpace(orderby)) { orderby = " AutoId DESC "; } result = GetLit <ReviewInfo>(pageSize, pageIndex, strWhere.ToString(), orderby); for (int i = 0; i < result.Count; i++) { result[i] = FilterReviewInfo(result[i], currUserId, showStatistic, showReplayToUser); } totalCount = GetCount <ReviewInfo>(strWhere.ToString()); return(result); }