Listview.aspx.cs
上传用户:xgw_05
上传日期:2009-12-11
资源大小:20208k
文件大小:6k
源码类别:

OA系统

开发平台:

C#

  1. using System;
  2. using System.Collections;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Web;
  7. using System.Web.SessionState;
  8. using System.Web.UI;
  9. using System.Web.UI.WebControls;
  10. using System.Web.UI.HtmlControls;
  11. using System.Data.OleDb;
  12. using UDS.Components;
  13. using System.Data.SqlClient;
  14. namespace UDS.SubModule.Query
  15. {
  16. /// <summary>
  17. /// Listview 的摘要说明。
  18. /// </summary>
  19. public class Listview : System.Web.UI.Page
  20. {
  21. protected System.Web.UI.WebControls.DataGrid dgDocList;
  22. protected string keyString;
  23. protected int Range;
  24. protected int SearchType;
  25. protected System.Web.UI.WebControls.DataGrid dgMailList;
  26. protected System.Web.UI.HtmlControls.HtmlTable tabDoc;
  27. protected System.Web.UI.HtmlControls.HtmlTable tabMail;
  28. protected string UserName;
  29. private void Page_Load(object sender, System.EventArgs e)
  30. {
  31. // 在此处放置用户代码以初始化页面
  32. keyString  = (Request.QueryString["key"]!=null)?Request.QueryString["key"].ToString():"";
  33. UserName  = Request.Cookies["Username"].Value.ToString();
  34. Range  = Int32.Parse((Request.QueryString["Range"]!=null)?Request.QueryString["Range"].ToString():"0");
  35. SearchType   = Int32.Parse((Request.QueryString["SearchType"]!=null)?Request.QueryString["SearchType"].ToString():"0");
  36. if(!IsPostBack)
  37. {
  38. BindGrid();
  39. }
  40. }
  41. #region 数据绑定至DataGrid
  42. /// <summary>
  43. /// 将某用户的邮件取出绑定至DataGrid
  44. /// </summary>
  45. protected void BindGrid() 
  46. {   
  47. Database mySQL = new Database();
  48. /*
  49.  *=========================================   
  50.  * 处理文档  
  51.  *=========================================   
  52.  */
  53. if((SearchType & 0x01)==0x01)
  54. {
  55. dgDocList.Visible = true;
  56. if((Range & 0x08) ==0x08)
  57. {
  58. FileSearch("UDS_Doc");
  59. }
  60. SqlParameter[] parameters = {
  61. mySQL.MakeInParam("@UserName",SqlDbType.VarChar,300,UserName),
  62. mySQL.MakeInParam("@KeyString",SqlDbType.VarChar,300,keyString),
  63. mySQL.MakeInParam("@SearchRange",SqlDbType.Int, 4,Range),
  64. mySQL.MakeInParam("@ViewDocRightCode",SqlDbType.Int, 4,10),
  65. mySQL.MakeInParam("@Inherit",SqlDbType.Bit ,1,0)
  66. };
  67. SqlDataReader dr; //存放人物的数据
  68. mySQL.RunProc("sp_FindDoc",parameters,out dr);
  69. DataTable dt =Tools.ConvertDataReaderToDataTable(dr);
  70. dr.Close();
  71. dgDocList.DataSource = dt.DefaultView;
  72. dgDocList.DataBind();
  73. }
  74. else
  75. {
  76. dgDocList.Visible = false;
  77. tabDoc.Visible = false;
  78. }
  79. /*
  80.  *=========================================   
  81.  * 处理邮件  
  82.  *========================================= 
  83.  */
  84. if((SearchType & 0x02)==0x02)
  85. {
  86. dgMailList.Visible = true;
  87. if((Range & 0x08) ==0x08)
  88. {
  89. FileSearch("UDS_Mail");
  90. }
  91. SqlParameter[] parameters = {
  92. mySQL.MakeInParam("@UserName",SqlDbType.VarChar,300,UserName),
  93. mySQL.MakeInParam("@KeyString",SqlDbType.VarChar,300,keyString),
  94. mySQL.MakeInParam("@SearchRange",SqlDbType.Int, 4,Range)
  95. };
  96. SqlDataReader dr; //存放人物的数据
  97. mySQL.RunProc("sp_FindMail",parameters,out dr);
  98. DataTable dt = Tools.ConvertDataReaderToDataTable(dr);
  99. dr.Close();
  100. dgMailList.DataSource = dt.DefaultView;
  101. dgMailList.DataBind();
  102. }
  103. else
  104. {
  105. tabMail.Visible = false;
  106. dgMailList.Visible = false;
  107. }
  108. #endregion
  109. private void FileSearch(string catalog)
  110. {
  111. Database mySQL = new Database();
  112. DataSet ds = new DataSet();
  113. String myConnStr = "Provider=MSIDXS; Data Source=" + catalog+ ";";
  114. String mySql = "SELECT FileName, Path, Characterization, Rank, Create, Size FROM SCOPE() WHERE CONTAINS ('" + keyString + "')> 0";
  115. OleDbConnection myConn = new OleDbConnection(myConnStr);
  116. OleDbDataAdapter myAdapter = new OleDbDataAdapter(mySql,myConn);
  117. try
  118. {
  119. myAdapter.Fill(ds,"Search");
  120. }
  121. catch (Exception ex)
  122. {
  123. UDS.Components.Error.Log(ex.ToString());
  124. Server.Transfer("../Error.aspx");
  125. }
  126. finally
  127. {
  128. myAdapter =null;
  129. myConn.Close();
  130. myConn = null;
  131. }
  132. for(int i=0;i<ds.Tables["Search"].Rows.Count;i++)
  133. {
  134. DataRow myDr;
  135. myDr = ds.Tables["Search"].Rows[i];
  136. SqlParameter[] pparameters = {
  137. mySQL.MakeInParam("@FileName",SqlDbType.VarChar,300,myDr["FileName"]),
  138. mySQL.MakeInParam("@Path",SqlDbType.VarChar,300,myDr["Path"].ToString().Replace(Server.MapPath("..\UnitiveDocument\Document").Replace("/","\").ToLower()  ,"") ),
  139. mySQL.MakeInParam("@Characterization",SqlDbType.NText ,10000,myDr["Characterization"] ),
  140. mySQL.MakeInParam("@Rank",SqlDbType.VarChar,300,myDr["Rank"]),
  141. mySQL.MakeInParam("@Create",SqlDbType.DateTime ,10,myDr["Create"]),
  142. mySQL.MakeInParam("@Size",SqlDbType.Int,4,myDr["Size"])
  143. };
  144. mySQL.RunProc("sp_AddScope",pparameters);
  145. }
  146. }
  147. #region 翻页事件
  148. public void DataGrid_PageChanged(object sender,DataGridPageChangedEventArgs e)
  149. {
  150. dgDocList.CurrentPageIndex = e.NewPageIndex;
  151. BindGrid();
  152. }
  153. #endregion
  154. public string GetUserRealName(string UserStr)
  155. {
  156. return UDS.Components.Staff.GetRealNameStrByUsernameStr(UserStr,1);
  157. }
  158. #region Web Form Designer generated code
  159. override protected void OnInit(EventArgs e)
  160. {
  161. //
  162. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  163. //
  164. InitializeComponent();
  165. base.OnInit(e);
  166. }
  167. /// <summary>
  168. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  169. /// 此方法的内容。
  170. /// </summary>
  171. private void InitializeComponent()
  172. {    
  173. this.Load += new System.EventHandler(this.Page_Load);
  174. }
  175. #endregion
  176. }
  177. }