Browse Source

Web Updated

1.增加网页皮肤设定功能,修改以下相关文件
1.1.修改Views\Home\Framework.cshtml
1.2.修改Views\_ViewStart.cshtml
1.3.修改Views\Shared\_Layout.cshtml,删除Views\Shared\_Layout2.cshtml
1.4.修改lib\admin\admin.js
1.5.修改lib\admin\admin.css
1.6.修改config\skin.json
PTD
BB.Wang 4 years ago
parent
commit
2e5008cc1b
  1. 31
      AMESCoreStudio.Web/Code/Properties/launchSettings.json
  2. 16
      AMESCoreStudio.Web/UpdateList.txt
  3. 90
      AMESCoreStudio.Web/Views/Home/Framework.cshtml
  4. 4
      AMESCoreStudio.Web/Views/Home/Index.cshtml
  5. 13
      AMESCoreStudio.Web/Views/Login/Index.cshtml
  6. 20
      AMESCoreStudio.Web/Views/Shared/_Layout.cshtml
  7. 2
      AMESCoreStudio.Web/Views/_ViewStart.cshtml
  8. BIN
      AMESCoreStudio.Web/wwwroot/images/ames_logo.png
  9. BIN
      AMESCoreStudio.Web/wwwroot/images/welcome1.png
  10. 2
      AMESCoreStudio.Web/wwwroot/lib/admin/admin.css
  11. 294
      AMESCoreStudio.Web/wwwroot/lib/admin/admin.js

31
AMESCoreStudio.Web/Code/Properties/launchSettings.json

@ -0,0 +1,31 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:5821",
"sslPort": 0
}
},
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"IIS Express": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "amesapi/index.html",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "http://localhost:5821"
},
"AMESCoreStudio.WebApi": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "api/bulletins",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:5001;http://localhost:5000"
}
}
}

16
AMESCoreStudio.Web/UpdateList.txt

@ -1,16 +1,26 @@
 
2021-09-18 Updated by Marvin 2021-09-23 Web Updated by Marvin
******************************************************************************
1.增加网页皮肤设定功能,修改以下相关文件
1.1.修改Views\Home\Framework.cshtml
1.2.修改Views\_ViewStart.cshtml
1.3.修改Views\Shared\_Layout.cshtml,删除Views\Shared\_Layout2.cshtml
1.4.修改lib\admin\admin.js
1.5.修改lib\admin\admin.css
1.6.修改config\skin.json
2021-09-18 Web Updated by Marvin
****************************************************************************** ******************************************************************************
1.新增角色模組維護頁面SYS005(支持批量刪除) 1.新增角色模組維護頁面SYS005(支持批量刪除)
2.新增角色功能維護頁面SYS006(支持批量刪除) 2.新增角色功能維護頁面SYS006(支持批量刪除)
3.新增用戶角色維護頁面SYS009(支持批量刪除) 3.新增用戶角色維護頁面SYS009(支持批量刪除)
2021-09-16 Updated by Marvin 2021-09-16 Web Updated by Marvin
****************************************************************************** ******************************************************************************
1.移除测试范例相关文件 1.移除测试范例相关文件
2.修改SYS模组相关Models的引用来源 2.修改SYS模组相关Models的引用来源
2021-09-01 Updated by Marvin 2021-09-01 Web Updated by Marvin
****************************************************************************** ******************************************************************************
1.修改admin.css,調整左上方LOGO區域大小與菜單對齊.layui-layout-admin .layui-header .logo a 1.修改admin.css,調整左上方LOGO區域大小與菜單對齊.layui-layout-admin .layui-header .logo a
2.修改admin.css,調整菜單點選右邊內容區域菜單顯示大小.layui-page-content .layui-tab-title 2.修改admin.css,調整菜單點選右邊內容區域菜單顯示大小.layui-page-content .layui-tab-title

90
AMESCoreStudio.Web/Views/Home/Framework.cshtml

@ -2,7 +2,7 @@
ViewData["Title"] = "AMES 1.0.0"; ViewData["Title"] = "AMES 1.0.0";
} }
<!DOCTYPE html> <!doctype html>
<html> <html>
@ -28,7 +28,7 @@
<![endif]--> <![endif]-->
</head> </head>
<body class="layui-layout-body" style="display: none;"> <body class="layui-layout-body" >
<div class="layui-layout layui-layout-admin"> <div class="layui-layout layui-layout-admin">
<!-- 顶部 --> <!-- 顶部 -->
<div class="layui-header" align="left"> <div class="layui-header" align="left">
@ -111,12 +111,6 @@
<li class="sub-tab" hg-title="用户角色維護" hg-nav="/SYS/SYS009"> <li class="sub-tab" hg-title="用户角色維護" hg-nav="/SYS/SYS009">
<a><i class="fa fa-user-o fa-fw"></i><cite>用户角色維護</cite></a> <a><i class="fa fa-user-o fa-fw"></i><cite>用户角色維護</cite></a>
</li> </li>
<li class="sub-tab" hg-title="pcb" hg-nav="/PCS/PCS001C">
<a><i class="fa fa-user-o fa-fw"></i><cite>PCB001C</cite></a>
</li>
<li class="sub-tab" hg-title="pcb" hg-nav="/PCS/PCS001A">
<a><i class="fa fa-user-o fa-fw"></i><cite>PCB001A</cite></a>
</li>
</ul> </ul>
</li> </li>
</ul> </ul>
@ -156,45 +150,63 @@
</div> </div>
</div> </div>
<!--皮肤配置--> </div>
<div class="hg-config" style="display: none;">
<div class="layui-fluid"> <!--皮肤配置-->
<div class="layui-row"> <div class="hg-config" style="display: none;">
<div class="layui-fluid">
<div class="layui-row">
<br />
<div class="layui-col-md12">
<fieldset class="layui-elem-field"><legend>主题</legend></fieldset>
<div class="layui-col-md12"> <div class="layui-col-md12">
<fieldset class="layui-elem-field layui-field-title"><legend>主题</legend></fieldset> <ul class="skin">
<div class="layui-col-md12"> </ul>
<ul class="skin"> </div>
</ul> </div>
</div> <br />
<div class="layui-col-md12">
<fieldset class="layui-elem-field"><legend>字号</legend></fieldset>
<div class="layui-col-md12">
<form class="layui-form layui-form-pane" action="">
<div class="layui-form-item" pane="">
<div class="layui-input-line">
<input type="radio" name="fontsize" value="lg" title="大号">
<input type="radio" name="fontsize" value="md" title="默认">
<input type="radio" name="fontsize" value="sm" title="小号">
<input type="radio" name="fontsize" value="xs" title="超小">
</div>
</div>
</form>
</div> </div>
</div> </div>
</div> </div>
<script type="text/javascript" src="./lib/layui/lay/modules/form.js"></script>
</div> </div>
<script type="text/javascript" src="~/lib/layui/lay/modules/form.js"></script>
</div> </div>
<script>
//注意:element未作封装处理,使用layui.use引用
layui.use(['element'], function () {
var element = layui.element;
console.log('layui.element');
<script> });
//注意:element未作封装处理,使用layui.use引用 function cleancache() {
layui.use(['element'], function () { var a = hg.load(function () {
var element = layui.element; var that = this;
console.log('layui.element'); setTimeout(function () {
//that.close(); //关闭加载层
}); a.close();
function cleancache() { hg.msghide('清除服务器缓存成功.');
var a = hg.load(function () { }, 2000);
var that = this; })
setTimeout(function () { }
//that.close(); //关闭加载层 </script>
a.close(); <script type="text/javascript" src="~/lib/admin/jquery-1.9.1.min.js"></script>
hg.msghide('清除服务器缓存成功.'); <script type="text/javascript" src="~/lib/Scrollbar/jquery.scrollBar.js"></script>
}, 2000); <!-- 请求进度条插件 -->
}) <script src='~/lib/nprogress/nprogress.js'></script>
}</script>
<script type="text/javascript" src="~/lib/admin/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="~/lib/Scrollbar/jquery.scrollBar.js"></script>
<!-- 请求进度条插件 -->
<script src='~/lib/nprogress/nprogress.js'></script>
</body> </body>
</html> </html>

4
AMESCoreStudio.Web/Views/Home/Index.cshtml

@ -15,8 +15,8 @@
</head> </head>
<body> <body>
<div style="text-align:center; background:#fff;width:100%;height:100%;overflow:hidden"> <div style="text-align:center; background:#fff;width:100%;height:100%;overflow:hidden">
<div style="margin-top:16%;"> <div>
<img src="~/images/welcome.png" /> <img src="~/images/welcome.png" style="max-width: 100%; height: auto; width: auto; width: auto;" />
</div> </div>
</div> </div>
</body> </body>

13
AMESCoreStudio.Web/Views/Login/Index.cshtml

@ -46,14 +46,15 @@
<span style="color:firebrick;word-break: break-all;">@Html.ValidationSummary()</span> <span style="color:firebrick;word-break: break-all;">@Html.ValidationSummary()</span>
</div> </div>
</div> </div>
<div class="login-left"><img src="~/images/mes_logo.png" style="width:607px;height:445px;" asp-append-version="true" /></div> <div class="login-left"><img src="~/images/ames_logo.png" style="max-width: 100%; height: auto; width: auto; width: auto;" asp-append-version="true" /></div>
</div>
<div class="footer "> <div class="footer ">
<div class=" layui-row" style="width:980px; margin:0 auto;"> <div class=" layui-row" style="width:90%; margin:0 auto;">
<div class="layui-col-md6"><a href="#" style=" color: #fff;"></a></div> <div class="layui-col-md6"><a href="#" style=" color: #fff;"></a></div>
</div> </div>
</div> </div>
</form> </div>
</form>
<script>$(function () { <script>$(function () {
layui.use('form', function () { layui.use('form', function () {
var form = layui.form; var form = layui.form;

20
AMESCoreStudio.Web/Views/Shared/_Layout.cshtml

@ -9,7 +9,25 @@
</head> </head>
<body> <body>
<header> <header>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
<div class="container">
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">AMESCoreStudio.Web</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse">
<ul class="navbar-nav flex-grow-1">
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
</li>
</ul>
</div>
</div>
</nav>
</header> </header>
<div class="container" style="max-width:100%;padding-left:0px;padding-right:0px"> <div class="container" style="max-width:100%;padding-left:0px;padding-right:0px">
<main role="main" class="pb-3"> <main role="main" class="pb-3">

2
AMESCoreStudio.Web/Views/_ViewStart.cshtml

@ -1,3 +1,3 @@
@{ @{
Layout = "_Layout"; Layout = null;
} }

BIN
AMESCoreStudio.Web/wwwroot/images/ames_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

BIN
AMESCoreStudio.Web/wwwroot/images/welcome1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

2
AMESCoreStudio.Web/wwwroot/lib/admin/admin.css

@ -100,7 +100,7 @@ body{width: 100%;min-height: 100%;}
.layui-floor .layui-elem-quote {margin-bottom: 10px;margin-right: 20px;padding: 15px;line-height: 17px;border-left: 5px solid #d6d6d6;} .layui-floor .layui-elem-quote {margin-bottom: 10px;margin-right: 20px;padding: 15px;line-height: 17px;border-left: 5px solid #d6d6d6;}
/* 皮肤设置 */ /* 皮肤设置 */
#hgconfig .layui-elem-field legend {margin-left: 20px;padding: 0 10px;font-size: 14px;font-weight: 500;text-align: center;} #hgconfig .layui-elem-field legend {margin-left: 0px;padding: 0 20px;font-size: 14px;font-weight: 500;text-align: center;}
#hgconfig ul li {position: relative;display: inline-block;vertical-align: top;width: 100px; height: 50px;margin: 0 10px; margin-bottom: 16px;cursor: pointer;font-size: 12px; #hgconfig ul li {position: relative;display: inline-block;vertical-align: top;width: 100px; height: 50px;margin: 0 10px; margin-bottom: 16px;cursor: pointer;font-size: 12px;
} }

294
AMESCoreStudio.Web/wwwroot/lib/admin/admin.js

@ -1153,155 +1153,161 @@ layui.use(['layer', 'element', 'form', 'jquery'], function () {
events[t] && events[t].call(this, e) events[t] && events[t].call(this, e)
}); });
var events = { var events = {
//全屏 //全屏
fullscreen: function (m) { fullscreen: function (m) {
var a = "fa-arrows-alt", var a = "fa-arrows-alt",
t = "fa-compress", t = "fa-compress",
i = m.children("i"); i = m.children("i");
if(i.hasClass(a)){ if (i.hasClass(a)) {
i.addClass(t).removeClass(a); i.addClass(t).removeClass(a);
var e = document.documentElement, var e = document.documentElement,
a = e.requestFullScreen || e.webkitRequestFullScreen || e.mozRequestFullScreen || e.msRequestFullscreen; a = e.requestFullScreen || e.webkitRequestFullScreen || e.mozRequestFullScreen || e.msRequestFullscreen;
"undefined" != typeof a && a && a.call(e); "undefined" != typeof a && a && a.call(e);
}
else {
document.documentElement;
if(document.fullscreenElement){
document.exitFullscreen ? document.exitFullscreen() : document.mozCancelFullScreen ? document.mozCancelFullScreen() : document.webkitCancelFullScreen ? document.webkitCancelFullScreen() : document.msExitFullscreen && document.msExitFullscreen()
}
i.addClass(a).removeClass(t);
}
},
//皮肤设置
skinConfig: function (m) {
var clientHeight = (document.documentElement.clientHeight) - 55;
var html = $('.hg-config');
$.getJSON('config/skin.json', function (res) {
if (res && res.data) {
var ul = document.createElement("ul");
var config = events.getSkinConfig();
layui.each(res.data, function(arr,obj){
var li = document.createElement("li");
li.setAttribute("hg-event","skinChangeColor");
li.setAttribute("data-skin",arr);
if(arr == config.hg_skin){
li.setAttribute("class","layui-this");
} }
var a = $('<a href="javascript:;"> '+ else {
' <div> '+ document.documentElement;
' <span style="display:block; width: 100%; float: left; height: 12px; background: '+res.data[arr].header_bgcolor+';"></span> '+ if (document.fullscreenElement) {
' </div> '+ document.exitFullscreen ? document.exitFullscreen() : document.mozCancelFullScreen ? document.mozCancelFullScreen() : document.webkitCancelFullScreen ? document.webkitCancelFullScreen() : document.msExitFullscreen && document.msExitFullscreen()
' <div> '+ }
' <span style="display:block; width: 20%; float: left; height: 40px; background: '+res.data[arr].menu_bgcolor+';"></span> '+ i.addClass(a).removeClass(t);
' <span style="display:block; width: 80%; float: left; height: 40px; background: #f1f1f1;"></span> '+ }
' </div> '+ },
'</a> '); //皮肤设置
$(li).html(a); skinConfig: function (m) {
ul.appendChild(li); var clientHeight = (document.documentElement.clientHeight) - 55;
}); var html = $('.hg-config');
html.find('ul.skin').html(ul.children); $.getJSON('../config/skin.json', function (res) {
} if (res && res.data) {
}); var ul = document.createElement("ul");
var config = events.getSkinConfig();
layui.each(res.data, function (arr, obj) {
var li = document.createElement("li");
li.setAttribute("hg-event", "skinChangeColor");
li.setAttribute("data-skin", arr);
if (arr == config.hg_skin) {
li.setAttribute("class", "layui-this");
}
var a = $('<a href="javascript:;"> ' +
' <div> ' +
' <span style="display:block; width: 100%; float: left; height: 12px; background: ' + res.data[arr].header_bgcolor + ';"></span> ' +
' </div> ' +
' <div> ' +
' <span style="display:block; width: 20%; float: left; height: 40px; background: ' + res.data[arr].menu_bgcolor + ';"></span> ' +
' <span style="display:block; width: 80%; float: left; height: 40px; background: #f1f1f1;"></span> ' +
' </div> ' +
'</a> ');
$(li).html(a);
ul.appendChild(li);
});
html.find('ul.skin').html(ul.children);
}
});
layer.open({ layer.open({
type: 1, type: 1,
title: '皮肤设置', title: '皮肤设置',
btn: ['保存'], btn: ['保存'],
yes: function(index, layero){ yes: function (index, layero) {
var hg_skin = $('#'+this.id + ' li.layui-this').attr('data-skin'); var hg_skin = $('#' + this.id + ' li.layui-this').attr('data-skin');
var hg_fontsize = $('#'+this.id + ' input[name="fontsize"]:checked').val(); var hg_fontsize = $('#' + this.id + ' input[name="fontsize"]:checked').val();
events['saveSkinConfig'].call(this, {hg_skin:hg_skin,hg_fontsize:hg_fontsize}); events['saveSkinConfig'].call(this, { hg_skin: hg_skin, hg_fontsize: hg_fontsize });
}, },
closeBtn: 1, closeBtn: 1,
shade: 0.2, shade: 0.2,
anim: 2, //动画 anim: 2, //动画
resize: false, //禁止拉伸 resize: false, //禁止拉伸
scrollbar: true, //滚动条 scrollbar: false, //滚动条
move: false, //禁止拖拽 move: false, //禁止拖拽
shadeClose: false, //点击遮罩关闭 shadeClose: false, //点击遮罩关闭
id: 'hgconfig', id: 'hgconfig',
area: ['400px', clientHeight + 'px'], area: ['400px', clientHeight + 'px'],
offset: 'rb', offset: 'rb',
content: html, content: html,
success: function () { success: function () {
var config = events.getSkinConfig(); var config = events.getSkinConfig();
var data_skin = $('#'+this.id + ' li[data-skin='+config.hg_skin+']'); var data_skin = $('#' + this.id + ' li[data-skin=' + config.hg_skin + ']');
data_skin.addClass('layui-this').siblings().removeClass('layui-this'); data_skin.addClass('layui-this').siblings().removeClass('layui-this');
$('input[name="fontsize"][value='+config.hg_fontsize+']').next().click(); $('input[name="fontsize"][value=' + config.hg_fontsize + ']').next().click();
}, },
end: function () { end: function () {
events['initSkinConfig'].call(this); events['initSkinConfig'].call(this);
} }
}) })
}, },
//主题切换 //主题切换
skinChangeColor: function (m) { skinChangeColor: function (m) {
var hg_skin = $(this).attr('data-skin'); var hg_skin = $(this).attr('data-skin');
$(this).addClass('layui-this').siblings().removeClass('layui-this'); $(this).addClass('layui-this').siblings().removeClass('layui-this');
var hg_fontsize = $('#hgconfig input[name="fontsize"]:checked').val(); var hg_fontsize = $('#hgconfig input[name="fontsize"]:checked').val();
events['initSkinConfig'].call(this,{hg_skin:hg_skin,hg_fontsize:hg_fontsize}); events['initSkinConfig'].call(this, { hg_skin: hg_skin, hg_fontsize: hg_fontsize });
}, },
//字号切换 //字号切换
skinChangeWord: function (m) { skinChangeWord: function (m) {
console.log($(this)); console.log($(this));
}, },
//保存皮肤设置 //保存皮肤设置
saveSkinConfig: function (m) { saveSkinConfig: function (m) {
localStorage.setItem('hg_skin', m.hg_skin); localStorage.setItem('hg_skin', m.hg_skin);
localStorage.setItem('hg_fontsize', m.hg_fontsize); localStorage.setItem('hg_fontsize', m.hg_fontsize);
hg.msghide('保存成功!'); hg.msghide('保存成功!');
}, },
//获取皮肤设置 //获取皮肤设置
getSkinConfig: function(){ getSkinConfig: function () {
var hg_skin = localStorage.getItem('hg_skin') || 0; var hg_skin = localStorage.getItem('hg_skin') || 0;
var hg_fontsize = localStorage.getItem('hg_fontsize') || 'md'; //alert(hg_skin);
return { var hg_fontsize = localStorage.getItem('hg_fontsize') || 'md';
hg_skin:hg_skin,hg_fontsize:hg_fontsize //alert(hg_fontsize);
}; return {
}, hg_skin: hg_skin, hg_fontsize: hg_fontsize
//删除皮肤设置 };
delSkinConfig: function (m) { },
localStorage.removeItem('hg_skin'); //删除皮肤设置
localStorage.removeItem('hg_fontsize'); delSkinConfig: function (m) {
events.initSkinConfig(); localStorage.removeItem('hg_skin');
}, localStorage.removeItem('hg_fontsize');
//初始化皮肤 events.initSkinConfig();
initSkinConfig: function (m) { },
if($('body').hasClass('layui-layout-body')){ //初始化皮肤
var config = m || events.getSkinConfig(); initSkinConfig: function (m) {
var hg_skin = config.hg_skin; if ($('body').hasClass('layui-layout-body')) {
var hg_fontsize = config.hg_fontsize; var config = m || events.getSkinConfig();
$('head').find('style#skinConfig').remove(); var hg_skin = config.hg_skin;
if (hg_skin) { var hg_fontsize = config.hg_fontsize;
$.getJSON('config/skin.json', function (res) { //alert(hg_skin);
if (res && res.data) { //alert(hg_fontsize);
var style = document.createElement("style"); $('head').find('style#skinConfig').remove();
style.id = 'skinConfig'; if (hg_skin) {
style.innerHTML = '.layui-layout-admin .layui-header{background-color: '+res.data[hg_skin].header_bgcolor+';} '+ $.getJSON('../config/skin.json', function (res) {
'.layui-left-nav{background-color:'+res.data[hg_skin].menu_bgcolor+';} '+ if (res && res.data) {
'.layui-left-nav .sub-tab a.active{background: '+res.data[hg_skin].menu_bgcolor_this+';color: #fff} '+ var style = document.createElement("style");
'.layui-left-nav a.border{border-color: '+res.data[hg_skin].menu_border_color+' !important;} '; style.id = 'skinConfig';
if(hg_fontsize==='lg'){ style.innerHTML = '.layui-layout-admin .layui-header{background-color: ' + res.data[hg_skin].header_bgcolor + ';} ' +
style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 16px;}'; '.layui-left-nav{background-color:' + res.data[hg_skin].menu_bgcolor + ';} ' +
} '.layui-left-nav .sub-tab a.active{background: ' + res.data[hg_skin].menu_bgcolor_this + ';color: #fff} ' +
if(hg_fontsize==='sm'){ '.layui-left-nav a.border{border-color: ' + res.data[hg_skin].menu_border_color + ' !important;} ';
style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 13px;}'; if (hg_fontsize === 'lg') {
} style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 16px;}';
if(hg_fontsize==='xs'){ }
style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 12px;}'; if (hg_fontsize === 'sm') {
} style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 13px;}';
document.head.appendChild(style); }
$('.layui-layout-body').show(); if (hg_fontsize === 'xs') {
style.innerHTML += '.layui-page-content .layui-tab-title li{font-size: 12px;}';
}
document.head.appendChild(style);
$('.layui-layout-body').show();
//alert(style.outerHTML);
}
});
}
else {
$('.layui-layout-body').show();
}
} }
});
}
else{
$('.layui-layout-body').show();
} }
}
} }
}
// 动态添加索引顶部导航对应meun_id // 动态添加索引顶部导航对应meun_id

Loading…
Cancel
Save