Ejemplo n.º 1
0
        /// <summary>
        /// 权限更新
        /// </summary>
        private void UpdatePrivilege()
        {
            //先Delete已有的重新添加
            string sql  = "delete from SysPrivileges where roleId = " + roleId;
            int    rows = DBHelperSQL.ExecuteSql(sql);


            if (strLevelNo.Length == 0 && rows > 0)
            {
                Response.Write("success");
            }
            else
            {
                string[]      arr  = strLevelNo.TrimEnd(',').Split(',');
                int           num  = 5;
                SysPrivileges item = null;
                StringBuilder sb   = new StringBuilder();
                if (arr.Length > 0)
                {
                    for (int i = 0; i < arr.Length; i++)
                    {
                        item              = new SysPrivileges();
                        item.roleId       = roleId;
                        item.departmentId = departId;
                        if (arr[i] != "on")
                        {
                            item.levelNo = Convert.ToInt32(arr[i]);
                        }

                        item.parentLevelNo = OALevelService.GetparentLevelNoByLevelNo(item.levelNo);
                        if (!SysPrivilegesService.Exists(item.roleId, item.departmentId, item.levelNo))
                        {
                            num = SysPrivilegesService.Add(item);
                            if (num == 0)
                            {
                                sb.Append("权限编号:" + item.levelNo + "添加失败,");
                            }
                        }
                    }
                }
                if (num == 0)
                {
                    Response.Write(sb.ToString());
                }
                else
                {
                    Response.Write("success");
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 返回菜单信息
        /// </summary>
        /// <returns></returns>
        protected string GetMenu()
        {
            StringBuilder sb        = new StringBuilder();
            AdminUser     item      = Session["loginUser"] as AdminUser;
            DataSet       ds        = SysPrivilegesService.GetLevelInfo(item.roleId, 3);
            int           menuCount = SysPrivilegesService.GetSonCount(item.roleId, 3); //总数
            int           nowNode   = 1;

            if (ds.Tables[0].Rows.Count > 0)
            {
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    OALevel levelItem = OALevelService.GetModelByLevelNo(Convert.ToInt32(ds.Tables[0].Rows[i]["levelNo"]));
                    if (levelItem != null)
                    {
                        sb.Append("<div  class=\"left_tab\" style=\"padding-left:30px;\">" + levelItem.levelName + "</div>");
                        sb.Append("<ul>");
                        DataSet ds2 = SysPrivilegesService.GetSonInfo(Convert.ToInt32(ViewState["role"]), 3, Convert.ToInt32(ds.Tables[0].Rows[i]["levelNo"]));
                        if (ds2.Tables[0].Rows.Count > 0)
                        {
                            for (int j = 0; j < ds2.Tables[0].Rows.Count; j++)
                            {
                                levelItem = OALevelService.GetModelByLevelNo(Convert.ToInt32(ds2.Tables[0].Rows[j]["levelNo"]));
                                if (levelItem != null)
                                {
                                    sb.Append("<li id=\"m_" + nowNode + "\" onClick=\"dis_cont('" + levelItem.url + "'," + nowNode + "," + ViewState["role"] + "," + menuCount + ")\">" + levelItem.levelName + "</li>");
                                    nowNode++;
                                }
                            }
                        }
                        sb.Append("</ul>");
                    }
                }
            }
            return(sb.ToString());
        }
Ejemplo n.º 3
0
        private void LoadLevelTree(int roleId, int departId)
        {
            DataSet ds  = OALevelService.GetList("parentLevelNo = 0"); //顶级信息
            DataSet ds1 = new DataSet();                               //存放一级菜单信息
            DataSet ds2 = new DataSet();                               //存放二级菜单信息

            // StringBuilder sb = new StringBuilder();    //存储第三级复选框的id信息
            if (ds.Tables[0].Rows.Count > 0)
            {
                StringBuilder sb       = new StringBuilder();
                TreeNode      tn       = null;
                TreeNode      tn1      = null;
                TreeNode      tn2      = null;
                string        levelNo0 = "";
                string        levelNo1 = "";
                string        levelNo2 = "";
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    tn       = new TreeNode();
                    levelNo0 = ds.Tables[0].Rows[i]["levelNo"].ToString();
                    ds1      = OALevelService.GetList("parentLevelNo = '" + levelNo0 + "'");
                    if (SysPrivilegesService.Exists(roleId, departId, Convert.ToInt32(levelNo0)))
                    {
                        tn.Text = "<input type='checkbox' id='" + i + "' onclick='check(this," + ds1.Tables[0].Rows.Count + ")' value='" + ds.Tables[0].Rows[i]["levelNo"].ToString() + "' checked='checked' />" + ds.Tables[0].Rows[i]["levelName"].ToString();
                    }
                    else
                    {
                        tn.Text = "<input type='checkbox' id='" + i + "' onclick='check(this," + ds1.Tables[0].Rows.Count + ")' value='" + ds.Tables[0].Rows[i]["levelNo"].ToString() + "' />" + ds.Tables[0].Rows[i]["levelName"].ToString();
                    }
                    #region      一级菜单信息的加载

                    if (ds1.Tables[0].Rows.Count > 0)
                    {
                        for (int j = 0; j < ds1.Tables[0].Rows.Count; j++)
                        {
                            tn1      = new TreeNode();
                            levelNo1 = ds1.Tables[0].Rows[j]["levelNo"].ToString();
                            ds2      = OALevelService.GetList("parentLevelNo = '" + levelNo1 + "'");
                            if (SysPrivilegesService.Exists(roleId, departId, Convert.ToInt32(levelNo1)))
                            {
                                tn1.Text = "<input type='checkbox' id='" + i + "_" + j + "' onclick='check2(this," + ds2.Tables[0].Rows.Count + ")' value='" + ds1.Tables[0].Rows[j]["levelNo"].ToString() + "' checked='checked' />" + ds1.Tables[0].Rows[j]["levelName"].ToString();
                            }
                            else
                            {
                                tn1.Text = "<input type='checkbox' id='" + i + "_" + j + "' onclick='check2(this," + ds2.Tables[0].Rows.Count + ")' value='" + ds1.Tables[0].Rows[j]["levelNo"].ToString() + "' />" + ds1.Tables[0].Rows[j]["levelName"].ToString();
                            }

                            #region   二级菜单信息的加载

                            //this.level2Count.Value = ds2.Tables[0].Rows.Count.ToString();        //二级菜单的子类数量
                            if (ds2.Tables[0].Rows.Count > 0)
                            {
                                for (int k = 0; k < ds2.Tables[0].Rows.Count; k++)
                                {
                                    tn2      = new TreeNode();
                                    levelNo2 = ds2.Tables[0].Rows[k]["levelNo"].ToString();
                                    sb.Append((i + "_" + j + "_" + k).ToString() + ",");

                                    if (SysPrivilegesService.Exists(roleId, departId, Convert.ToInt32(levelNo2)))
                                    {
                                        tn2.Text = "<input type='checkbox' id='" + i + "_" + j + "_" + k + "' onclick='check3(this)' value='" + ds2.Tables[0].Rows[k]["levelNo"].ToString() + "' checked='checked' />" + ds2.Tables[0].Rows[k]["levelName"].ToString();
                                    }
                                    else
                                    {
                                        tn2.Text = "<input type='checkbox' id='" + i + "_" + j + "_" + k + "' onclick='check3(this)' value='" + ds2.Tables[0].Rows[k]["levelNo"].ToString() + "' />" + ds2.Tables[0].Rows[k]["levelName"].ToString();
                                    }

                                    tn1.ChildNodes.Add(tn2);
                                }
                            }
                            #endregion
                            tn.ChildNodes.Add(tn1);   //一级菜单追加到顶级菜单节点下。
                        }
                    }
                    #endregion
                    this.tvModel.Nodes.Add(tn);      //顶级菜单追加到权限树上
                }
                tvModel.CollapseAll();
                this.hidRowsCount.Value = sb.ToString().TrimEnd(',');
            }
        }