Ejemplo n.º 1
0
        /// <summary>
        /// 创建按钮HTML
        /// </summary>
        /// <param name="type">按钮类型</param>
        /// <param name="menu">菜单代码</param>
        /// <returns></returns>
        public MvcHtmlString CreateButtonHtml(int type, string menu)
        {
            List <SYS_Button> list  = buttonService.GetButtonListByRoleMenu(menu, (Session["user"] as SYS_User)?.RoleCode);
            var           buttons   = list.Where(p => p.BtnType == type).ToList();
            int           count     = buttons.Count;
            List <string> colorList = new List <string>()
            {
                "layui-btn-primary", " layui-btn-danger", "layui-bg-green", "layui-bg-cyan", "layui-bg-orange", "layui-bg-red", "layui-bg-gray", "layui-bg-black"
            };
            StringBuilder html = new StringBuilder();

            if (type == Convert.ToInt32(BtnType.表格外))
            {
                html.AppendLine("<div class='layui-inline'>");
                int num = 0;
                for (int i = 0; i < count; i++)
                {
                    num++;
                    if (num == 2)
                    {
                        html.AppendLine("</div>");
                        html.AppendLine("<div class='layui-inline'>");
                        num = 0;
                    }
                    var    btn       = buttons[i];
                    string dataType  = "";
                    string innerHtml = ButtonInnerHtml(btn);
                    if (btn.BtnCode == "Query")
                    {
                        dataType = "data-type='reload'";
                    }
                    html.AppendLine("<button class='layui-btn topBtnFontSzie' " + dataType + " title='" + btn.BtnDescribe + "' type='button' onclick='" + btn.BtnCode + "();' >" + innerHtml + "</button>");
                }
                html.AppendLine("</div>");
            }
            else if (type == Convert.ToInt32(BtnType.表格头部))
            {
            }
            else if (type == Convert.ToInt32(BtnType.表格操作列))
            {
                for (int i = 0; i < count; i++)
                {
                    var    btn       = buttons[i];
                    string innerHtml = ButtonInnerHtml(btn);
                    html.AppendLine("<a class='layui-btn layui-btn-xs " + colorList[i] + " _" + btn.BtnCode + "' lay-event='" + btn.BtnCode + "'>" + innerHtml + "</a>");
                }
            }
            return(new MvcHtmlString(html.ToString()));
        }