重构左侧导航

This commit is contained in:
yubaolee 2017-08-30 18:16:06 +08:00
parent c37164b5a8
commit 31e870a41c
3 changed files with 17 additions and 83 deletions

View File

@ -14,7 +14,7 @@ namespace OpenAuth.App.ViewModel
public Guid Id { get; set; }
/// <summary>
/// 组织名称
/// 名称
/// </summary>
/// <returns></returns>
public string Name { get; set; }

View File

@ -1,10 +1,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text;
using System.Web.Mvc;
using Infrastructure;
using OpenAuth.App.SSO;
using OpenAuth.App.ViewModel;
namespace OpenAuth.Mvc.Controllers
{
@ -13,7 +10,6 @@ namespace OpenAuth.Mvc.Controllers
public ActionResult Index()
{
ViewBag.NavBar = GetNavBar();
return View();
}
@ -25,46 +21,7 @@ namespace OpenAuth.Mvc.Controllers
public string GetNavBar()
{
var user = AuthUtil.GetCurrentUser();
return BuilderNavBar(user.ModuleWithChildren);
}
public string BuilderNavBar(IEnumerable<TreeItem<ModuleView>> modules)
{
StringBuilder sb = new StringBuilder();
foreach (var moduleView in modules)
{
if (moduleView.Children.Any())
{
sb.Append("<li class=\"\" id=\""+moduleView.Item.Id+"\">\r\n");
sb.Append("<a href=\"#\" class=\"dropdown-toggle\">\r\n");
sb.Append("<i class=\"menu-icon fa "+moduleView.Item.IconName+"\"></i>\r\n");
sb.Append("<span class=\"menu-text\">\r\n");
sb.Append(""+moduleView.Item.Name+"\r\n");
sb.Append("</span>\r\n");
sb.Append("\r\n");
sb.Append("<b class=\"arrow fa fa-angle-down\"></b>\r\n");
sb.Append("</a>\r\n");
sb.Append("\r\n");
sb.Append("<b class=\"arrow\"></b>\r\n");
sb.Append("<ul class=\"submenu\">");
sb.Append(BuilderNavBar(moduleView.Children));
sb.Append("</ul>");
sb.Append("</li>\r\n");
}
else
{
sb.Append("<li class=\"\" id=\"" + moduleView.Item.Id + "\">\r\n");
sb.Append("<a href=\""+moduleView.Item.Url+"\">\r\n");
sb.Append("<i class=\"menu-icon fa "+moduleView.Item.IconName+"\"></i>\r\n");
sb.Append("<span class=\"menu-text\"> "+moduleView.Item.Name+ " </span>\r\n");
sb.Append("</a>\r\n");
sb.Append("\r\n");
sb.Append("<b class=\"arrow\"></b>\r\n");
sb.Append("</li>\r\n");
}
}
return sb.ToString();
return JsonHelper.Instance.Serialize(user.ModuleWithChildren);
}
public ActionResult Git()
@ -96,14 +53,5 @@ namespace OpenAuth.Mvc.Controllers
ViewBag.Buttons = sb.ToString();
return View();
}
[ChildActionOnly]
public ActionResult Navbar()
{
ViewBag.NavBar = GetNavBar();
if(CurrentModule != null)
ViewBag.CurrentNav = CurrentModule.Id;
return View();
}
}
}

View File

@ -84,30 +84,23 @@
</div>
</div>
<blockquote class="layui-elem-quote explain">
<p>本模板基于Layui实现支持除LayIM外所有的Layui组件。<a href="http://layim.layui.com/" target="_blank" class="layui-btn layui-btn-mini">前往获取LayIM授权</a><a href="https://git.oschina.net/layuicms/layuicms" target="_blank" class="layui-btn layui-btn-mini layui-btn-danger">码云下载</a><a href="https://github.com/BrotherMa/layuiCMS" target="_blank" class="layui-btn layui-btn-mini layui-btn-danger">GitHub下载</a> <span style="color:#1E9FFF;">郑重提示:网站所有数据均为静态数据,无数据库,除打开的窗口和部分小改动外所有操作刷新后无效,关闭窗口或清除缓存后,所有操作无效,请知悉</span></p>
<p>开发文档地址:<a class="layui-btn layui-btn-mini" target="_blank" href="http://www.layui.com/doc">点此跳转</a> <a class="layui-btn layui-btn-mini layui-btn-danger" target="_blank" href="http://fly.layui.com/case/u/3198216">我要点赞</a> 技术交流QQ群<a target="_blank" href="//shang.qq.com/wpa/qunwpa?idkey=8b7dd3ea73528c1e46c5d4e522426d60deed355caefdf481c1eacdd1b7b73bfd"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="OpenAuth.Net模版" title="OpenAuth.Net模版"></a>(添加时请注明来自本框架) <span style="color:#f00;">注本框架未引入任何第三方组件天气信息除外单纯的layui+js实现的各种功能【本框架仅作为学习交流使用如需用作商业用途请联系作者授权谢谢】</span></p>
<p>本模板基于Layui实现支持除LayIM外所有的Layui组件。
<a href="http://layim.layui.com/" target="_blank" class="layui-btn layui-btn-mini">前往获取LayIM授权</a>
<a href="https://git.oschina.net/layuicms/layuicms" target="_blank" class="layui-btn layui-btn-mini layui-btn-danger">码云下载</a><a href="https://github.com/BrotherMa/layuiCMS" target="_blank" class="layui-btn layui-btn-mini layui-btn-danger">GitHub下载</a> 
<span style="color:#1E9FFF;">郑重提示为方便所有人查看demo所有操作无效请知悉</span></p>
<p>开发文档地址:<a class="layui-btn layui-btn-mini" target="_blank" href="http://www.layui.com/doc">点此跳转</a>
<a class="layui-btn layui-btn-mini layui-btn-danger" target="_blank" href="http://fly.layui.com/case/u/3198216">我要收藏</a> 
技术交流QQ群
<span style="color:#f00;">注:【本框架仅作为学习交流使用,如需用作商业用途,请联系作者授权,谢谢】</span></p>
</blockquote>
<div class="row">
<div class="sysNotice col">
<blockquote class="layui-elem-quote title">更新日志</blockquote>
<div class="layui-elem-quote layui-quote-nm">
<h3># v1.0.1(优化) - 2017-06-25</h3>
<p>* 修改刚进入页面无任何操作时按回车键提示“请输入解锁密码!”</p>
<p>* 优化关闭弹窗按钮的提示信息位置问题【可能是因为加载速度的原因,造成这个问题,所以将提示信息做了一个延时】</p>
<p>* “个人资料”提供修改功能</p>
<p>* 顶部天气信息自动判断位置【忘记之前是怎么想的做成北京的了,可能是我在大首都吧,哈哈。。。】</p>
<p>* 优化“用户列表”无法查询到新添加的用户【竟然是因为我把key值写错了该死。。。】</p>
<p>* 将左侧菜单做成json方式调用而不是js调用方便开发使用。同时添加了参数配置和非窗口模式打开的判断【如登录页面】</p>
<p>* 优化部分页面样式问题</p>
<p>* 优化添加窗时如果导航不存在图标无法添加成功</p>
<br />
<p># v1.0.1(新增) - 2017-07-05</p>
<p>* 增加“用户列表”批量删除功能【可能当时忘记添加了吧。。。】</p>
<p style="color:#f00;">* 顶部窗口导航添加“关闭其他”、“关闭全部”功能同时修改菜单窗口过多的展示效果【在此感谢larryCMS给予的启发】</p>
<p>* 添加可隐藏左侧菜单功能【之前考虑没必要添加,但是很多朋友要求加上,那就加上吧,嘿嘿。。。】</p>
<p>* 增加换肤功能【之前就想添加的,但是一直没有找到好的方式(好吧,其实是我忘记了),此方法相对简单,不是普遍适用,只简单的做个功能,如果实际用到建议单独写一套样式,将边框颜色、按钮颜色等统一调整,此处为保证代码的简洁性,只做简单的功能,不做赘述,另外“自定义”颜色中未做校验,所以要写入正确的色值。如“#f00”】</p>
<p style="color:#f00;">* 增加登录页面【背景视频仅作样式参考,实际使用中请自行更换为其他视频或图片,否则造成的任何问题使用者本人承担。】</p>
<p>* 新增打开窗口的动画效果</p>
<h3># v4.0(颠覆) - 2017-09-20</h3>
<p>* 引入layui 2.02这是有史以来最酷的Openauth.net</p>
<p>* 全面优化数据结构</p>
<p>* 全面优化流程引擎</p>
</div>
</div>
<div class="sysNotice col">
@ -148,14 +141,7 @@
</tr>
</tbody>
</table>
<blockquote class="layui-elem-quote title">最新文章<i class="iconfont icon-new1"></i></blockquote>
<table class="layui-table" lay-skin="line">
<colgroup>
<col>
<col width="110">
</colgroup>
<tbody class="hot_news"></tbody>
</table>
</div>
</div>