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

📄 groupadmin.ascx.cs

📁 这是我编的一小软件。请等级等待指教。呵呵。ASP的
💻 CS
字号:
namespace Seaskyer.WebApp.skyNews.Pages.AdminMSC
{
	using System;
	using System.Collections;
	using System.Data;
	using System.Drawing;
	using System.Web;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;
	using Seaskyer.FSO;
	using Seaskyer.Strings;
	using Seaskyer.WebApp.Utility;

	/// <summary>
	///		GroupAdmin : 管理组。
	/// </summary>
	public class GroupAdmin : basePage
	{
		protected Panel Panel1, Panel2;
		protected DataGrid DataGrid1;
		protected Button Submit, Delete;
		protected HtmlInputButton Back;

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

			this.initPage();

			string Action = Request.QueryString["Action"];

			switch( Action )
			{
				case "ViewPower"	:
					this.BindPower();
					break;
				case "ManagePower"	:
					this.BindPower();
					break;
				default			:
					this.BindGroup();
					break;

			}

		}

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

		void initPage()
		{
			Panel1.Visible	= false;
			Panel2.Visible	= false;
			Submit.Visible	= false;
			Delete.Visible	= false;
			Back.Visible	= false;
		}


		#region 响应授权事件
		protected void Submit_OnClick(object sender, EventArgs e)
		{
			string groupid = Request.QueryString["groupid"];

			Hashtable ht = new Hashtable();

			foreach(string Name in Request.Form.Keys)
			{
				if( Name.IndexOf("power0") > 0 )
				{
					//Response.Write(Name + "<Br>");
					string[] array		= Function.SplitArray(Name, ':');

					// 权限定义对象字符串
					string powerString = array[array.Length - 1];

					//bool cdata = false;

					//if( powerString.StartsWith("_") ) cdata = true;

					string[] paramArray = Function.SplitArray(powerString, '0');
					string paramValue	= Request.Form[Name];
					string paramName	= paramArray[2];

					//if( !cdata )
					//{
					//	paramName = "@" + paramName;
					//}

					//Response.Write("Path:" + paramArray[1] + ", Action:" + paramArray[2] + ", Value:" + Name + "<br>");

					string Path		= paramArray[1].Replace("_", "/") + ".ascx";
					string Action	= paramName + ":" + paramValue;

					//if( !dt.Columns.Contains(paramArray[2]) ) dt.Columns.Add(paramArray[2]);

					if( !ht.Contains(Path) )
					{
						ht.Add(Path, Action);
					}
					else
					{
						ht[Path] += "§" + Action;
					}

				}
			}

			DataTable dt = new DataTable();
			DataRow dr;

			foreach(string Name in ht.Keys)
			{
				dr = dt.NewRow();

				if( !dt.Columns.Contains("@Path") ) dt.Columns.Add("@Path");

				dr["@Path"] = Name; 

				//Response.Write("Name: " + Name + ", Value: " + ht[Name] + "<br>");

				string[] array = Function.SplitArray(ht[Name].ToString(), '§');
				for( int i = 0; i < array.Length; i++ )
				{
					string[] param = Function.SplitArray(array[i], ':');

					if( !dt.Columns.Contains(param[0]) ) dt.Columns.Add(param[0]);

					dr[param[0]] = param[1];
				}

				dt.Rows.Add(dr);
			}

//			user.userPowerFilePath = Function.GetRealPath(user.GetPathValue("PowerInfos")) + Request.QueryString["groupid"] + ".xml";
//
//
//			try
//			{
//				user.CreatePowerXml(dt);
//			}
//			catch{}
			// 将数据序列化之后存入数据库中
			byte[] buffer	= FormatterHelper.Serialize(dt);
			dp.CommandText	= "UPDATE [UserGroup] SET GroupPower = @GroupPower WHERE GroupID = @GroupID";
			dp.Parameter.Add("GroupPower",	new Seaskyer.AdoProvider.DataBuilder(buffer, SqlDbType.Image));
			dp.Parameter.Add("GroupID",		groupid);

			if( dp.NonQuerySQL() == 1 )
			{
				user.MessageShow("为授权组 “" + Request.QueryString["groupname"] + "” 成功!", Page);
			}
			else
			{
			}
		}
		#endregion

		#region 响应删除事件
		protected void Delete_OnClick(object sender, EventArgs e)
		{
			if( Object.Equals(Request.Form["chk"], null) || Object.Equals(Request.Form["chk"], "") )
			{
				Response.Write("<script>alert('请选择您要删除的组(可多选)。');history.back();</" + "script>");
				Response.End();
			}

			string[] idArray = Function.SplitArray(Request.Form["chk"], ',');

			for( int i = 0; i < idArray.Length; i++ )
			{
				//user.deleteGroupInfo(idArray[i]);
			}

			this.BindGroup();
		}
		#endregion

		#region 初始化DataGrid中子控件的属性
		protected void DataGrid1_ItemCreated(object sender, DataGridItemEventArgs e)
		{
			if(e.Item.ItemIndex >= 0)
			{
				e.Item.Attributes.Add("onmouseover","this.className='tdbg-dark';");
				e.Item.Attributes.Add("onmouseout","this.className='tdbg';");
			}

			switch(e.Item.ItemType)
			{
				case ListItemType.Item				:
				case ListItemType.AlternatingItem	:
				case ListItemType.EditItem			:
					break;
			}

		}
		#endregion




		#region 数据绑定
		void BindGroup()
		{
			Panel1.Visible	= true;
			Delete.Visible	= true;

			dp.CommandText = "SELECT * FROM [UserGroup] ORDER BY GroupID ASC";
			DataTable dt	= dp.DataTableSQL();

			DataGrid1.DataSource = dt.DefaultView;
			DataGrid1.DataBind();

			dt.Dispose();
		}

		void BindPower()
		{
			Panel2.Visible	= true;
			Submit.Visible	= true;
			Back.Visible	= true;

			Back.Attributes.Add("onclick", "location.href='/skyNews/Admin/GroupAdmin.aspx';");

			#region 从权限模板中加载权限选项
			

			#endregion

		}
		#endregion




	}
}

⌨️ 快捷键说明

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