fmSelFolder.aspx.cs
上传用户:autodoor
上传日期:2022-08-04
资源大小:9973k
文件大小:6k
源码类别:

.net编程

开发平台:

Others

  1. using System;
  2. using System.Data;
  3. using System.Web.UI.WebControls;
  4. using qminoa.Common; 
  5. using qminoa.DA; 
  6. using qminoa.BLL; 
  7. namespace qminoa.Webs.FM
  8. {
  9. public class fmSelFolder : qminoa.Webs.PageBase
  10. {
  11. protected static int docid;
  12. protected static int folderid;
  13. static int IsDoc=0;
  14. static int SelFolderId=0;
  15. protected System.Web.UI.WebControls.Label lblErr;
  16. protected System.Web.UI.WebControls.Label lblBfolder;
  17. protected System.Web.UI.WebControls.Label lblOpt;
  18. protected System.Web.UI.WebControls.Label lblSelID;
  19. protected System.Web.UI.WebControls.Label lblID;
  20. protected System.Web.UI.WebControls.ImageButton cmdCancel;
  21. protected System.Web.UI.WebControls.ImageButton cmdOK;
  22. protected System.Web.UI.WebControls.TextBox txtSelFolder;
  23. protected System.Web.UI.WebControls.Label Label1;
  24. protected System.Web.UI.WebControls.DataGrid dgdFolder;
  25. protected System.Web.UI.WebControls.Image imgDrive;
  26. protected System.Web.UI.WebControls.TextBox txtFolderPath;
  27. protected System.Web.UI.WebControls.Label lblAddress;
  28. protected System.Web.UI.WebControls.Image Image1;
  29. private void Page_Load(object sender, System.EventArgs e)
  30. {
  31. if(!this.IsPostBack)
  32. {
  33. this.PageBegin("文档管理",true);
  34.                 docid=Convert.ToInt32(Request.QueryString["DocId"].ToString(),10);
  35.        folderid=Convert.ToInt32(Request.QueryString["FolderId"].ToString(),10);
  36. DataView dvdata=BindTable(docid,folderid);
  37. int counts=dvdata.Count;
  38. if(counts!=0)
  39. {
  40. DataTable dt= GetDataTable(dvdata);
  41. dgdFolder.DataSource=dt;
  42. dgdFolder.DataBind();
  43. }
  44. else
  45. {
  46.     Response.Write("<script language='javascript'>alert('没有可以转移的目标文件夹!');</script>"); 
  47. }
  48. txtFolderPath.Text = GetPath(folderid);
  49.             }
  50.         }
  51. private DataView BindTable(int docid ,int folderid)
  52. {
  53. DataView dv= new DataView(); 
  54. DocTree folderdata= new DocTree(); 
  55. if(docid==0 && folderid!=0)
  56. {
  57.     dv=folderdata.GetTreeNodeFolder(0);
  58. IsDoc=0;
  59. }
  60. else if(docid!=0 && folderid==0)
  61. {
  62. dv=folderdata.GetTreeNodeFolder(0);
  63. IsDoc=1;
  64. }
  65. else if(docid!=0 && folderid!=0)
  66. {
  67. int fid = Convert.ToInt32(Session["_fm_id"].ToString());
  68. if(docid==fid && folderid!=fid)
  69. {
  70. dv=folderdata.GetTreeNodeFolder(docid);
  71. IsDoc=0;
  72. }
  73. else
  74. {
  75. dv=folderdata.GetTreeNodeFolder(folderid);
  76.                     IsDoc=1;
  77. }
  78. }
  79. return dv;
  80. }
  81. private DataTable GetDataTable(DataView dv)
  82. {
  83. DataTable dt = new DataTable("SelFolder");  
  84. DataColumnCollection d= dt.Columns; 
  85. d.Add("folderid",typeof(System.Int32)); 
  86. d.Add("fname",typeof(System.String)); 
  87. d.Add("note",typeof(System.String));
  88. d.Add("empid",typeof(System.String));
  89. string strImgPath="<img src=img/img-folder.gif border=0 alt=文件>";
  90. int recordcount = dv.Count;   
  91. for(int i=0;i<recordcount;i++)
  92. {
  93. DataRow row = dt.NewRow();
  94.     row["folderid"]=Convert.ToInt32(dv[i].Row[0].ToString(),10);
  95. row["fname"]=strImgPath+dv[i].Row[15].ToString();
  96. row["note"]=dv[i].Row[5].ToString(); 
  97. row["empid"]= (new FileA()).GetEmpName(Convert.ToInt32(dv[i].Row[9].ToString()));
  98. dt.Rows.Add(row);
  99. }
  100.     return dt;
  101. }
  102. #region Web Form Designer generated code
  103. override protected void OnInit(EventArgs e)
  104. {
  105. //
  106. // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  107. //
  108. InitializeComponent();
  109. base.OnInit(e);
  110. }
  111. /// <summary>
  112. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  113. /// 此方法的内容。
  114. /// </summary>
  115. private void InitializeComponent()
  116. {    
  117. this.dgdFolder.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgdFolder_ItemCommand);
  118. this.cmdOK.Click += new System.Web.UI.ImageClickEventHandler(this.cmdOK_Click);
  119. this.cmdCancel.Click += new System.Web.UI.ImageClickEventHandler(this.cmdCancel_Click);
  120. this.Load += new System.EventHandler(this.Page_Load);
  121. }
  122. #endregion
  123. private void dgdFolder_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  124. {
  125.             int index =Convert.ToInt32(e.Item.Cells[0].Text,10);
  126. SelFolderId=index;
  127. if(e.CommandName=="Select")
  128. {
  129.     if(index==folderid)
  130. {
  131. Response.Write("<script language='javascript'>alert('您不能选同一个文件!');</script>"); 
  132.     txtSelFolder.Text=string.Empty;  
  133. }
  134. else
  135. {
  136. txtSelFolder.Text = GetFolderName(index);
  137. }
  138.              }
  139. }
  140. private string  GetFolderName(int folderid)
  141. {
  142.     DocTree dt= new DocTree();
  143. DataView dv=dt.GetTreeNodeFolderII(folderid);
  144.     string name= dv[0].Row[15].ToString();
  145. return name;
  146. }
  147. private void cmdOK_Click(object sender, System.Web.UI.ImageClickEventArgs e)
  148. {
  149. FileA fa=new FileA();
  150. try
  151. {
  152. if(txtSelFolder.Text!=string.Empty && SelFolderId!=0)
  153. {
  154. if(IsDoc!=0)
  155. {
  156. fa.MoveDoc(docid,SelFolderId);
  157.                 }
  158. else
  159. {
  160. fa.MoveFolder(folderid,SelFolderId);
  161. }
  162. Response.Redirect("SecurityFMPage.aspx"); 
  163. }
  164. else
  165. {
  166.    Response.Write("<script language='javascript'>alert('您必须选择目标文件夹!');</script>");
  167. }
  168. }
  169. catch
  170. {
  171. Response.Write("<script language='javascript'>alert('转移文件夹出现错误,转移失败!');</script>");
  172. }
  173. }
  174. private void cmdCancel_Click(object sender, System.Web.UI.ImageClickEventArgs e)
  175. {
  176. if(IsDoc==1)
  177. {
  178. Response.Redirect("SecurityFMPage.aspx?Id="+folderid+"&fid="+docid+"&type=-2");
  179. }
  180. else
  181. {
  182.    Response.Redirect("SecurityFMPage.aspx?Id="+docid+"&fid="+folderid+"&type=-2");
  183. }
  184. }
  185. private void dgdFolder_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
  186. {
  187. ListItemType itemType = e.Item.ItemType;
  188. e.Item.Attributes["onmouseover"] = "javascript:this.style.backgroundColor='#fff7ce';cursor='hand';" ;
  189. if (itemType == ListItemType.Item )
  190. {
  191. e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor='#dedfde';";
  192. }
  193. else if( itemType == ListItemType.AlternatingItem)
  194. {
  195. e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor='#ffffff';";
  196. }
  197. }
  198. private string GetPath(int fid)
  199. {    
  200. FileA fa= new FileA();
  201. string fpath=fa.GetDocPath(fid); 
  202. return fpath;
  203. }
  204. }
  205. }