⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 com_forumtopics.asmx.cs

📁 ASP.NET的一些开发实例,有论坛管理系统等
💻 CS
📖 第 1 页 / 共 3 页
字号:
			{
				//				drNew1["status"] = "在收信箱你没有文章未浏览!";
				drNew1["status"] = "W";
			}
			dt.Rows.Add(drNew1);
			//回复
			sqlwhere = string.Format(" select * from VIEW_TopicReply where t_author = '{0}'",accname);
			dsData = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			sqlwhere = string.Format("view_emp like '%[[]{0}]%'",accname);
			DataRow[] dr1 = dsData.Tables[0].Select(sqlwhere,"",DataViewRowState.CurrentRows);
			DataRow drNew2 = dt.NewRow();
			foreach(DataRow row in dr1)
			{
				dsData.Tables[0].Rows.Remove(row);
			}
			if(dsData.Tables[0].Rows.Count > 0)
			{
				drNew2["status"] = "你发表的文章中有"+dsData.Tables[0].Rows.Count.ToString()+"篇新回复未浏览!";
			}
			else
			{
				//				drNew2["status"] = "在你的文章中没有回复未浏览!";
				drNew2["status"] = "W";
			}
			dt.Rows.Add(drNew2);
			//工作总结回复
			sqlwhere = string.Format(" select * from VIEW_WorkPlanReply where start_emp = '{0}' and work_type='02'",accname);
			dsData = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			sqlwhere = string.Format("view_emp like '%[[]{0}]%'",accname);
			DataRow[] dr2 = dsData.Tables[0].Select(sqlwhere,"",DataViewRowState.CurrentRows);
			DataRow drNew3 = dt.NewRow();
			foreach(DataRow row in dr2)
			{
				dsData.Tables[0].Rows.Remove(row);
			}
			if(dsData.Tables[0].Rows.Count > 0)
			{
				drNew3["status"] = "在你的工作总结中有"+dsData.Tables[0].Rows.Count.ToString()+"篇回复未浏览!";
			}
			else
			{
				//				drNew3["status"] = "在你的工作总结中没有回复未浏览!";
				drNew3["status"] = "W";
			}
			dt.Rows.Add(drNew3);
			//工作计划回复
			sqlwhere = string.Format(" select * from VIEW_WorkPlanReply where start_emp = '{0}' and work_type='01'",accname);
			dsData = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			sqlwhere = string.Format("view_emp like '%[[]{0}]%'",accname);
			DataRow[] dr3 = dsData.Tables[0].Select(sqlwhere,"",DataViewRowState.CurrentRows);
			DataRow drNew4 = dt.NewRow();
			foreach(DataRow row in dr3)
			{
				dsData.Tables[0].Rows.Remove(row);
			}
			if(dsData.Tables[0].Rows.Count > 0)
			{
				drNew4["status"] = "在你的工作计划中有"+dsData.Tables[0].Rows.Count.ToString()+"篇回复未浏览!";
			}
			else
			{
				//				drNew4["status"] = "在你的工作计划中没有回复未浏览!";
				drNew4["status"] = "W";
			}
			dt.Rows.Add(drNew4);
			ds.Tables.Add(dt);
			return ds;
		}

		[WebMethod]
		public DataSet DsSearch(string[] strSearch)
		{
			DataSet ds = new DataSet();
			string sqlwhere = string.Empty;
			for(int i=0;i<strSearch.Length;i++)
			{
				switch(i)
				{
					case 0:
						if(strSearch[i].Trim() != string.Empty)
						{
							sqlwhere = string.Format("t_date >= '{0}'",strSearch[i]);
						}
						break;
					case 1:
						if(strSearch[i].Trim() != string.Empty)
						{
							if(sqlwhere.Trim() != string.Empty)
							{
								sqlwhere = string.Format("{0} and t_date <= '{1}'",sqlwhere,strSearch[i]);
							}
							else
							{
								sqlwhere = string.Format("t_date <= '{0}'",strSearch[i]);
							}							
						}
						break;
					case 2:
						if(strSearch[i].Trim() != string.Empty)
						{
							if(sqlwhere.Trim() != string.Empty)
							{
								sqlwhere = string.Format("{0} and t_subject like '%{1}%'",sqlwhere,strSearch[i]);
							}
							else
							{
								sqlwhere = string.Format("t_subject like '%{0}%'",strSearch[i]);
							}							
						}
						break;
					case 3:
						if(strSearch[i].Trim() != string.Empty)
						{
							if(sqlwhere.Trim() != string.Empty)
							{
								sqlwhere = string.Format("{0} and t_message like '%{1}%'",sqlwhere,strSearch[i]);
							}
							else
							{
								sqlwhere = string.Format("t_message like '%{0}%'",strSearch[i]);
							}						
						}
						break;
					case 4:
						if(strSearch[i].Trim() != string.Empty)
						{
							if(sqlwhere.Trim() != string.Empty)
							{
								sqlwhere = string.Format("{0} and t_author like '%{1}%'",sqlwhere,strSearch[i]);
							}
							else
							{
								sqlwhere = string.Format("t_author like '%{0}%'",strSearch[i]);
							}									
						}
						break;
				}
			}
			if(sqlwhere.Trim() != string.Empty)
			{
				sqlwhere = string.Format("select * from forum_topics where {0}",sqlwhere);
				ds=this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			else
			{
				sqlwhere = string.Format("select * from forum_topics ");
				ds=this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			return ds;
		}

		[WebMethod]
		public DataSet DsForum(string forum_id,string f_subject)
		{
			DataSet ds = new DataSet();
			string sqlwhere = string.Empty;
			if(forum_id.Trim() !=string.Empty)
			{
				sqlwhere = string.Format(" forum_forum.forum_id = '{0}'",forum_id);
			}
			if(f_subject.Trim() !=string.Empty && forum_id.Trim() == string.Empty)
			{
				sqlwhere = string.Format(" forum_forum.f_subject like '%{0}%'",f_subject);
			}
			if(sqlwhere.Trim() !=string.Empty)
			{
				sqlwhere = string.Format("SELECT ISNULL(SUM(forum_topics.t_view_count), 0) AS t_view_count,ISNULL(SUM(forum_topics.t_reply_count), 0) AS t_reply_count,forum_forum.f_subject, forum_forum.forum_id FROM forum_forum INNER JOIN forum_topics ON forum_forum.forum_id = forum_topics.forum_id WHERE ({0}) GROUP BY forum_forum.forum_id, forum_forum.f_subject",sqlwhere);
				ds = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			else
			{
				sqlwhere = string.Format("SELECT ISNULL(SUM(forum_topics.t_view_count), 0) AS t_view_count,ISNULL(SUM(forum_topics.t_reply_count), 0) AS t_reply_count,forum_forum.f_subject, forum_forum.forum_id FROM forum_forum INNER JOIN forum_topics ON forum_forum.forum_id = forum_topics.forum_id  GROUP BY forum_forum.forum_id, forum_forum.f_subject");
				ds = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			return ds;
		}

		[WebMethod]
		public DataSet DsIP(string[] strSearch)
		{
			//string[] strSearch= {"2003-02-02","2003-02-28","yansl",""};
			DataSet ds = new DataSet();
			string sqlwhere = string.Empty;
			for(int i=0;i<strSearch.Length;i++)
			{
				switch(i)
				{
					case 0:
						if(strSearch[i].Trim() != string.Empty)
						{
							sqlwhere = string.Format("whiteforum.forum_topics.t_date >= '{0}'",strSearch[i]);
						}
						break;
					case 1:
						if(strSearch[i].Trim() != string.Empty)
						{
							if(sqlwhere.Trim() != string.Empty)
							{
								sqlwhere = string.Format("{0} and whiteforum.forum_topics.t_date <= '{1}'",sqlwhere,strSearch[i]);
							}
							else
							{
								sqlwhere = string.Format("whiteforum.forum_topics.t_date <= '{0}'",strSearch[i]);
							}							
						}
						break;
					case 2:
						if(strSearch[i].Trim() != string.Empty)
						{
							//string accname = strSearch[i].Trim().Replace("[","'");
							//accname = accname.Replace("]","'");
							if(sqlwhere.Trim() != string.Empty)
							{
								//sqlwhere = string.Format("{0} and whiteforum.system_account.acc_name in ({1})",sqlwhere,accname);
								//sqlwhere = string.Format("{0} and whiteforum.system_account.acc_name like '%{1}%'",sqlwhere,strSearch[i].Trim());
								sqlwhere = string.Format("{0} and whiteforum.system_account.acc_name = '{1}'",sqlwhere,strSearch[i].Trim());
							}
							else
							{
								//sqlwhere = string.Format("whiteforum.system_account.acc_name in ({0})",accname);
								//sqlwhere = string.Format("whiteforum.system_account.acc_name like '%{0}%'",strSearch[i].Trim());
								sqlwhere = string.Format("whiteforum.system_account.acc_name = '{0}'",strSearch[i].Trim());
							}							
						}
						break;
					case 3:
						if(strSearch[i].Trim() != string.Empty)
						{
							//string accemp = strSearch[i].Trim().Replace("[","'");
							//accemp = accemp.Replace("]","'");
							if(sqlwhere.Trim() != string.Empty)
							{
								//sqlwhere = string.Format("{0} whiteforum.system_account.and acc_emp in ({1})",sqlwhere,accemp);
								sqlwhere = string.Format("{0} and whiteforum.system_account.acc_emp like '%{1}%'",sqlwhere,strSearch[i].Trim());
							}
							else
							{
								//sqlwhere = string.Format("whiteforum.system_account.acc_emp in ({0})",accemp);
								sqlwhere = string.Format("whiteforum.system_account.acc_emp like '%{0}%'",strSearch[i].Trim());
							}							
						}
						break;
				}
			}	
			if(sqlwhere.Trim() !=string.Empty)
			{
				//sqlwhere = string.Format("SELECT t_author, t_ip FROM whiteforum.forum_topics WHERE ({0}) GROUP BY t_author, t_ip",sqlwhere);
				sqlwhere = string.Format("SELECT TOP 100 PERCENT whiteforum.forum_topics.t_ip,whiteforum.system_account.acc_emp,whiteforum.system_account.acc_name FROM whiteforum.forum_topics INNER JOIN whiteforum.system_account ON whiteforum.forum_topics.t_author = whiteforum.system_account.acc_name WHERE ({0}) GROUP BY whiteforum.forum_topics.t_ip, whiteforum.forum_topics.t_author,whiteforum.system_account.acc_name, whiteforum.system_account.acc_emp ORDER BY whiteforum.system_account.acc_name",sqlwhere);
				ds = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			else
			{
				sqlwhere = string.Format("SELECT TOP 100 PERCENT whiteforum.forum_topics.t_ip,whiteforum.system_account.acc_emp,whiteforum.system_account.acc_name FROM whiteforum.forum_topics INNER JOIN whiteforum.system_account ON whiteforum.forum_topics.t_author = whiteforum.system_account.acc_name GROUP BY whiteforum.forum_topics.t_ip, whiteforum.forum_topics.t_author,whiteforum.system_account.acc_name, whiteforum.system_account.acc_emp ORDER BY whiteforum.system_account.acc_name");
				ds = this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			return ds;
		}


		[WebMethod]
		public DataSet DsTopicTop(string accname)
		{
			DataSet ds = new DataSet();
			string sqlwhere = string.Format("t_property <> '{0}' and t_author <> '{1}'","01",accname);
			if(sqlwhere.Trim() != string.Empty)
			{
				sqlwhere = string.Format("{1} where {0} order by t_property ",sqlwhere,this.COMInterface.CreateSqlFromInterface("49","dbGridMain1"));
				//sqlwhere = string.Format("select * from forum_topics where {0} order by t_property ",sqlwhere);
				ds=this.COM_BASE.CreateDataSetFromSql(sqlwhere);
			}
			if(ds.Tables[0].Rows.Count>0)
			{
				sqlwhere = string.Format("receive_emp not like '%[[]{0}]%'",accname);
				DataRow[] dr = ds.Tables[0].Select(sqlwhere,"",DataViewRowState.CurrentRows);
				foreach(DataRow row in dr)
				{
					if(row["receive_emp"].ToString() != "[ALL]")
					{
						ds.Tables[0].Rows.Remove(row);
					}					
				}								
			}
			if(ds.Tables[0].Rows.Count>0)
			{
				sqlwhere = string.Format("view_emp like '%[[]{0}]%'",accname);
				DataRow[] dr = ds.Tables[0].Select(sqlwhere,"",DataViewRowState.CurrentRows);
				foreach(DataRow row in dr)
				{
					if(row["t_property"].ToString() != "03")
					{
						ds.Tables[0].Rows.Remove(row);
					}
				}
			}
			if(ds.Tables[0].Rows.Count>0)
			{
				this.DsGetTopicIds(ref ds,accname);
				this.DsReply(ref ds,accname);
			}
			return ds;
		}
		[WebMethod]
		public DataSet DsReply(ref DataSet ds,string accname)
		{
			string topic_ids = string.Empty;
			if(ds.Tables[0].Rows.Count>0)
			{
				foreach(DataRow dr in ds.Tables[0].Rows)
				{
					if(dr["t_property"].ToString() == "03")
					{
						string topic_id = dr["topic_id"].ToString();
                        string strsql = string.Format("select reply_id from forum_reply where topic_id = '{0}' and r_author = '{1}'",topic_id,accname);
						DataSet dsReply = this.COM_BASE.CreateDataSetFromSql(strsql);
						if(dsReply.Tables[0].Rows.Count>0)
						{
							topic_ids = string.Format("'{0}',{1}",topic_id,topic_ids);
						}						
					}
				}				
			}			
			if(topic_ids.Trim() !=string.Empty)
			{
				topic_ids=topic_ids.Remove(topic_ids.Length-1,1);
				string sqlwhere = string.Format("topic_id in ({0})",topic_ids);
				DataRow[] dr = ds.Tables[0].Select(sqlwhere,null,DataViewRowState.CurrentRows);
				foreach(DataRow row in dr )
				{
					ds.Tables[0].Rows.Remove(row);
				}
			}			
			return ds;
		}

		[WebMethod]
		public DataSet DsView(ref DataSet ds,string accname)
		{
			ds.Tables[0].Columns.Add(new DataColumn("view",typeof(string)));
			if(ds.Tables[0].Rows.Count>0)
			{
				for(int i=0;i<ds.Tables[0].Rows.Count;i++)
				{
					string str = ds.Tables[0].Rows[i]["view_emp"].ToString();
					if(str.IndexOf("["+accname+"]")<0)
					{
						ds.Tables[0].Rows[i]["view"] = "0";
					}
					else
					{
						ds.Tables[0].Rows[i]["view"] = "1";
					}
				}
			}
			return ds;
			
		}

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -