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

📄 selectpersons.aspx.cs

📁 很不错的公文流转系统
💻 CS
字号:
/**************************************************************************************
作者:蒲丰. 
创建日期:2004-2-14
修改者:
修改日期:
修改部分:
类功能: 阅办选择人员
****************************/
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using OI.DatabaseOper ;
using Microsoft.Web.UI.WebControls;
namespace OI.ReceivDocument
{
	/// <summary>
	/// selectPersons 的摘要说明。
	/// </summary>
	public class selectPersons :OI.PageBase
	{
		protected System.Web.UI.WebControls.ListBox havePerson;
		protected System.Web.UI.WebControls.ListBox SelectedPerson;
		protected System.Web.UI.WebControls.Button ButtonAdd;
		protected System.Web.UI.WebControls.Button ButtonRemove;
		protected System.Web.UI.WebControls.ImageButton ImageButton1;
		protected Microsoft.Web.UI.WebControls.TreeView TreeView_Department;
		//protected Microsoft.Web.UI.WebControls.TreeView TreeView_Department;

		private DatabaseConnect dc;
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			dc=new DatabaseConnect ();
			if (Session["userid"]==null)
			{
				Response.Write ("<script>alert('超时,请重新登录');top.location.href='../userpass.aspx';</script>");
				return ;
			}
			if(!this.IsPostBack )
			{
				try
				{
					ViewState["ReDocumentID"]=int.Parse (Request.Params["ReDocumentID"].ToString ()).ToString ();
				}
				catch
				{
					return ;
				}
				if (Session["userid"]==null)
				{
					Response.Write ("<script>alert('超时,请重新登录!');top.location.href='../../userpass.aspx';</script>");
				}
				CreatDataSource();
				havePerson_Bind();
				this.InitPage ();
			}
		}
		private void InitPage()
		{
			havePerson.SelectedIndex =-1;
			SelectedPerson.SelectedIndex =-1;		
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.TreeView_Department.SelectedIndexChange += new Microsoft.Web.UI.WebControls.SelectEventHandler(this.TreeView_Department_SelectedIndexChange);
			this.ButtonAdd.Click += new System.EventHandler(this.ButtonAdd_Click);
			this.ButtonRemove.Click += new System.EventHandler(this.ButtonRemove_Click);
			this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		private void CreatDataSource()
		{
			string sqls=" select IsStepPass,departmentid  from departments  where DepartmentID=(select DepartmentID from accounts_users where userid="+Session["userid"]+" ) order by displayorder ";
		//	object o=dc.GetObjectBySql(sqls);
		     DataTable tc=dc.getBinding (sqls,"t").Tables[0] ;
			string sql ;
			if(tc.Rows.Count  >0)
			{
				if (tc.Rows[0]["IsStepPass"].ToString ()=="True")
				{
					sql= "SELECT DepartmentId,DepartmentName,IsPublic FROM departments WHERE ParentDepartmentID=0 order by displayorder";
				}
				else
				{
					sql= "SELECT DepartmentId,DepartmentName,IsPublic FROM departments WHERE departmentid="+tc.Rows[0]["departmentid"].ToString () +" order by displayorder ";
				}
			}
			else
			{
				sql= "SELECT DepartmentId,DepartmentName,IsPublic FROM departments WHERE ParentDepartmentID=0 order by displayorder";
			}
			TreeView_Department.Nodes.Clear();
			TreeNode Node=new TreeNode();
			
			DataSet ds=new DataSet();
			ds=dc.getBinding(sql,"t");
			foreach(DataRow dr in ds.Tables["t"].Rows)
			{
				TreeNode node=new TreeNode();
				node.ID=dr["DepartmentId"].ToString();
				node.Text=dr["DepartmentName"].ToString();
				if(Convert.ToBoolean(dr["IsPublic"]))
				{
					CreatDataSource(Convert.ToInt32( dr["DepartmentId"].ToString()), ref node);
					TreeView_Department.Nodes.Add(node);

				}
				
			}
		
     

		}
		private void CreatDataSource(int parentid, ref TreeNode Node)
		{
			string sql= "SELECT DepartmentId,DepartmentName,IsPublic FROM departments WHERE ParentDepartmentID="+parentid +" order by displayorder ";
			DataSet ds=new DataSet();
			ds=dc.getBinding (sql,"t");
			foreach (DataRow dr in ds.Tables["t"].Rows)
			{
				TreeNode node=new TreeNode();
				node.ID=dr["DepartmentId"].ToString();
				node.Text=dr["DepartmentName"].ToString();
				if(Convert.ToBoolean(dr["IsPublic"]))
				{
					CreatDataSource(Convert.ToInt32( dr["DepartmentId"].ToString()), ref node);
					Node.Nodes.Add(node);
				}
			}
		}

		private void Department_SelectedIndexChanged(object sender, System.EventArgs e)
		{
		
		}

		private void LinkButton1_Click(object sender, System.EventArgs e)
		{
			int departmentID= Convert.ToInt32(TreeView_Department.GetNodeFromIndex(TreeView_Department.SelectedNodeIndex).ID);
			string sql="SELECT COUNT(UserID) AS nCount FROM Accounts_Users WHERE DepartmentID='"+departmentID+"'";
			ArrayList al1=dc.getData (sql);
			if(al1.Count >0)
			{
				if(int.Parse (al1[0].ToString ())<=0)
				{
					//					Page.RegisterStartupScript ("","<script>alert('该部门没有人员')</script>");
					//					int nItem=havePerson.Items.Count;
					//					for(int i=0;i< nItem;i++)
					//						havePerson.Items .RemoveAt (0);
					havePerson.Items .Clear ();
					return;
				}
			}
			sql="SELECT UserID,UserName FROM Accounts_Users WHERE DepartmentID='"+departmentID+"' order by displayorder";
			DataSet ds=dc.getBinding (sql,"users");			
			havePerson.DataSource =ds.Tables ["users"].DefaultView ;
			havePerson.DataTextField ="UserName";
			havePerson.DataValueField ="UserID";			
			havePerson.DataBind ();
		}

		private void ButtonAdd_Click(object sender, System.EventArgs e)
		{			
			if(havePerson.SelectedIndex <0)
			{
				Page.RegisterStartupScript ("","<script>alert('请选择要增加的人员')<script>");
				return;
			}
			/*
			DataTable dt=new DataTable ();
			DataColumn dc=new DataColumn ();
			DataRow dr;
			dc.ColumnName ="UserName";
			dt.Columns .Add (dc);
			dc=new DataColumn ();
			dc.ColumnName ="UserID";
			dt.Columns .Add (dc);*/
			foreach(ListItem li in havePerson.Items )
			{
				if(li.Selected )
				{
					/*
					dr=dt.NewRow ();
					dr["UserName"]=li.Text ;
					dr["UserID"]=li.Value ;
					dt.Rows .Add (dr);
					*/
					ListItem lItem=SelectedPerson.Items .FindByText (li.Text );
					if(lItem==null)
					{
						ListItem item=new ListItem (li.Text ,li.Value );
						SelectedPerson.Items .Add (item);
					}
					
				}
			}
			havePerson.SelectedIndex =-1;
			/*
			SelectedPerson.DataSource =dt;
			SelectedPerson.DataTextField ="UserName";
			SelectedPerson.DataValueField ="UserID";
			SelectedPerson.DataBind ();
			*/
		}

		private void ButtonRemove_Click(object sender, System.EventArgs e)
		{
						
			int nCount=0;
			foreach(ListItem li in SelectedPerson.Items )
			{
				if(li.Selected )
				{
					nCount++ ;
				}
			}
			string[] strText=new string [nCount];

			nCount=0;
			foreach(ListItem li in SelectedPerson.Items )
			{
				if(li.Selected )
				{
					strText[nCount++]=li.Text  ;
				}
			}
			for(int i=0;i<nCount;i++)
			{
				SelectedPerson.Items .Remove (SelectedPerson.Items .FindByText (strText[i]));
			}
			SelectedPerson.SelectedIndex =-1;
		}

		private void ButtonOK_Click(object sender, System.EventArgs e)
		{			
				
			
		}

		//		private void ImageButtonSearch_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		//		{
		//			int departmentID=DepartmentList.DEPT_ID ;
		//			string sql="SELECT COUNT(UserID) AS nCount FROM Accounts_Users WHERE DepartmentID='"+departmentID+"'";
		//			ArrayList al1=dc.getData (sql);
		//			if(al1.Count >0)
		//			{
		//				if(int.Parse (al1[0].ToString ())<=0)
		//				{
		//					Page.RegisterStartupScript ("","<script>alert('该部门没有人员')</script>");
		//					int nItem=havePerson.Items.Count;
		//					for(int i=0;i< nItem;i++)
		//						havePerson.Items .RemoveAt (0);
		//					return;
		//				}
		//			}
		//			sql="SELECT UserID,UserName FROM Accounts_Users WHERE DepartmentID='"+departmentID+"'";
		//			DataSet ds=dc.getBinding (sql,"users");			
		//			havePerson.DataSource =ds.Tables ["users"].DefaultView ;
		//			havePerson.DataTextField ="UserName";
		//			havePerson.DataValueField ="UserID";			
		//			havePerson.DataBind ();
		//		}

		private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
		
			
			
			if(SelectedPerson.Items .Count <1)
			{
				Page.RegisterStartupScript ("","<script>alert('右边列表框中没有人员')</script>");
				return;
			}
//			else
//			{
//				if ( SelectedPerson.Items .Count >1)
//				{
//					Page.RegisterStartupScript ("","<script>alert('一次只能有一位处理人员')</script>");
//					return;
//				}
//			}
         //   string userid=SelectedPerson.Items[0].Value ;
			try   //pf:3.1增加,校验所选用户权限
			{
				foreach ( ListItem li in SelectedPerson.Items  )
				{
						if (!OI.cs.existPoser.ExistPower (li.Value ,"未阅办")) 
				 {
					 Page.RegisterStartupScript ("","<script>alert('"+li.Text +"没有阅办公文的权限,请联系管理员');</script>" );
					 return;
				 }
				}
			}
			catch(Exception er)
			{
				Response.Write (er.Message );
				Response.End ();
			}
			try
			{   
               	string [] strsql =new string [SelectedPerson.Items .Count];
				int i=0;
				foreach ( ListItem li in SelectedPerson.Items   )
				{
					object o=dc.GetObjectBySql("select  DocumentTitle from ReceiveDocument where ReDocumentID ="+ViewState["ReDocumentID"].ToString () );
					if( System.Convert.ToInt32(Session["ldpsidbj"])==1)
					{
						strsql[i]=" insert into DocumentMitTransaction (ReDocumentID,userid,IsldID) values ("+ViewState["ReDocumentID"].ToString () +","+li.Value  +",1) ";
						//strsql[i,1]=" insert into  message (Senduserid,ReceiveUserId,messageContent,FileTable) values (" +Session["userid"] +","+li.Value  +",'" +"请你在“末阅办”中处理《"+ o.ToString ()+"》','RecordFile')";
					}
					else
					{
						strsql[i]=" insert into DocumentMitTransaction (ReDocumentID,userid,IsldID) values ("+ViewState["ReDocumentID"].ToString () +","+li.Value  + ",0) ";
						//strsql[i,1]=" insert into  message (Senduserid,ReceiveUserId,messageContent,FileTable) values (" +Session["userid"] +","+li.Value  +",'" +"请你在“末阅办”中处理《"+ o.ToString ()+"》','RecordFile')";
		
					}
					cs.Message message=new cs.Message  ();
					message.ID =int.Parse (ViewState["ReDocumentID"].ToString ());
					message.Title =o.ToString ();
					message.SendUserID =int.Parse (Session["userid"].ToString ());
					message.ReceiveUserID =int.Parse (li.Value );
					message.SendTime =System.DateTime .Now ;
					message.MessageContent ="请你在“末阅办”中处理《"+ o.ToString ()+"》";
					message.ModeName ="末阅办";
					message.DocumentPath ="../ReceivDocument/transactNo.aspx";
					message.ADD ();
					i++;
				}
             	dc.ExcuteSqls (strsql);
				dc.ExecuteSQL  (" update  message set istransact=1 where modename='正在传阅' and ReceiveUserId="+Session["userid"] +" and ID="+ViewState["ReDocumentID"]);

				//string javascript="<script>opener.Form1.Handers.value=\""+ strText +"\";opener.Form1.HandersID.value=\""+ strValue +"\";window.close();</script>";
				//Page.RegisterStartupScript ("",javascript);		
			}
			catch (Exception er)
			{
				Response.Write (er.Message );
				Response.End ();
			}
			Response.Redirect ("transmited.aspx");
		}
         
		private void TreeView_Department_SelectedIndexChange(object sender, Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e)
		{
		
            havePerson_Bind();
		}
		private void  havePerson_Bind ( )

		{
			TreeNode node = TreeView_Department.GetNodeFromIndex(TreeView_Department.SelectedNodeIndex);
			string sql="SELECT UserID,UserName FROM Accounts_Users WHERE DepartmentID="+node.ID +" order by displayorder ";
			DataSet ds=dc.getBinding (sql,"users");			
			havePerson.DataSource =ds.Tables ["users"].DefaultView ;
			havePerson.DataTextField ="UserName";
			havePerson.DataValueField ="UserID";			
			havePerson.DataBind ();
		}

			
	}
}

⌨️ 快捷键说明

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