/// <summary>
        /// 设置菜单
        /// </summary>
        private async Task SetMenu()
        {
            if (IsLogin() && !string.IsNullOrEmpty(this.LoginUser.LoginName))
            {
                StringBuilder sb   = new StringBuilder();
                var           list = await _rolePermissionServices.QueryByRoleId(LoginUser.RoleId.HasValue?LoginUser.RoleId.Value : 0);

                list = list.Where(c => c.Permission != null && c.Permission.Type == PermissionType.Menu &&
                                  c.Role != null && !c.Role.IsDeleted && c.Role.IsEnabled).ToList();
                if (list != null && list.Count > 0)
                {
                    foreach (var parent in list.Where(a => a.Permission.ParentId == null || a.Permission.ParentId == 0))
                    {
                        StringBuilder sbChild = new StringBuilder();
                        sbChild.AppendFormat("<dl class=\"layui-nav-child\">");
                        bool flag       = false;
                        bool exists     = false;
                        bool parentFlag = false;
                        var  childCount = list.Where(a => a.Permission.ParentId == parent.PermissionId).Count();
                        if (childCount == 0)
                        {
                            parentFlag = parent.Permission.Url.ToLower() == this.Path.ToLower();
                        }
                        foreach (var child in list.Where(a => a.Permission.ParentId == parent.PermissionId))
                        {
                            flag = child.Permission.Url.ToLower() == this.Path.ToLower();
                            if (flag)
                            {
                                exists = true;
                            }
                            sbChild.AppendFormat("<dd {0}><a href=\"{1}\">&nbsp&nbsp{2}</a></dd>", flag ? "class=\"layui-this\"" : "", string.IsNullOrEmpty(child.Permission.Url) ? "javascript:void(0)" : child.Permission.Url, child.Permission.Name);
                        }
                        sbChild.AppendFormat("</dl>");

                        sb.AppendFormat("<li class=\"layui-nav-item {0}\">", exists ? "layui-nav-itemed" : (parentFlag ? "layui-this" : ""));
                        sb.AppendFormat("<a class='layui-icon {0}' href=\"{1}\">&nbsp&nbsp{2}</a>", parent.Permission.Icon, childCount != 0 ? "javascript:void(0);" : parent.Permission.Url, parent.Permission.Name);
                        sb.Append(childCount != 0 ? sbChild.ToString() : "");
                        sb.AppendFormat("</li>");
                    }
                }
                ViewBag.MenuItems = sb.ToString();
            }
        }