- using System;
- using System.Data;
- using System.Drawing;
- using System.Web;
- using System.Web.UI.WebControls;
- using System.Web.UI.HtmlControls;
- using System.Windows.Forms;
- //引用数据库访问层。
- using qminoa.DA;
- namespace qminoa.Webs.sysSecurity.module
- {
- /// <summary>
- /// RolesModule 的摘要说明。
- /// 本页面为一个用户控件,作为SecurityRoles.aspx页面的一部分来显示。
- /// 本模块主要用来显示系统管理中的所有角色信息,可以查看角色的详细信息,添加和删除角色信息。
- /// 模块主要由一个DataList控件和一个LinkButton组成。
- /// </summary>
- public abstract class RolesModule : qminoa.Webs.UCBase
- {
- protected System.Web.UI.WebControls.LinkButton AddRoleBtn;
- protected System.Web.UI.WebControls.TextBox RoleName;
- protected System.Web.UI.WebControls.TextBox RoleDescription;
- protected System.Web.UI.WebControls.Label lblErr;
- protected System.Web.UI.WebControls.DataList RolesList;
- private void Page_Load(object sender, System.EventArgs e)
- {
- // this.PageBegin("角色管理",true);
- if (Page.IsPostBack == false)
- { //当第一次调用页面时绑定数据库数据。
- BindData();
- }
- }
- //从数据库中取得所有的模块信息数据,并显示在页面上。
- private void BindData()
- { //引用数据库访问层中的系统管理类。
- AdminDB admin = new AdminDB();
- //用数据库信息填充RolesList模块信息。
- RolesList.DataSource = admin.GetAllRoles();
- RolesList.DataBind();
- }
- // RolesList中的ItemCommand事件函数,用来完成各元素中的按钮事件。
- private void RolesList_ItemCommand(object sender, DataListCommandEventArgs e)
- {
- //引用数据库访问层中的系统管理类。
- AdminDB admin = new AdminDB();
- //取得单击按钮在RolesList控件中的主键值,取得角色号。
- int RoleID = (int) RolesList.DataKeys[e.Item.ItemIndex];
- //取得单击按钮在RolesList控件中的Label控件lbRoleName中的内容,取得角色名。
- String RoleName=((System.Web.UI.WebControls.Label)e.Item.FindControl("lbRoleName")).Text;
- String RoleDescription=((System.Web.UI.WebControls.Label)e.Item.FindControl("lbRoleDescription")).Text;
- //判断事件的命令类型。
- if (e.CommandName == "edit")
- { //转到查看角色详细信息页面。
- Response.Redirect("RolesFuncUsers.aspx?roleid=" +RoleID,false);
- }
- else if (e.CommandName == "delete")
- {
- //删除角色信息。
- if(admin.DeleteFuncRoleUser(RoleID,"role"))
- {
- Response.Write("<script language=javascript>");
- Response.Write("window.alert('");
- Response.Write("删除成功!");
- Response.Write("');");
- Response.Write("</script>");
- }
- else
- {
- Response.Write("<script language=javascript>");
- Response.Write("window.alert('");
- Response.Write("数据库中存在此项相关索引,删除失败!");
- Response.Write("');");
- Response.Write("</script>");
- }
- //重新绑定页面数据。
- BindData();
- }
- }
- #region Web Form Designer generated code
- override protected void OnInit(EventArgs e)
- {
- //
- // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
- //
- InitializeComponent();
- base.OnInit(e);
- }
- /// 设计器支持所需的方法 - 不要使用
- /// 代码编辑器修改此方法的内容。
- /// </summary>
- private void InitializeComponent()
- {
- this.AddRoleBtn.Click += new System.EventHandler(this.AddRoleBtn_Click);
- this.RolesList.ItemCommand += new System.Web.UI.WebControls.DataListCommandEventHandler(this.RolesList_ItemCommand);
- this.RolesList.ItemDataBound += new System.Web.UI.WebControls.DataListItemEventHandler(this.OnAttachScript);
- this.Load += new System.EventHandler(this.Page_Load);
- }
- #endregion
- private void OnAttachScript (object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
- {
- if (e.Item.ItemType == ListItemType.Item ||
- e.Item.ItemType == ListItemType.AlternatingItem)
- {
- ImageButton button = (ImageButton) e.Item.FindControl("Imagebutton2");
- button.Attributes.Add ("onclick",
- "return confirm ("确定要删除此项记录吗?");");
- }
- }
- //添加角色信息按钮事件函数。
- private void AddRoleBtn_Click(object sender, System.EventArgs e)
- {
- if(RoleName.Text.ToString()!="")
- {
- bool result = (new AdminDB()).InsertRoleInfo(RoleName.Text.ToString(),RoleDescription.Text.ToString());
- BindData();
- RoleName.Text = "";
- RoleDescription.Text = "";
- }
- }
- }
- }