authoritymanage.aspx.cs
来自「计算机学院网站及管理系统」· CS 代码 · 共 315 行
CS
315 行
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace ComputerWeb
{
/// <summary>
/// Summary description for ManageQualification.
/// </summary>
public class ManageQualification : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DropDownList RoleList;
protected System.Web.UI.WebControls.ListBox TabList;
protected System.Web.UI.WebControls.Button AddAllTab;
protected System.Web.UI.WebControls.Button AddTab;
protected System.Web.UI.WebControls.Button DeleteAllTab;
protected System.Web.UI.WebControls.Button DeleteTab;
protected System.Web.UI.WebControls.ListBox RoleTabList;
protected System.Web.UI.WebControls.Button SureBtn;
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsPostBack)
{
BindRoleData();
BindTabData();
if(RoleList.SelectedIndex > -1)
{
BindRoleTabData(Int32.Parse(RoleList.SelectedValue));
}
}
}
private void BindRoleData()
{
RoleList.Items.Clear();
RoleDB role = new RoleDB();
SqlDataReader recr = role.GetRoles();
RoleList.DataSource = recr;
RoleList.DataTextField = "RoleName";
RoleList.DataValueField = "RoleID";
RoleList.DataBind();
recr.Close();
}
private void BindTabData()
{
TabList.Items.Clear();
TabDB tab = new TabDB();
SqlDataReader rect = tab.GetTabs();
TabList.DataSource = rect;
TabList.DataTextField = "TabName";
TabList.DataValueField = "TabID";
TabList.DataBind();
rect.Close();
}
private void BindRoleTabData(int nRoleID)
{
RoleTabList.Items.Clear();
RoleTabDB roleTab = new RoleTabDB();
SqlDataReader recrT = roleTab.GetTabByRole(nRoleID);
RoleTabList.DataSource = recrT;
RoleTabList.DataTextField = "TabName";
RoleTabList.DataValueField = "TabID";
RoleTabList.DataBind();
recrT.Close();
}
private void RoleList_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(RoleList.SelectedIndex > -1)
{
//绑定当前用户拥有权限的页表
BindRoleTabData(Int32.Parse(RoleList.SelectedValue));
}
else
{
Response.Write("<script>alert(\"请选择角色!\")</script>");
}
}
private void AddDeleteTab_Click(object sender, System.EventArgs e)
{
String commandName = ((Button)sender).CommandName;
switch(commandName)
{
case "addall":
{
AddAll();
break;
}
case "add":
{
Add();
break;
}
case "deleteall":
{
DeleteAll();
break;
}
case "delete":
{
Delete();
break;
}
default:
{
break;
}
}
}
/// <summary>
/// 添加所有的管理页表
/// </summary>
private void AddAll()
{
RoleTabList.Items.Clear();
for(int i = 0; i< RoleTabList.Items.Count; i++)
{
if(IsExistTab(RoleTabList.Items[i].Text) == false)
{
RoleTabList.Items.Add(new ListItem(RoleTabList.Items[i].Text,RoleTabList.Items[i].Value));
}
}
}
/// <summary>
/// 添加一个管理页表
/// </summary>
private void Add()
{
if(RoleTabList.SelectedIndex > -1)
{
if(IsExistTab(RoleTabList.Items[RoleTabList.SelectedIndex].Text) == false)
{
RoleTabList.Items.Add(new ListItem(RoleTabList.Items[RoleTabList.SelectedIndex].Text,
RoleTabList.Items[RoleTabList.SelectedIndex].Value));
}
else
{
Response.Write("<script>alert(\"你选择添加的页表已经存在!\")</script>");
}
}
else
{
Response.Write("<script>alert(\"请选择要添加的页表!\")</script>");
}
}
/// <summary>
/// 删除所有管理的页表
/// </summary>
private void DeleteAll()
{
RoleTabList.Items.Clear();
}
/// <summary>
/// 删除一个管理的页表
/// </summary>
private void Delete()
{
if(RoleTabList.SelectedIndex > -1)
{
RoleTabList.Items.RemoveAt(RoleTabList.SelectedIndex);
}
else
{
Response.Write("<script>alert(\"请选择要删除的页表!\")</script>");
}
}
/// <summary>
/// 判定添加的页表是否在用户已经管理的页表内
/// 如果包含:返回 True;
/// 否则返回 False;
/// </summary>
private bool IsExistTab(String sTabName)
{
bool isExist = false;
if(RoleTabList.Items.Count > 0)
{
for(int i = 0; i < RoleTabList.Items.Count; i++)
{
if(sTabName == RoleTabList.Items[i].Text)
{
isExist = true;
break;
}
}
}
else
{
isExist = false;
}
return(isExist);
}
/// <summary>
/// 提交,更新数据库
/// </summary>
private void SureBtn_Click(object sender, System.EventArgs e)
{
RoleTabDB roleTab = new RoleTabDB();
if(RoleTabList.Items.Count > 0)
{
try
{
roleTab.DeleteRoleTab(Int32.Parse(RoleList.SelectedValue));
}
catch(Exception ex)
{
string sRawURL = Request.RawUrl;
if(sRawURL.IndexOf("?") > -1)
{
sRawURL = sRawURL.Substring(0,sRawURL.IndexOf("?"));
}
Response.Redirect("~/Admin/AdminDenid.aspx?ErrorURL=" + sRawURL + "&ErrorInfo=" + ex.Message.Replace("\n","<br>"));
}
try
{
for(int i = 0; i < RoleTabList.Items.Count; i++)
{
roleTab.AddRoleTab(Int32.Parse(RoleList.SelectedValue),Int32.Parse(RoleTabList.Items[i].Value));
}
}
catch(Exception ex)
{
string sRawURL = Request.RawUrl;
if(sRawURL.IndexOf("?") > -1)
{
sRawURL = sRawURL.Substring(0,sRawURL.IndexOf("?"));
}
Response.Redirect("~/Admin/AdminDenid.aspx?ErrorURL=" + sRawURL + "&ErrorInfo=" + ex.Message.Replace("\n","<br>"));
}
}
else
{
//当用户列表的管理页表为空时,直接删除用户管理的页表
try
{
roleTab.DeleteRoleTab(Int32.Parse(RoleList.SelectedValue));
}
catch(Exception ex)
{
string sRawURL = Request.RawUrl;
if(sRawURL.IndexOf("?") > -1)
{
sRawURL = sRawURL.Substring(0,sRawURL.IndexOf("?"));
}
Response.Redirect("~/Admin/AdminDenid.aspx?ErrorURL=" + sRawURL + "&ErrorInfo=" + ex.Message.Replace("\n","<br>"));
}
Response.Write("<script>alert(\"拥有权限的页表为空!\")</script>");
}
Response.Write ("<script>alert(\"权限修改成功!\");</script>");
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.RoleList.SelectedIndexChanged += new System.EventHandler(this.RoleList_SelectedIndexChanged);
this.AddAllTab.Click += new System.EventHandler(this.AddDeleteTab_Click);
this.AddTab.Click += new System.EventHandler(this.AddDeleteTab_Click);
this.DeleteAllTab.Click += new System.EventHandler(this.AddDeleteTab_Click);
this.DeleteTab.Click += new System.EventHandler(this.AddDeleteTab_Click);
this.SureBtn.Click += new System.EventHandler(this.SureBtn_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?