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

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 UDS.Components;
  12. using System.Data.SqlClient;
  13. namespace UDS.SubModule.UnitiveDocument.Approve
  14. {
  15. /// <summary>
  16. /// Listview 的摘要说明。
  17. /// </summary>
  18. public class Listview : System.Web.UI.Page
  19. {
  20. protected System.Web.UI.WebControls.DataGrid dgMyApprove;
  21. protected System.Web.UI.WebControls.Panel PanFunction;
  22. protected System.Web.UI.WebControls.Button btnApproveDocument;
  23. protected System.Web.UI.WebControls.Button btnThowAwayDocument;
  24. private void Page_Load(object sender, System.EventArgs e)
  25. {
  26. // 在此处放置用户代码以初始化页面
  27. if(!Page.IsPostBack)
  28. {
  29. ViewState["SortField"] = "DocAddedDate";
  30. ViewState["SortDirect"] = "ASC";
  31. Bangding();
  32. }
  33. }
  34. #region 翻页事件
  35. public void DataGrid_PageChanged(object sender,DataGridPageChangedEventArgs e)
  36. {
  37. dgMyApprove.CurrentPageIndex = e.NewPageIndex;
  38. Bangding();
  39. }
  40. #endregion
  41. #region 绑定DBGRID
  42. private void Bangding()
  43. {
  44. SqlDataReader dr; //存放人物的数据
  45. Database mySQL = new Database();
  46. String UserName;
  47. UserName = Request.Cookies["UserName"].Value.ToString();
  48. SqlParameter[] parameters = {
  49. mySQL.MakeInParam("@UserName",SqlDbType.VarChar,255,UserName),
  50. mySQL.MakeInParam("@RightCode",SqlDbType.Int, 4,2)
  51. };
  52. mySQL.RunProc("sp_GetMyApproved",parameters,out dr);
  53. DataTable dt =Tools.ConvertDataReaderToDataTable(dr);
  54. // //在DataTable的末尾加上空行,使得DataGrid固定行数
  55. // int iBlankRows = dgMyApprove.PageSize - (dt.Rows.Count % dgMyApprove.PageSize);
  56. //
  57. // for (int i = 0; i < iBlankRows; i++)
  58. // {
  59. // dt.Rows.Add(dt.NewRow()) ;
  60. // }
  61. dgMyApprove.DataSource = dt.DefaultView;
  62. dgMyApprove.DataBind();
  63. //对于空纪录不显示checkbox
  64. // if(dgMyApprove.CurrentPageIndex  == dgMyApprove.PageCount -1 )
  65. // {
  66. // for(int i= (dgMyApprove.PageSize - iBlankRows)  ;i<dgMyApprove.Items.Count;i++)
  67. // {
  68. // dgMyApprove.Items[i].FindControl("DocID").Visible = false;
  69. // }
  70. // }
  71. btnThowAwayDocument.Attributes ["onclick"]="javascript:return confirm('您确认要丢弃这些文档吗?');";
  72. btnApproveDocument.Attributes ["onclick"]="javascript:return confirm('您确认要批阅这些文档吗?');";
  73. }
  74. #endregion
  75. #region 将数据排序
  76. /// <summary>
  77. /// 将信件按照指定字段进行排序
  78. /// </summary>
  79. public void DataGrid_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
  80. {
  81. if(ViewState["SortField"].ToString() == e.SortExpression)
  82. {
  83. ViewState["SortDirect"] = (ViewState["SortDirect"].ToString()=="ASC")?"DESC":"ASC";
  84. }
  85. else
  86. {
  87. ViewState["SortField"] = e.SortExpression;
  88. ViewState["SortDirect"] = "ASC";
  89. }
  90. foreach(DataGridColumn col in  dgMyApprove.Columns)
  91. {
  92. if(col.SortExpression.ToString()==ViewState["SortField"].ToString())
  93. {
  94. // if(ViewState["SortDirect"].ToString() == "ASC")
  95. // {
  96. // col.HeaderText +="<img src='../../../images/asc.gif' border=0 />";
  97. // }
  98. // else
  99. // col.HeaderText +="<img src='../../../images/desc.gif' border=0 />";
  100. }
  101. }
  102. Bangding();
  103. }
  104. #endregion
  105. #region Web Form Designer generated code
  106. override protected void OnInit(EventArgs e)
  107. {
  108. //
  109. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  110. //
  111. InitializeComponent();
  112. base.OnInit(e);
  113. }
  114. /// <summary>
  115. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  116. /// 此方法的内容。
  117. /// </summary>
  118. private void InitializeComponent()
  119. {    
  120. this.btnApproveDocument.Click += new System.EventHandler(this.btnApproveDocument_Click);
  121. this.btnThowAwayDocument.Click += new System.EventHandler(this.btnThowAwayDocument_Click);
  122. this.Load += new System.EventHandler(this.Page_Load);
  123. }
  124. #endregion
  125. public string GetRealNameStr(string Username)
  126. {
  127. if(Username!="")
  128. return UDS.Components.Staff.GetRealNameByUsername(Username);
  129. else
  130. return "";
  131. }
  132. private void dgMyApprove_SelectedIndexChanged(object sender, System.EventArgs e)
  133. {
  134. }
  135. private void lbApproveDocument_Click(object sender, System.EventArgs e)
  136. {
  137. }
  138. private void lbThowAwayDocument_Click(object sender, System.EventArgs e)
  139. {
  140. }
  141. private string GetSelectedItemID(string controlID)
  142. {
  143. String selectedID;
  144. selectedID = "";
  145. //遍历DataGrid获得checked的ID
  146. foreach (DataGridItem item in dgMyApprove.Items)
  147. {
  148. if(((CheckBox)item.FindControl(controlID)).Checked==true )
  149. selectedID += dgMyApprove.DataKeys[item.ItemIndex] + ",";
  150. }
  151. if(selectedID.Length>0)
  152. selectedID=selectedID.Substring(0,selectedID.Length-1);
  153. return selectedID;
  154. }
  155. private void btnApproveDocument_Click(object sender, System.EventArgs e)
  156. {
  157. String strIDs=this.GetSelectedItemID("DocID");
  158. if(strIDs=="")
  159. Response.Write("<script language='javascript'>window.alert('请选择要批阅的文档!');</script>");
  160. else
  161. {
  162. Database mySQL = new Database();
  163. String UserName;
  164. UserName = Request.Cookies["UserName"].Value.ToString();
  165. SqlParameter[] parameters = {
  166. mySQL.MakeInParam("@DocIDs",SqlDbType.VarChar,300,strIDs),
  167. mySQL.MakeInParam("@Approver",SqlDbType.VarChar,300,UserName)
  168. };
  169. if(mySQL.RunProc("sp_ApproveDocument",parameters)>0)
  170. {
  171. Response.Write("<script language='javascript'>window.alert('审批文件成功!');</script>");
  172. Bangding();
  173. }
  174. else
  175. Response.Write("<script language='javascript'>window.alert('审批文件成功!');</script>");
  176. }
  177. }
  178. private void btnThowAwayDocument_Click(object sender, System.EventArgs e)
  179. {
  180. String strIDs=this.GetSelectedItemID("DocID");
  181. if(strIDs=="")
  182. Response.Write("<script language='javascript'>window.alert('请选择要丢弃的文档!');</script>");
  183. else
  184. {
  185. Database mySQL = new Database();
  186. SqlParameter[] parameters = {
  187. mySQL.MakeInParam("@DocIDs",SqlDbType.VarChar,3000,strIDs),
  188. mySQL.MakeInParam("@DeleteType",SqlDbType.Bit ,1,0)
  189. };
  190. if(mySQL.RunProc("sp_DeleteDocument",parameters)>0)
  191. {
  192. Response.Write("<script language='javascript'>window.alert('丢弃文件成功!');</script>");
  193. Bangding();
  194. }
  195. else
  196. Response.Write("<script language='javascript'>window.alert('丢弃文件失败!');</script>");
  197. }
  198. }
  199. }
  200. }