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

📄 rolepower.aspx.cs

📁 很不错的公文流转系统
💻 CS
字号:
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 System.Data .SqlClient ;
namespace IO.Manage
{
	/// <summary>
	/// RolePower 的摘要说明。
	/// </summary>
	public class RolePower : OI.PageBase
	{
	    DatabaseConnect OpDase =new DatabaseConnect ();
		string Parentid ;
		protected System.Web.UI.HtmlControls.HtmlForm Form1;
		protected System.Web.UI.WebControls.Label Lbl_Parentmodel;
		protected System.Web.UI.WebControls.DataGrid dg;
		string roleid;
		protected System.Web.UI.WebControls.Label LabelRole;
		protected System.Web.UI.WebControls.ImageButton ImageButton1;
		protected OI.DatabaseOper.DatabaseConnect Dbc=new DatabaseConnect (); 
		
		
		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			if (Session["userid"]==null)
			{
				Response.Write ("<script>alert('超时,请重新登录');top.location.href='../userpass.aspx';</script>");
				return ;
			}
			Parentid=Request.QueryString ["Parentid"];
		
			if (Parentid==null)
			{
				Parentid="0";
			}
			if (Page.IsPostBack )
			{
			}
			else  //首次执行
			{
				roleid=Request.QueryString ["roleid"];
				//roleid="20";
				ViewState["roleid"]=roleid;
				if (Parentid != "0")
				{
					FindParentName(Parentid);
				}
				DataTable dt=new DataTable (); 
				dt =CreateDataSource(Parentid);
				Displaydg(dt);
				LabelRole.Text =Dbc.GetObjectBySql ("select RoleName from Accounts_Roles where roleid="+ViewState["roleid"]).ToString ();
			}
			
			
		}
		private void  FindParentName(string parentid) 
		{ 
		
			string strsql="select modulename ,ParentModuleID, ModuleID ,description from  models where ModuleID ='" +parentid +"'";
			DataSet ds=new DataSet ();
			ds=OpDase.getBinding (strsql,"table");
			string href="<a href=\"RolePower.aspx?roleid="+ViewState["roleid"].ToString()+"&parentid="+ds.Tables[0].Rows[0]["ParentModuleID"].ToString ()+"\" title='点击返回上层'>";
			string name=ds.Tables[0].Rows[0]["modulename"].ToString ();
			if (ds.Tables[0].Rows[0]["ParentModuleID"].ToString () !="0")
			{
				Lbl_Parentmodel.Text =" -->" +href+name+"</a>    "+ Lbl_Parentmodel.Text ;
				FindParentName( ds.Tables[0].Rows[0]["ParentModuleID"].ToString ());
			}
			else
			{
				Lbl_Parentmodel.Text =href+name+"</a>    "+ Lbl_Parentmodel.Text ;
			}
         
		}
		private DataTable CreateDataSource( string Parentid)
		{
			string strsql ="select moduleid,modulename, parentmoduleid,description from models  where showmenu !=0 and  parentmoduleid ='" +Parentid +  "'   order by ModuleID";
			DataSet ds=new DataSet ();
			ds=OpDase.getBinding (strsql,"table");
			DataColumn col=new DataColumn ("modulenames",typeof(String));
			col.Expression ="'<a href=\"RolePower.aspx?roleid="+ViewState["roleid"].ToString()+"&Parentid='+moduleid+'\">'+modulename+'</a>'";
			ds.Tables[0].Columns.Add (col); 
			return ds.Tables[0];
		}
		private void Displaydg(DataTable table)
		{
			dg.DataSource =table;
			dg.DataBind ();
		}
		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.dg.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dg_ItemCreated);
			this.dg.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dg_ItemDataBound);
			this.ImageButton1.Click += new System.Web.UI.ImageClickEventHandler(this.ImageButton1_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion
		private void dg_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if (e.Item.ItemType !=ListItemType.Footer && e.Item.ItemType !=ListItemType.Header )
			{
				
				CheckBox CkboxRole=new CheckBox ();
				CkboxRole =(CheckBox)e.Item .FindControl ("CkboxRole");
				string strsql="select count(*) from account_rolepermission  where RoleID ="+ViewState["roleid"] + " and ModuleID='"+ e.Item.Cells[0].Text +"'";
				string number=Dbc.GetValueBySql(strsql); 
				if(int.Parse (number) ==0 )
				{
					CkboxRole.Checked =false;
				}
				else
				{
					CkboxRole.Checked =true;
				}  
			} 
		}
	
		private void CkboxRole_CheckedChanged(object sender,System.EventArgs e)
		{
			CheckBox CkboxRole=new CheckBox() ;
			CkboxRole =(CheckBox)sender;
			TableRow tr=new TableRow ();
           tr=(TableRow)	CkboxRole.Parent.Parent  ;
			string modelid=tr.Cells[0].Text ;
			bool power=CkboxRole.Checked ;
			Set_rolepermission(modelid,power);

		}
		private void SetPowers(string modelid,bool power)
		{
			string strsql ="select moduleid,modulename, parentmoduleid from models  where showmenu !=0 and  parentmoduleid ='" +modelid +  "'   order by ModuleID";
			
			DataSet ds=new DataSet ();
			ds=OpDase.getBinding (strsql,"table");

		}
		private void Set_rolepermission(string CurrentModelID,bool power)
		{
			string strsql="select moduleid from models where parentmoduleid='"+CurrentModelID +"'";
			DataSet ds=new DataSet ();
			ds=Dbc.getBinding (strsql,"s");
			for (int i=0;i< ds.Tables[0].Rows.Count ;i++)  //(DataRow dr in ds.Tables [0])
			{
				Set_rolepermission(ds.Tables[0].Rows[i]["moduleid"].ToString (),power);
			}
			if (power)
			{
				strsql="  insert into Account_RolePermission (RoleID,ModuleID) values ("+ ViewState["roleid"] + ",'"+CurrentModelID+"')";
			}
			else
			{
				 strsql ="delete from Account_RolePermission  where ModuleID='"+CurrentModelID +"' and RoleID="+ViewState["roleid"];
			}
			Dbc.ExecuteSQL (strsql);
		}
		private void CheckBox1_CheckedChanged(object sender, System.EventArgs e)
		{
			CheckBox cb=(CheckBox)sender ;
			Response.Write (cb.Checked.ToString () );
		}
		private void dg_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if (e.Item.ItemType !=ListItemType.Footer && e.Item.ItemType !=ListItemType.Header )
			{
				CheckBox CkboxRole=new CheckBox ();
				CkboxRole =(CheckBox)e.Item .FindControl ("CkboxRole");
				CkboxRole.CheckedChanged += new EventHandler(CkboxRole_CheckedChanged);
			}
		}

		private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
		{
		    Response.Redirect ("role.aspx");
		}
	}
}

⌨️ 快捷键说明

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