コード例 #1
0
ファイル: Front.Master.cs プロジェクト: windygu/XiaZhou
        protected string MenuBind()
        {
            StringBuilder menuSb = new StringBuilder();
            IList <EyouSoft.Model.SysStructure.MComMenu1Info> menuList = new EyouSoft.BLL.SysStructure.BSysMenu().GetComMenus(backPage.SiteUserInfo.SysId);
            int sl = Utils.GetInt(Utils.GetQueryStringValue("sl"), 1);
            IList <EyouSoft.Model.SysStructure.MComMenu2Info> copyList = null;

            if (menuList != null && menuList.Count > 0)
            {
                //遍历一级栏目
                for (int i = 0; i < menuList.Count; i++)
                {
                    if (!menuList[i].IsDisplay)
                    {
                        continue;
                    }
                    //判断用户是否有一级栏目权限
                    //if (backPage.SiteUserInfo.Privs.Contains(menuList[i].MenuId))
                    //{
                    string menuFrist = "<li><h5><s class=\"" + menuList[i].ClassName + "\"></s>" + menuList[i].Name + "</h5>{0}</li>";
                    //用来验证是否拥有一级栏目权限
                    bool   isGrant    = false;
                    string menuSecond = "";
                    //判断是否拥有二级栏目
                    if (menuList[i].Menu2s != null)
                    {
                        menuSecond += "<div class=\"sub-menu\">";
                        for (int j = 0; j < menuList[i].Menu2s.Count; j++)
                        {
                            //判断是否拥有二级栏目权限
                            if (backPage.SiteUserInfo.Privs.Contains(menuList[i].Menu2s[j].Menu2PrivId))
                            {
                                //拥有二级栏目权限时即显示一级栏目
                                isGrant     = true;
                                menuSecond += "<a href=\"" + menuList[i].Menu2s[j].Url + "\">" + menuList[i].Menu2s[j].Name + "</a>";

                                if (menuList[i].Menu2s[j].Menu2PrivId == sl)
                                {
                                    copyList = menuList[i].Menu2s.Where(p => p.Menu2PrivId != sl).ToList();
                                }
                            }
                        }
                        menuSecond += "</div>";
                    }
                    if (isGrant)
                    {
                        menuFrist = string.Format(menuFrist, menuSecond);
                        menuSb.Append(menuFrist);
                    }
                    //}
                }

                if (copyList != null && copyList.Count > 0)
                {
                    InitQMenu(copyList);
                }
            }
            return(menuSb.ToString());
        }
コード例 #2
0
ファイル: UserCenter.Master.cs プロジェクト: windygu/XiaZhou
        protected string MenuBind()
        {
            StringBuilder menuSb = new StringBuilder();
            IList <EyouSoft.Model.SysStructure.MComMenu1Info> menuList = new EyouSoft.BLL.SysStructure.BSysMenu().GetComMenus(backPage.SiteUserInfo.SysId);

            if (menuList != null && menuList.Count > 0)
            {
                //遍历一级栏目
                for (int i = 0; i < menuList.Count; i++)
                {
                    if (!menuList[i].IsDisplay)
                    {
                        continue;
                    }
                    //判断用户是否有一级栏目权限
                    //if (backPage.SiteUserInfo.Privs.Contains(menuList[i].MenuId))
                    //{
                    string menuFrist = "<span " + (i == (menuList.Count - 1) ? "style='border-bottom:#137CBF solid 1px; display:block;'" : "") + " ><h5><s class=\"" + menuList[i].ClassName + "\"></s><a onclick=\"show_menuB(" + i.ToString() + ")\" href=\"javascript:;\" id=\"Bf0" + i.ToString() + "\">" + menuList[i].Name + "</a></h5>{0}</span>";
                    //用来验证是否拥有一级栏目权限
                    bool   isGrant    = false;
                    string menuSecond = "";
                    //判断是否拥有二级栏目
                    if (menuList[i].Menu2s != null)
                    {
                        menuSecond += "<div id=\"Bli0" + i.ToString() + "\" class=\"sub-menu\"><ul>";
                        for (int j = 0; j < menuList[i].Menu2s.Count; j++)
                        {
                            //判断是否拥有二级栏目权限
                            if (backPage.SiteUserInfo.Privs.Contains(menuList[i].Menu2s[j].Menu2PrivId))
                            {
                                //拥有二级栏目权限时即显示一级栏目
                                isGrant     = true;
                                menuSecond += "<li ><a href=\"" + menuList[i].Menu2s[j].Url + "\">" + menuList[i].Menu2s[j].Name + "</a></li>";
                            }
                        }
                        menuSecond += "</ul></div>";
                    }
                    if (isGrant)
                    {
                        menuFrist = string.Format(menuFrist, menuSecond);
                        menuSb.Append(menuFrist);
                    }

                    //  }
                }
            }
            return(menuSb.ToString());
        }
コード例 #3
0
        /// <summary>
        /// init company menus
        /// </summary>
        void InitComMenus()
        {
            EyouSoft.BLL.SysStructure.BSysMenu bll = new EyouSoft.BLL.SysStructure.BSysMenu();
            var items = bll.GetComMenus(SysId);

            bll = null;

            if (items != null && items.Count > 0)
            {
                this.phSetDefaultMenus.Visible = false;

                this.rptMenus.DataSource = items;
                this.rptMenus.DataBind();
            }
            else
            {
                this.phSetDefaultMenus.Visible = true;
            }
        }
コード例 #4
0
ファイル: menuedit.aspx.cs プロジェクト: windygu/XiaZhou
        /// <summary>
        /// init company menus
        /// </summary>
        void InitComMenus()
        {
            var bll   = new EyouSoft.BLL.SysStructure.BSysMenu();
            var items = bll.GetComMenus(SysId);

            bll = null;

            string script = "var comMenus={0};";

            if (items != null && items.Count > 0)
            {
                script = string.Format(script, Newtonsoft.Json.JsonConvert.SerializeObject(items));
            }
            else
            {
                script = string.Format(script, "[]");
            }

            RegisterScript(script);
        }
コード例 #5
0
        /// <summary>
        /// 页面初始化
        /// </summary>
        /// <param name="id">操作ID</param>
        protected void PageInit()
        {
            System.Text.StringBuilder RolePower = new System.Text.StringBuilder();
            IList <EyouSoft.Model.ComStructure.MComRole> RoleList = new EyouSoft.BLL.ComStructure.BComRole().GetList(SiteUserInfo.CompanyId);

            if (RoleList != null && RoleList.Count > 0)
            {
                RolePower.Append("[");
                foreach (var item in RoleList)
                {
                    RolePower.Append("{");
                    RolePower.AppendFormat("RoleId: '{0}',PowerIds: '{1}'", item.Id, item.RoleChilds);
                    RolePower.Append("},");
                }
                RolePower.Append("]");
            }
            hidPower.Value              = RolePower.ToString();
            this.ddlRole.DataTextField  = "RoleName";
            this.ddlRole.DataValueField = "Id";
            this.ddlRole.DataSource     = RoleList;
            this.ddlRole.DataBind();
            this.ddlRole.Items.Insert(0, new ListItem("请选择", "0"));
            if (ddlRole.Items.FindByValue(RoleID) != null)
            {
                ddlRole.Items.FindByValue(RoleID).Selected = true;
            }
            string[] PowerIds = new EyouSoft.BLL.ComStructure.BComUser().GetPrivs(UserID, SiteUserInfo.CompanyId).Split(',');
            if (PowerIds == null || PowerIds[0] == "")
            {
                if (!string.IsNullOrEmpty(RoleID))
                {
                    EyouSoft.Model.ComStructure.MComRole model = new EyouSoft.BLL.ComStructure.BComRole().GetModel(Utils.GetInt(RoleID), SiteUserInfo.CompanyId);
                    if (model != null)
                    {
                        PowerIds = model.RoleChilds.Split(',');
                    }
                }
            }
            System.Text.StringBuilder          str                 = new System.Text.StringBuilder();
            System.Text.StringBuilder          Privs               = null;
            EyouSoft.BLL.SysStructure.BSysMenu BSysMenuBll         = new EyouSoft.BLL.SysStructure.BSysMenu();
            IList <EyouSoft.Model.SysStructure.MComMenu1Info> list = BSysMenuBll.GetComMenus(SiteUserInfo.SysId);

            if (list != null)
            {
                //一级栏目
                for (int i = 0; i < list.Count; i++)
                {
                    str.Append("<table width=\"99%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\" class=\"quanxian_add_bottom\"> <tbody><tr>");
                    str.AppendFormat(" <td width=\"92\" height=\"25\" align=\"center\" class=\"quanxian_add\">{0}</td>", list[i].Name);
                    str.AppendFormat("<td><span>&nbsp;&nbsp;<input type=\"checkbox\" name=\"chkAll\" value=\"{0}\"/></span>全选</td>", list[i].MenuId);
                    str.Append(" </tr></tbody></table>");
                    str.Append("<div class=\"hr_5\"></div>");
                    str.Append(" <table width=\"99%\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\" bgcolor=\"#85c1dd\" align=\"center\"><tbody>");
                    if (list[i].Menu2s != null)
                    {
                        //每行显示4列,共循环多少次
                        for (int k = 0; k <= list[i].Menu2s.Count / 4; k++)
                        {
                            Privs = new System.Text.StringBuilder();
                            str.Append("<tr>");
                            Privs.Append("<tr>");
                            for (int j = k * 4; j < list[i].Menu2s.Count; j++)
                            {
                                //当前权限是否选中
                                bool check = false;
                                str.AppendFormat("<th width=\"25%\" height=\"26\" bgcolor=\"#BDDCF4\" align=\"left\">&nbsp; <input type=\"checkbox\" MenuId =\"{0}\" Menu2Id=\"{1}\" name=\"chkMenu\" />{2}</th>", list[i].MenuId, list[i].Menu2s[j].MenuId, list[i].Menu2s[j].Name);
                                Privs.Append("<td style=\" vertical-align:top;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">");
                                for (int t = 0; t < list[i].Menu2s[j].Privs.Count; t++)
                                {
                                    for (int p = 0; p < PowerIds.Length; p++)
                                    {
                                        check = false;
                                        if (Utils.GetInt(PowerIds[p]) == list[i].Menu2s[j].Privs[t].PrivsId)
                                        {
                                            check = true;
                                            break;
                                        }
                                    }
                                    Privs.AppendFormat("<tr><td width=\"25%\" height=\"26\" bgcolor=\"#FFFFFF\" align=\"left\">&nbsp;<input type=\"checkbox\"  name=\"chkPower\" Menu2Id=\"{0}\" value=\"{1}\" {2}/>{3}</td></tr>", list[i].Menu2s[j].MenuId, list[i].Menu2s[j].Privs[t].PrivsId, check ? "checked=\"checked\"" : "", list[i].Menu2s[j].Privs[t].Name);
                                }
                                Privs.Append("</table></td>");
                                if ((j != 0 && (j + 1) % 4 == 0) || j + 1 == list[i].Menu2s.Count)
                                {
                                    str.Append("</tr>");
                                    Privs.Append("<tr>");
                                    str.Append(Privs.ToString());
                                    break;
                                }
                            }
                        }
                    }
                    str.Append("</tbody></table><div class=\"hr_5\"></div>");
                    PowerStr = str.ToString();
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// 页面初始化
        /// </summary>
        /// <param name="id">操作ID</param>
        protected void PageInit()
        {
            int RoleId = Utils.GetInt(EyouSoft.Common.Utils.GetQueryStringValue("id"));

            //当前角色的所有权限ID
            string[] PowerIds = { };
            System.Text.StringBuilder          str                 = new System.Text.StringBuilder();
            System.Text.StringBuilder          Privs               = null;
            EyouSoft.BLL.SysStructure.BSysMenu BSysMenuBll         = new EyouSoft.BLL.SysStructure.BSysMenu();
            EyouSoft.BLL.ComStructure.BComRole BComRoleBll         = new EyouSoft.BLL.ComStructure.BComRole();
            IList <EyouSoft.Model.SysStructure.MComMenu1Info> list = BSysMenuBll.GetComMenus(SiteUserInfo.SysId);

            if (RoleId != 0)
            {
                EyouSoft.Model.ComStructure.MComRole model = BComRoleBll.GetModel(RoleId, SiteUserInfo.CompanyId);
                if (model != null)
                {
                    txtRoleName.Value = model.RoleName;
                    PowerIds          = model.RoleChilds.Split(',');
                }
            }
            else
            {
                txtRoleName.Value = "";
            }
            if (list != null)
            {
                //一级栏目
                for (int i = 0; i < list.Count; i++)
                {
                    str.Append("<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" align=\"center\" class=\"quanxian_add_bottom\"> <tbody><tr>");
                    str.AppendFormat(" <td width=\"92\" height=\"25\" align=\"center\" class=\"quanxian_add\">{0}</td>", list[i].Name);
                    str.AppendFormat("<td><label><input type=\"checkbox\" name=\"chkAll\" value=\"{0}\"/>&nbsp;&nbsp;全选</label></td>", list[i].MenuId);
                    str.Append(" </tr></tbody></table>");
                    str.Append("<div class=\"hr_5\"></div>");
                    str.Append(" <table width=\"100%\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\"  align=\"center\" bgcolor=\"#85c1dd\"><tbody>");
                    if (list[i].Menu2s != null)
                    {
                        //每行显示4列,共循环多少次
                        for (int k = 0; k <= list[i].Menu2s.Count / 4; k++)
                        {
                            Privs = new System.Text.StringBuilder();
                            str.Append("<tr>");
                            Privs.Append("<tr>");
                            for (int j = k * 4; j < list[i].Menu2s.Count; j++)
                            {
                                //当前权限是否选中
                                bool check = false;
                                str.AppendFormat("<th width=\"25%\" height=\"26\" bgcolor=\"#BDDCF4\" align=\"left\"><label>&nbsp;&nbsp;<input type=\"checkbox\" MenuId =\"{0}\" Menu2Id=\"{1}\" name=\"chkMenu\" />&nbsp;{2}</label></th>", list[i].MenuId, list[i].Menu2s[j].MenuId, list[i].Menu2s[j].Name);
                                Privs.Append("<td align='left' style=\" vertical-align:top;\" bgcolor=\"#FFFFFF\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">");
                                for (int t = 0; t < list[i].Menu2s[j].Privs.Count; t++)
                                {
                                    for (int p = 0; p < PowerIds.Length; p++)
                                    {
                                        check = false;
                                        if (Utils.GetInt(PowerIds[p]) == list[i].Menu2s[j].Privs[t].PrivsId)
                                        {
                                            check = true;
                                            break;
                                        }
                                    }
                                    Privs.AppendFormat("<tr><td width=\"25%\" height=\"26\" bgcolor=\"#FFFFFF\" align=\"left\"><label>&nbsp;&nbsp;<input type=\"checkbox\"  name=\"chkPower\" Menu2Id=\"{0}\" value=\"{1}\" {2}/>&nbsp;&nbsp;{3}</label></td></tr>", list[i].Menu2s[j].MenuId, list[i].Menu2s[j].Privs[t].PrivsId, check ? "checked=\"checked\"" : "", list[i].Menu2s[j].Privs[t].Name);
                                }
                                Privs.Append("</table></td>");
                                if ((j != 0 && (j + 1) % 4 == 0) || j + 1 == list[i].Menu2s.Count)
                                {
                                    int AddThTd = 4 - list[i].Menu2s.Count % 4;
                                    if (AddThTd > 0 && list[i].Menu2s.Count > 4)
                                    {
                                        for (int s = 0; s < AddThTd; s++)
                                        {
                                            str.Append("<th width=\"25%\" height=\"26\" bgcolor=\"#BDDCF4\" align=\"left\"></th>");
                                            Privs.Append("<td width=\"25%\" height=\"26\" bgcolor=\"#FFFFFF\" align=\"left\"></td>");
                                        }
                                    }
                                    str.Append("</tr>");
                                    Privs.Append("<tr>");
                                    str.Append(Privs.ToString());
                                    break;
                                }
                            }
                        }
                    }
                    str.Append("</tbody></table><div class=\"hr_5\"></div>");
                    PowerStr = str.ToString();
                }
            }
        }
コード例 #7
0
ファイル: privs.aspx.cs プロジェクト: windygu/XiaZhou
        /// <summary>
        /// init privs
        /// </summary>
        void InitPrivs()
        {
            EyouSoft.BLL.SysStructure.BSysMenu bll = new EyouSoft.BLL.SysStructure.BSysMenu();
            var items = bll.GetComMenus(SysId);

            bll = null;
            string script = "var comMenus={0};";

            if (items == null || items.Count < 1)
            {
                this.phUnsetMenuMsg.Visible = true;
                this.phPrivs.Visible        = false;
                script = string.Format(script, "[]");
                RegisterScript(script);
                return;
            }
            else
            {
                this.phUnsetMenuMsg.Visible = false;
                this.phPrivs.Visible        = true;
            }

            System.Text.StringBuilder      html   = new System.Text.StringBuilder();
            EyouSoft.BLL.SysStructure.BSys sysbll = new EyouSoft.BLL.SysStructure.BSys();

            foreach (var menu1 in items)
            {
                html.AppendFormat("<div class=\"p1\"><input type=\"checkbox\" id=\"chk_p_1_{1}\" value=\"{1}\" name=\"chk_p_1\" /><label for=\"chk_p_1_{1}\">{0}</label><!--<span class=\"pcode\">[{1}]</span>--></div>", menu1.Name, menu1.MenuId);

                if (menu1.Menu2s == null || menu1.Menu2s.Count < 1)
                {
                    continue;
                }

                html.Append("<div>");

                int i = 0;
                foreach (var menu2 in menu1.Menu2s)
                {
                    html.Append("<ul class=\"p2\">");
                    html.AppendFormat("<li class=\"p2title\"><input type=\"checkbox\" id=\"chk_p_2_{1}\" value=\"{1}\" name=\"chk_p_2_p1v_{2}\" /><label for=\"chk_p_2_{1}\">{0}</label><!--<span class=\"pcode\">[{1}]</span>--></li>", menu2.Name, menu2.MenuId, menu1.MenuId);

                    var privs = sysbll.GetPrivs(menu2.DefaultMenu2Id);

                    if (privs != null && privs.Count > 0)
                    {
                        foreach (var priv in privs)
                        {
                            html.AppendFormat("<li class=\"p3\"><input type=\"checkbox\" id=\"chk_p_3_{1}\" value=\"{1}\" name=\"chk_p_3_p2v_{2}\"  /><label for=\"chk_p_3_{1}\">{0}</label><span class=\"pcode\">[{1}]</span></li>", priv.Name, priv.PrivsId, menu2.MenuId);
                        }
                    }

                    html.Append("</ul>");

                    if (i % 4 == 3)
                    {
                        html.Append("<ul class=\"p2space\"><li></li></ul>");
                    }
                    i++;
                }

                html.Append("<ul class=\"p2space\"><li></li></ul>");
                html.Append("</div>");
            }

            this.ltrPrivs.Text = html.ToString();

            script = string.Format(script, Newtonsoft.Json.JsonConvert.SerializeObject(items));

            RegisterScript(script);
        }