/// <summary> /// 获取模块权限列表 /// </summary> protected void BindModules() { if (TID.Text != "") { BLL.BASE_MODULE Mbll = new BLL.BASE_MODULE(); DataSet ds = Mbll.GetModuleList2(TID.Text); ModuleView.DataSource = ds; ModuleView.DataBind(); if (ds.Tables[0].Rows.Count == 0) { btn_AllSave.Visible = false; } else { btn_AllSave.Visible = true; } } else { btn_AllSave.Visible = false; ModuleView.DataSource = null; ModuleView.DataBind(); } }
/// <summary> /// 获取模块权限列表 /// </summary> protected void BindModules() { if (Rid.Text != "") { BLL.BASE_MODULE Mbll = new BLL.BASE_MODULE(); DataSet ds = Mbll.GetModuleList2(ModuleTypeList.SelectedValue); ModuleView.DataSource = ds; ModuleView.DataBind(); if (ds.Tables[0].Rows.Count == 0) { btn_AllSave.Visible = false; } else { if (Code.UserHandle.ValidationHandle(Code.Tag.Grant)) { btn_AllSave.Visible = true; } else { btn_AllSave.Visible = false; } } } else { btn_AllSave.Visible = false; ModuleView.DataSource = null; ModuleView.DataBind(); } }
protected void LoadNode(TreeNodeCollection node, string MtID) { DataView dvList = new DataView(ModuleTable); dvList.RowFilter = "ModuleTypeSuperiorID=" + MtID; //过滤父节点 TreeNode nodeTemp; foreach (DataRowView dv in dvList) { nodeTemp = new TreeNode(); nodeTemp.Value = dv["ModuleTypeID"].ToString() + ",0"; nodeTemp.Text = dv["ModuleTypeName"].ToString(); //节点名称 nodeTemp.NavigateUrl = "~/admin/ModulesInfoPage.aspx?id=" + dv["ModuleTypeID"].ToString() + "&type=0"; //节点链接地址 nodeTemp.Target = "ContentPanel"; nodeTemp.ImageUrl = "~/images/treeico/open.gif"; node.Add(nodeTemp); //加入节点 this.LoadNode(nodeTemp.ChildNodes, nodeTemp.Value.Split(',')[0]); //递归 //增加子模块分类 BLL.BASE_MODULE bll = new BLL.BASE_MODULE(); DataSet Module = bll.GetModuleList("ModuleTypeID=" + dv["ModuleTypeID"].ToString()); foreach (DataRow child_dr in Module.Tables[0].Rows) { TreeNode ChildNode = new TreeNode(child_dr["ModuleName"].ToString()); ChildNode.Value = child_dr["ModuleID"].ToString() + ",1"; ChildNode.Expanded = false; ChildNode.NavigateUrl = "~/admin/ModulesInfoPage.aspx?id=" + child_dr["ModuleID"].ToString() + "&type=1"; //节点链接地址 ChildNode.Target = "ContentPanel"; ChildNode.ImageUrl = "~/images/treeico/folder.gif"; nodeTemp.ChildNodes.Add(ChildNode); } } }
/// <summary> /// 绑定分组数据 /// </summary> protected void BindModuleType() { BLL.BASE_MODULE MTbll = new BLL.BASE_MODULE(); DataSet ds = MTbll.GetModuleTypeList(""); ModuleTypeView.DataSource = ds; ModuleTypeView.DataBind(); }
//初始化模块菜单 protected void initTree() { BLL.BASE_MODULE bll = new BLL.BASE_MODULE(); TreeNode node = new TreeNode(); ModuleTable = bll.GetModuleTypeList("").Tables[0]; //取得所有数据得到DataTable LoadNode(Treeview1.Nodes[0].ChildNodes, "0"); //建立节点 }
/// <summary> /// 加载分类 /// </summary> /// <param name="MtID">分类上级ID</param> /// <param name="Depth">分类级别深度</param> /// <param name="flag">指定分类组件</param> protected void BindModuleType(string MtID, int Depth) { SmartPoms.BLL.BASE_MODULE MTbll = new BLL.BASE_MODULE(); DataView dvList = new DataView(MTbll.GetModuleTypeList("").Tables[0]); dvList.RowFilter = "ModuleTypeSuperiorID=" + MtID; //过滤父节点 foreach (DataRowView dv in dvList) { string depth = string.Empty; for (int i = 0; i < Depth; i++) { depth = depth + "-"; } ModuleTypeList.Items.Add(new ListItem(depth + dv["ModuleTypeName"].ToString(), dv["ModuleTypeID"].ToString())); BindModuleType(dv["ModuleTypeID"].ToString(), int.Parse(dv["ModuleTypeDepth"].ToString()) + 1); //递归 } }
/// <summary> /// 模块分类数据绑定 /// </summary> protected void ModuleView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { BLL.BASE_AUTHORITYDIR AD = new BLL.BASE_AUTHORITYDIR(); BLL.BASE_MODULE Modulebll = new BLL.BASE_MODULE(); BLL.BASE_ROLE Rolebll = new BLL.BASE_ROLE(); CheckBoxList AuthorityList = (CheckBoxList)e.Row.FindControl("AuthorityList"); Label lab_ID = (Label)e.Row.FindControl("lab_ID"); Label lab_Verify = (Label)e.Row.FindControl("lab_Verify"); DataSet ds = AD.GetAuthorityList("", "order by AuthorityOrder asc"); DataSet MALDS = Modulebll.GetAuthorityList(int.Parse(lab_ID.Text)); DataSet RALDS = Rolebll.GetRoleAuthorityList(int.Parse(Rid.Text), int.Parse(lab_ID.Text)); int n = ds.Tables[0].Rows.Count;//系统权限个数 string[] vstate = new string[n]; //获取系统配置的权限列表,如果模块没有该权限,则禁用该权限 for (int i = 0; i < n; i++) { AuthorityList.Items.Add(new ListItem(ds.Tables[0].Rows[i]["AuthorityName"].ToString(), ds.Tables[0].Rows[i]["AuthorityTag"].ToString())); AuthorityList.Items[i].Enabled = false; for (int k = 0; k < MALDS.Tables[0].Rows.Count; k++) { if (ds.Tables[0].Rows[i]["AuthorityTag"].ToString() == MALDS.Tables[0].Rows[k]["AuthorityTag"].ToString()) { AuthorityList.Items[i].Enabled = true; break; } } vstate[i] = "0";//初始状态数组; } AuthorityList.DataBind(); //将模块权限付值 for (int j = 0; j < RALDS.Tables[0].Rows.Count; j++) { for (int l = 0; l < AuthorityList.Items.Count; l++) { if (RALDS.Tables[0].Rows[j]["AuthorityTag"].ToString() == AuthorityList.Items[l].Value && RALDS.Tables[0].Rows[j]["Flag"].ToString().ToLower() == "true") { if (AuthorityList.Items[l].Enabled) { vstate[l] = "1";//权限存在 } AuthorityList.Items[l].Selected = true; break; } } } lab_Verify.Text = Smart.Utility.TypeParse.StringArrayToString(vstate, ','); if (!Code.UserHandle.ValidationHandle(Code.Tag.Grant))//是否有编辑权限 { ModuleView.Columns[2].Visible = false; } } }