/// <summary> /// 获取[讨论主题]分页数据集 /// </summary> /// <param name="pageSize"></param> /// <param name="pageIndex"></param> /// <param name="iClassId"></param> /// <param name="iUnitContent"></param> /// <param name="recordCount"></param> /// <returns></returns> public List<Course_UnitReplyDetailOther> GetListTopicOther(int pageSize, int pageIndex, int iClassId, int iUnitContent, out int recordCount) { StringBuilder sb = new StringBuilder(); sb.AppendFormat(@" Select Count(1) from Course_UnitReplyDetail left join Member_Account on Course_UnitReplyDetail.AccountId=Member_Account.Id left join Organ_Detail on Member_Account.OrganId = Organ_Detail.Id where Course_UnitReplyDetail.Display = 1 AND Course_UnitReplyDetail.Delflag = 0 AND Course_UnitReplyDetail.ParentReplyId = 0 AND Course_UnitReplyDetail.ClassId = {0} AND Course_UnitReplyDetail.UnitContent = {1}", iClassId, iUnitContent); recordCount = Convert.ToInt32(MSEntLibSqlHelper.ExecuteScalarBySql(sb.ToString())); int start = (pageIndex - 1) * pageSize + 1; int end = pageIndex * pageSize; StringBuilder sql = new StringBuilder(); sql.AppendFormat(@" Select * from ( select *,ROW_NUMBER() over (order by ParentReplyId,CreateDate) as [RowNum] from ( select Member_Account.Nickname,Member_Account.Pic,Organ_Detail.Id as OrganDetailId, Organ_Detail.Title as OrganDetailTitle, Course_UnitReplyDetail.* from Course_UnitReplyDetail left join Member_Account on Course_UnitReplyDetail.AccountId=Member_Account.Id left join Organ_Detail on Member_Account.OrganId = Organ_Detail.Id where Course_UnitReplyDetail.Display = 1 AND Course_UnitReplyDetail.Delflag = 0 AND Course_UnitReplyDetail.ParentReplyId = 0 AND Course_UnitReplyDetail.ClassId = {0} AND Course_UnitReplyDetail.UnitContent = {1}) as T1", iClassId, iUnitContent); sql.Append(") as T where [RowNum] between " + start + " and " + end); List<Course_UnitReplyDetailOther> list = new List<Course_UnitReplyDetailOther>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql.ToString())) { while (reader.Read()) { Course_UnitReplyDetailOther model = new Course_UnitReplyDetailOther(); ConvertToModelOther(reader, model); list.Add(model); } } return list; }
private void ConvertToModelOther(IDataReader reader, Course_UnitReplyDetailOther modelOther) { if (reader["NickName"] != DBNull.Value) modelOther.NickName = Convert.ToString(reader["NickName"]); if (reader["Pic"] != DBNull.Value) modelOther.Pic = Convert.ToString(reader["Pic"]); if (reader["OrganDetailId"] != DBNull.Value) modelOther.OrganDetailId = Convert.ToInt32(reader["OrganDetailId"]); if (reader["OrganDetailTitle"] != DBNull.Value) modelOther.OrganDetailTitle = Convert.ToString(reader["OrganDetailTitle"]); var model = new Course_UnitReplyDetail(); if (reader["Id"] != DBNull.Value) model.Id = Convert.ToInt32(reader["Id"]); if (reader["UnitContent"] != DBNull.Value) model.UnitContent = Convert.ToInt32(reader["UnitContent"]); if (reader["ClassId"] != DBNull.Value) model.ClassId = Convert.ToInt32(reader["ClassId"]); if (reader["Content"] != DBNull.Value) model.Content = reader["Content"].ToString(); if (reader["AccountId"] != DBNull.Value) model.AccountId = Convert.ToInt32(reader["AccountId"]); if (reader["ParentReplyId"] != DBNull.Value) model.ParentReplyId = Convert.ToInt32(reader["ParentReplyId"]); if (reader["AttList"] != DBNull.Value) model.AttList = reader["AttList"].ToString(); if (reader["Display"] != DBNull.Value) model.Display = Convert.ToBoolean(reader["Display"]); if (reader["Delflag"] != DBNull.Value) model.Delflag = Convert.ToBoolean(reader["Delflag"]); if (reader["CreateDate"] != DBNull.Value) model.CreateDate = Convert.ToDateTime(reader["CreateDate"]); modelOther.CourseUnitReplyDetail = model; }
/// <summary> /// 获取[讨论主题]下所有回复 /// </summary> /// <param name="iClassId"></param> /// <param name="iUnitContent"></param> /// <param name="iParentReplyId"></param> /// <returns></returns> public List<Course_UnitReplyDetailOther> GetListReplyOther(int iClassId, int iUnitContent, int iParentReplyId) { StringBuilder sql = new StringBuilder(); sql.AppendFormat(@" Select Member_Account.Nickname,Member_Account.Pic,Organ_Detail.Id as OrganDetailId, Organ_Detail.Title as OrganDetailTitle, Course_UnitReplyDetail.* from Course_UnitReplyDetail left join Member_Account on Course_UnitReplyDetail.AccountId=Member_Account.Id left join Organ_Detail on Member_Account.OrganId = Organ_Detail.Id where Course_UnitReplyDetail.Display = 1 AND Course_UnitReplyDetail.Delflag = 0 AND Course_UnitReplyDetail.ParentReplyId = {2} AND Course_UnitReplyDetail.ClassId = {0} AND Course_UnitReplyDetail.UnitContent = {1} Order by CreateDate asc", iClassId, iUnitContent, iParentReplyId); List<Course_UnitReplyDetailOther> list = new List<Course_UnitReplyDetailOther>(); using (IDataReader reader = MSEntLibSqlHelper.ExecuteDataReaderBySql(sql.ToString())) { while (reader.Read()) { Course_UnitReplyDetailOther model = new Course_UnitReplyDetailOther(); ConvertToModelOther(reader, model); list.Add(model); } } return list; }