protected void Page_Load(object sender, EventArgs e) { int threadID = _Request.Get <int>("threadID", Method.Get, 0); if (threadID < 1) { ShowError(new InvalidParamError("threadID").Message); } thread = PostBOV5.Instance.GetThread(threadID); if (thread == null) { ShowError("该主题不存在或者已被删除!"); } ForumPermissionSetNode permission = AllSettings.Current.ForumPermissionSet.Nodes.GetPermission(thread.ForumID); if (thread.PostUserID != MyUserID && (!permission.Can(My, ForumPermissionSetNode.Action.AlwaysViewContents))) { if (!thread.IsBuyed(My)) { ShowError("您还没有购买此主题,不能查看购买记录!"); } } TradePoint = ForumPointAction.Instance.GetUserPoint(thread.PostUserID, ForumPointValueType.SellThread, thread.ForumID); int pageNumber = _Request.Get <int>("page", Method.Get, 1); ExchangeList = PostBOV5.Instance.GetThreadExchanges(threadID, pageNumber, pageSize, out totalCount, out totalMoney); WaitForFillSimpleUsers <ThreadExchange>(ExchangeList); SetPager("list", null, pageNumber, pageSize, totalCount); }
protected void Page_Load(object sender, EventArgs e) { int threadID = _Request.Get<int>("threadID", Method.Get, 0); if (threadID < 1) ShowError(new InvalidParamError("threadID").Message); thread = PostBOV5.Instance.GetThread(threadID); if (thread == null) ShowError("该主题不存在或者已被删除!"); ForumPermissionSetNode permission = AllSettings.Current.ForumPermissionSet.Nodes.GetPermission(thread.ForumID); if (thread.PostUserID != MyUserID && (!permission.Can(My, ForumPermissionSetNode.Action.AlwaysViewContents))) { if (!thread.IsBuyed(My)) { ShowError("您还没有购买此主题,不能查看购买记录!"); } } TradePoint = ForumPointAction.Instance.GetUserPoint(thread.PostUserID, ForumPointValueType.SellThread, thread.ForumID); int pageNumber = _Request.Get<int>("page",Method.Get,1); ExchangeList = PostBOV5.Instance.GetThreadExchanges(threadID, pageNumber, pageSize, out totalCount, out totalMoney); WaitForFillSimpleUsers<ThreadExchange>(ExchangeList); SetPager("list", null, pageNumber, pageSize, totalCount); }
public override ThreadExchangeCollection GetThreadExchanges(int threadID, int pageNumber, int pageSize, out int totalCount, out int totalSellMoney) { totalCount = 0; totalSellMoney = 0; using (SqlQuery query = new SqlQuery()) { query.Pager.IsDesc = true; query.Pager.ResultFields = "*"; query.Pager.SortField = "[CreateDate]"; query.Pager.PrimaryKey = "[UserID]"; query.Pager.PageNumber = pageNumber; query.Pager.PageSize = pageSize; //query.Pager.TotalRecords = totalThreads; query.Pager.SelectCount = true; query.Pager.TableName = "[bx_ThreadExchanges]"; query.Pager.Condition = " [ThreadID] = @ThreadID "; query.CreateParameter<int>("@ThreadID", threadID, SqlDbType.Int); query.Pager.AfterExecute = "SELECT SUM(Price) FROM bx_ThreadExchanges WITH (NOLOCK) WHERE [ThreadID] = @ThreadID;"; ThreadExchangeCollection exchanges; using (XSqlDataReader reader = query.ExecuteReader()) { exchanges = new ThreadExchangeCollection(reader); if (reader.NextResult()) { while (reader.Read()) { totalCount = reader.Get<int>(0); } } if (reader.NextResult()) { while (reader.Read()) { totalSellMoney = reader.Get<int>(0); } } } return exchanges; } }