|
|
<!--默认布局-->
|
|
|
<div class="layui-layout layui-layout-admin">
|
|
|
<script>
|
|
|
var show = location.search.substr(1).split("&")[0].split("=")[1];
|
|
|
if(show === '0'){
|
|
|
document.querySelector("body").classList.add("layout-nav-hide");
|
|
|
}
|
|
|
|
|
|
var editFlag = location.search.substr(1).split("&")[1];
|
|
|
if(editFlag){
|
|
|
var name = editFlag.split("=")[0];
|
|
|
var val = editFlag.split("=")[1] == "true"?true:false;
|
|
|
if(name === "editFlag"){
|
|
|
localStorage.setItem("editFlag",val);
|
|
|
}
|
|
|
}
|
|
|
var menuIsopen = 'false';
|
|
|
layui.use(['jquery'], function () {
|
|
|
var $ = layui.jquery;
|
|
|
// 读取配置文件
|
|
|
$.ajax({
|
|
|
url: sessionStorage.getItem('domainName') + '/api-web/sysConf/getByCode',
|
|
|
async: false,
|
|
|
data: {
|
|
|
code: 'view_menu_isopen',
|
|
|
access_token: localStorage.getItem('access_token')
|
|
|
},
|
|
|
success(response) {
|
|
|
if (response && response.success && response.object) {
|
|
|
menuIsopen = response.object.value;
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
|
|
|
|
|
|
</script>
|
|
|
<div class="layui-header">
|
|
|
<!-- 头部区域 -->
|
|
|
<ul class="layui-nav layui-layout-left">
|
|
|
<li class="layui-nav-item layadmin-flexible" lay-unselect>
|
|
|
<a href="javascript:;" layadmin-event="flexible" title="侧边伸缩">
|
|
|
<i class="layui-icon layui-icon-shrink-right" id="LAY_app_flexible"></i>
|
|
|
</a>
|
|
|
</li>
|
|
|
<!--判定是否有daping角色,如果有则显示该菜单 joke add 20211203-->
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/users/checkHasRole?roleCode=daping">
|
|
|
{{# if(d.count > 0){ }}
|
|
|
<li class="layui-nav-item" lay-tips="展示大屏">
|
|
|
<a href="javascript:;" layadmin-event="toBigScreen" ><img src="/src/style/img/icon-daping.png" style="width: 16px;height: 16px"></a>
|
|
|
</li>
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-web/sxview/getbizListByUser?access_token={{localStorage.getItem('access_token')}}">
|
|
|
|
|
|
{{# if(d.data.length>0){ }}
|
|
|
<li class="layui-nav-item" >
|
|
|
|
|
|
<div id="toYTHView_div" >
|
|
|
<dd layadmin-event="toYTHViewScreen" title="一体化监控台"><a><img src="/src/style/img/icon-yitihuadaping.png" style="width: 16px;height: 16px"></a></dd>
|
|
|
</div>
|
|
|
</li>
|
|
|
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
|
|
|
|
|
|
<li class="layui-nav-item" lay-unselect>
|
|
|
<a href="javascript:;" layadmin-event="refresh" title="刷新">
|
|
|
<i class="layui-icon layui-icon-refresh-3"></i>
|
|
|
</a>
|
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
|
<img src="/src/style/img/logo.png" class="logo">
|
|
|
<ul class="layui-nav layui-layout-right" lay-filter="layadmin-layout-right">
|
|
|
<!--搜索框检索-->
|
|
|
<!-- <li class="layui-nav-item layui-hide-xs">-->
|
|
|
<!-- <input type="text" class="layui-input" id="allSearchKeywords" style="margin-top: 6px">-->
|
|
|
<!-- </li>-->
|
|
|
<li class="layui-nav-item layui-hide-xs" lay-tips="全局搜索">
|
|
|
<a href="javascript:;" layadmin-event="globalSearch"><i class="layui-icon layui-icon-search"></i></a>
|
|
|
</li>
|
|
|
<!-- xwx add 首页增加业务健康度入口 2021-10-25 start-->
|
|
|
<li class="layui-nav-item" lay-unselect>
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/users/getUserByToken">
|
|
|
<a href="javascript:;"><img src="/src/style/img/icon-1.png" style="width: 16px;height: 16px;"></a>
|
|
|
{{#
|
|
|
var roles = '';
|
|
|
layui.each(d.object.sysRoles, function(idx, role){
|
|
|
roles += role.code+",";
|
|
|
});
|
|
|
}}
|
|
|
<li><input type="hidden" id="hq_entrance" value="{{roles}}"></li>
|
|
|
<dl class="layui-nav-child">
|
|
|
<!--调整到刷新旁边,此处去掉 lu 屏蔽 20211130-->
|
|
|
<!-- <dd layadmin-event="toBigScreen" style="text-align: left;"><a><img src="/src/style/img/icon-daping.png" style="width: 16px;height: 16px"> 大屏</a></dd>-->
|
|
|
<dd layadmin-event="toDZSWJScreen" style="text-align: left;"><a><img src="/src/style/img/icon-dianzishuiwuju.png" style="width: 16px;height: 16px"> 电子税务局大屏</a></dd>
|
|
|
<!--调整到首页旁边,此处去掉 joke 屏蔽 20211129-->
|
|
|
<!-- <dd layadmin-event="toYTHViewScreen" style="text-align: left;"><a><img src="/src/style/img/icon-yitihuadaping.png" style="width: 16px;height: 16px"> 一体化视图</a></dd>-->
|
|
|
<dd layadmin-event="toBiZhEalZhSYS" style="text-align: left;"><a><img src="/src/style/img/icon-YWJKD.png" style="width: 16px;height: 16px"> 业务健康度</a></dd>
|
|
|
<dd layadmin-event="toCMDB" style="text-align: left;"><a><img src="/src/style/img/icon-CMDB.png" style="width: 16px;height: 16px"> CMDB</a></dd>
|
|
|
</dl>
|
|
|
</script>
|
|
|
</li>
|
|
|
<!-- xwx add 首页增加业务健康度入口 2021-10-25 end-->
|
|
|
<!-- <li class="layui-nav-item" lay-tips="一体化视图">-->
|
|
|
<!-- <!– <a href="javascript:;" layadmin-event="toYTHViewScreen"><i class="layui-icon layui-icon-chart-screen"></i></a>–>-->
|
|
|
<!-- <a href="javascript:;" layadmin-event="toYTHViewScreen" ><img src="/src/style/img/icon-yitihuadaping.png" style="width: 16px;height: 16px"></a>-->
|
|
|
<!-- </li>-->
|
|
|
<!-- <li class="layui-nav-item" lay-tips="大屏">-->
|
|
|
<!-- <!– <a href="javascript:;" layadmin-event="toBigScreen"><i class="layui-icon layui-icon-chart-screen"></i></a>–>-->
|
|
|
<!-- <a href="javascript:;" layadmin-event="toBigScreen" ><img src="/src/style/img/icon-daping.png" style="width: 16px;height: 16px"></a>-->
|
|
|
<!-- </li>-->
|
|
|
<!-- <li class="layui-nav-item" lay-tips="电子税务局">-->
|
|
|
<!-- <!– <a href="javascript:;" layadmin-event="toBigScreen"><i class="layui-icon layui-icon-chart-screen"></i></a>–>-->
|
|
|
<!-- <a href="javascript:;" layadmin-event="toDZSWJScreen" ><img src="/src/style/img/icon-dianzishuiwuju.png" style="width: 16px;height: 16px"></a>-->
|
|
|
<!-- </li>-->
|
|
|
<li class="layui-nav-item layui-show-xs-inline-block layui-hide-sm" lay-unselect>
|
|
|
<a href="javascript:;" layadmin-event="more"><i class="layui-icon layui-icon-more-vertical"></i></a>
|
|
|
</li>
|
|
|
<!-- <li class="layui-nav-item layui-hide-xs" lay-unselect>
|
|
|
<a href="javascript:;" layadmin-event="theme">
|
|
|
<i class="layui-icon layui-icon-theme"></i>
|
|
|
</a>
|
|
|
</li>-->
|
|
|
<li class="layui-nav-item layui-hide-xs" lay-unselect>
|
|
|
<a href="javascript:;" layadmin-event="fullscreen">
|
|
|
<i class="layui-icon layui-icon-screen-full"></i>
|
|
|
</a>
|
|
|
</li>
|
|
|
<!-- 报表通知统计 -->
|
|
|
<li class="layui-nav-item" lay-unselect>
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-web/home/messageRemind">
|
|
|
<a href="javascript:;" class="notice_msg">
|
|
|
<i class="layui-icon layui-icon-notice"></i><span>{{d.map==null? 0 : d.map.totalCountByUser}}</span>
|
|
|
</a>
|
|
|
<dl class="layui-nav-child">
|
|
|
<dd><a href="javascript:;" lay-href="/alarm/activewarning">活动告警:{{d.map==null? 0 : d.map.totalCountByUser}}</a></dd>
|
|
|
<!-- <hr>-->
|
|
|
<!-- <dd><a href="javascript:;" lay-href="/iframe/insp/monitor/flag=0">未处理报表:{{d.map==null? 0 : d.map.statusCountByUser}}</a></dd>-->
|
|
|
<!-- <hr>-->
|
|
|
<!-- <dd><a href="javascript:;" lay-href="/iframe/insp/workview/read=0/type=1">工作汇报未读:{{d.map==null? 0 : d.map.notReadCountByUser}}</a></dd>-->
|
|
|
<!-- <hr>-->
|
|
|
<!-- <dd><a href="javascript:;" lay-href="/iframe/insp/notice/t=day">今日通知:{{d.map==null? 0 : d.map.countByUserAndToday}}</a></dd>-->
|
|
|
</dl>
|
|
|
</script>
|
|
|
</li>
|
|
|
|
|
|
<li class="layui-nav-item" lay-unselect>
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/users/getUserByToken"
|
|
|
lay-done="layui.element.render('nav', 'layadmin-layout-right');">
|
|
|
<a href="javascript:;">
|
|
|
欢迎 <cite style="color: #1E9FFF" user-info>{{d.object.nickname}}</cite>
|
|
|
</a>
|
|
|
{{#
|
|
|
var roles = '';
|
|
|
layui.each(d.object.sysRoles, function(idx, role){
|
|
|
roles += role.code+",";
|
|
|
});
|
|
|
}}
|
|
|
<li><input type="hidden" id="user_roles" value="{{roles}}"></li>
|
|
|
<dl class="layui-nav-child">
|
|
|
<dd layadmin-event="updtpswd" style="text-align: center;"><a>修改密码</a></dd>
|
|
|
<dd user-info layadmin-event="changeInfo" style="text-align: center;"><a>修改信息</a></dd>
|
|
|
<dd layadmin-event="logout" style="text-align: center;"><a>退出</a></dd>
|
|
|
</dl>
|
|
|
</script>
|
|
|
</li>
|
|
|
|
|
|
<!-- <script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/users/getUserByToken"-->
|
|
|
<!-- lay-done="layui.element.render('nav', 'layadmin-text-name');">-->
|
|
|
<!-- <li class="layui-nav-item layui-hide-xs" lay-unselect lay-filter="layadmin-text-name">-->
|
|
|
<!-- <a href="javascript:;" style="text-align: center;" >欢迎 <b id="user-name" lay-tips="点击退出" layadmin-event="logout" style="color: #3d9fe6">{{d.object.nickname }}</b></a>-->
|
|
|
<!-- </li>-->
|
|
|
<!-- </script>-->
|
|
|
</ul>
|
|
|
</div>
|
|
|
|
|
|
<!-- 侧边菜单 -->
|
|
|
<!-- 先获取默认菜单拼接 d.str 返回数据格式 modeleid#path-->
|
|
|
<!-- 如果配置默认首页,则给默认首页,否则给工作台(moduleid为work,path为work/index)-->
|
|
|
|
|
|
<div class="layui-side layui-side-menu">
|
|
|
<div class="layui-side-scroll">
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/menus/current?type=1"
|
|
|
lay-done="layui.element.render('nav', 'layadmin-system-side-menu');" id="TPL_layout">
|
|
|
|
|
|
{{#
|
|
|
var dataName = layui.setter.response.dataName;
|
|
|
var fisthref = "/index";
|
|
|
var defaultMenu = d.str;
|
|
|
var defaultModuleid = '';
|
|
|
var defaultPath = '';
|
|
|
if(defaultMenu && defaultMenu != ''){
|
|
|
defaultModuleid = d.str.split('#')[0];
|
|
|
defaultPath = d.str.split('#')[1];
|
|
|
fisthref = defaultPath;
|
|
|
}
|
|
|
}}
|
|
|
|
|
|
<div class="layui-logo" lay-href="{{fisthref}}">
|
|
|
<span>{{ layui.setter.name || 'layuiAdmin' }}</span>
|
|
|
</div>
|
|
|
|
|
|
<ul class="layui-nav layui-nav-tree" lay-shrink="all" id="LAY-system-side-menu"
|
|
|
lay-filter="layadmin-system-side-menu">
|
|
|
{{#
|
|
|
var show = location.search.substr(1).split("&")[0].split("=")[1];
|
|
|
if(show == '1') window.history.pushState({} ,'' ,'#');
|
|
|
if(show != '0') location.hash = "/";
|
|
|
|
|
|
var path = layui.router().path
|
|
|
,pathURL = layui.admin.correctRouter(path.join('/'))
|
|
|
,dataName = layui.setter.response.dataName;
|
|
|
var fistModuleid = '';
|
|
|
if(d && d[dataName].length>0){
|
|
|
fistModuleid = d[dataName][0].moduleid;
|
|
|
}
|
|
|
|
|
|
layui.each(d[dataName], function(index, item){
|
|
|
var isselectd = '';
|
|
|
var isSelectedModuleid = '';
|
|
|
if(defaultModuleid != '' || item.moduleid != ''){
|
|
|
if(item.moduleid == defaultModuleid){
|
|
|
isselectd = "layui-this";
|
|
|
}else{
|
|
|
isselectd = "";
|
|
|
}
|
|
|
}else {
|
|
|
if(!defaultModuleid || defaultModuleid == ''){
|
|
|
if(index = 0){
|
|
|
isselectd = "layui-this";
|
|
|
}
|
|
|
}else{
|
|
|
isselectd = "";
|
|
|
}
|
|
|
}
|
|
|
var hasChildren = typeof item.subMenus === 'object' && item.subMenus && item.subMenus.length > 0
|
|
|
,classSelected = function(){
|
|
|
var match = path[0] == item.moduleid || (index == 0 && !path[0]) || (item.path && pathURL ==
|
|
|
layui.admin.correctRouter(item.path)) || item.spread;
|
|
|
if(match){
|
|
|
return hasChildren ? 'layui-nav-itemed' : 'layui-nav-itemed';
|
|
|
}
|
|
|
return '';
|
|
|
}
|
|
|
,url = (item.path && typeof item.path === 'string') ? item.path : item.moduleid;
|
|
|
var closeMenuEvent = '';
|
|
|
if(item.moduleid == 'biz' || item.moduleid == 'res'){ closeMenuEvent = 'closeMenu'}
|
|
|
}}
|
|
|
|
|
|
<li data-name="{{ item.moduleid || '' }}" data-jump="{{ item.path || '' }}"
|
|
|
class="layui-nav-item {{ menuIsopen == 'true' ? 'layui-nav-itemed' : '' }} {{isselectd}}">
|
|
|
|
|
|
{{# if(item.moduleid == 'cmdbsys' || item.moduleid == 'sxview' || item.moduleid == 'dpsys'){ }}
|
|
|
<a href="javascript:;" layadmin-event="{{item.moduleid}}" lay-tips="{{ item.name
|
|
|
}}" lay-direction="2">
|
|
|
<i class="layui-icon {{ item.css }}"></i>
|
|
|
<cite>{{ item.name }}</cite>
|
|
|
</a>
|
|
|
{{# } }}
|
|
|
{{# if(item.moduleid != 'cmdbsys' && item.moduleid != 'sxview' && item.moduleid != 'dpsys'){ }}
|
|
|
<a href="javascript:;" {{ hasChildren ? '' : 'lay-href="'+ url +'"' }} layadmin-event="{{closeMenuEvent}}" lay-tips="{{ item.name
|
|
|
}}" lay-direction="2">
|
|
|
<i class="layui-icon {{ item.css }}"></i>
|
|
|
<cite>{{ item.name }}</cite>
|
|
|
</a>
|
|
|
|
|
|
{{# } }}
|
|
|
|
|
|
|
|
|
{{# if(hasChildren){ }}
|
|
|
<dl class="layui-nav-child">
|
|
|
{{# layui.each(item.subMenus, function(index2, item2){
|
|
|
if(item2.moduleid && item2.moduleid == defaultModuleid){
|
|
|
isselectd = "layui-this";
|
|
|
}else{
|
|
|
isselectd = "";
|
|
|
}
|
|
|
var hasChildren2 = typeof item2.subMenus == 'object' && item2.subMenus &&
|
|
|
item2.subMenus.length > 0
|
|
|
,classSelected2 = function(){
|
|
|
var match = (path[0] == item.moduleid && path[1] == item2.moduleid) || (item2.path &&
|
|
|
pathURL == layui.admin.correctRouter(item2.path)) || item2.spread;
|
|
|
return '';
|
|
|
}
|
|
|
,url2 = (item2.path && typeof item2.path === 'string')
|
|
|
? item2.path
|
|
|
: [item.moduleid, item2.moduleid, ''].join('/');
|
|
|
}}
|
|
|
<dd data-name="{{ item2.moduleid || '' }}" data-jump="{{ item2.path || '' }}"
|
|
|
class="layui-nav-item {{ classSelected2() }} {{isselectd}}"
|
|
|
>
|
|
|
{{# if(item2.menuDesc.indexOf('第三方') == '-1') {}}
|
|
|
<a href="javascript:;" {{ hasChildren2 ? '' : 'lay-href="'+ url2 +'"' }}>{{ item2.name }}</a>
|
|
|
{{# }else{ }}
|
|
|
<a href="javascript:;" {{ hasChildren2 ? '' : 'data-url="'+ url2 +'" layadmin-event="IntegratedEntrance"' }} data-moduleid="{{item2.moduleid}}">{{ item2.name }}</a>
|
|
|
{{# } }}
|
|
|
{{# if(hasChildren2){ }}
|
|
|
<dl class="layui-nav-child {{}}">
|
|
|
{{# layui.each(item2.subMenus, function(index3, item3){
|
|
|
var match = (path[0] == item.moduleid && path[1] == item2.moduleid && path[2] ==
|
|
|
item3.moduleid)
|
|
|
|| (item3.path && pathURL == layui.admin.correctRouter(item3.path))
|
|
|
,url3 = (item3.path && typeof item3.path === 'string')
|
|
|
? item3.path
|
|
|
: [item.moduleid, item2.moduleid, item3.moduleid].join('/')
|
|
|
}}
|
|
|
<dd data-name="{{ item3.moduleid || '' }}" data-jump="{{ item3.path || '' }}">
|
|
|
{{# if(item2.menuDesc.indexOf('第三方') == '-1') {}}
|
|
|
<a href="javascript:;" lay-href="{{ url3 }}" {{ item3.iframe ? 'lay-iframe="true"' : ''}}>{{ item3.name }}</a>
|
|
|
{{# }else{ }}
|
|
|
<a href="javascript:;" data-url="{{ url3 }}" layadmin-event="IntegratedEntrance" data-moduleid="{{item3.moduleid}}">{{ item3.name }}</a>
|
|
|
{{# } }}
|
|
|
</dd>
|
|
|
{{# }); }}
|
|
|
</dl>
|
|
|
{{# } }}
|
|
|
</dd>
|
|
|
{{# }); }}
|
|
|
</dl>
|
|
|
{{# } }}
|
|
|
</li>
|
|
|
{{# }); }}
|
|
|
</ul>
|
|
|
</script>
|
|
|
</div>
|
|
|
<div class="right-bottom-tips"></div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 页面标签 -->
|
|
|
<script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/menus/findSettingDefaultMenus"
|
|
|
lay-done="layui.element.render('nav', 'layadmin-pagetabs-nav')">
|
|
|
<div class="layadmin-pagetabs" id="LAY_app_tabs">
|
|
|
<div class="layui-icon layadmin-tabs-control layui-icon-prev" layadmin-event="leftPage"></div>
|
|
|
<div class="layui-icon layadmin-tabs-control layui-icon-next" layadmin-event="rightPage"></div>
|
|
|
<div class="layui-icon layadmin-tabs-control layui-icon-down">
|
|
|
|
|
|
<ul class="layui-nav layadmin-tabs-select" lay-filter="layadmin-pagetabs-nav">
|
|
|
<li class="layui-nav-item" lay-unselect>
|
|
|
<a href="javascript:;"></a>
|
|
|
<dl class="layui-nav-child layui-anim-fadein">
|
|
|
<dd layadmin-event="closeThisTabs"><a href="javascript:;">关闭当前标签页</a></dd>
|
|
|
<dd layadmin-event="closeOtherTabs"><a href="javascript:;">关闭其它标签页</a></dd>
|
|
|
<dd layadmin-event="closeAllTabs"><a href="javascript:;">关闭全部标签页</a></dd>
|
|
|
</dl>
|
|
|
</li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
<!-- <script type="text/html" template lay-url="{{sessionStorage.getItem('domainName')}}/api-user/users/getUserByToken">-->
|
|
|
|
|
|
<!-- <div id="toYTHView_div" style="padding:0 10px;float: left;">-->
|
|
|
<!-- <dd layadmin-event="toYTHViewScreen" title="一体化控制台"><a><img src="/src/style/img/icon-yitihuadaping.png" style="width: 16px;height: 16px"></a></dd>-->
|
|
|
<!-- </div>-->
|
|
|
|
|
|
<div class="layui-tab" lay-unauto lay-allowClose="true" lay-filter="layadmin-layout-tabs">
|
|
|
|
|
|
<ul class="layui-tab-title" id="LAY_app_tabsheader">
|
|
|
|
|
|
{{# if(d.data.length >= 1 ){ }}
|
|
|
{{# if(d.data[0].moduleid == 'index'){ }}
|
|
|
<li lay-id="/"><i class="layui-icon layui-icon-home"></i></li>
|
|
|
{{# } }}
|
|
|
{{# if(d.data[0].moduleid != 'index'){ }}
|
|
|
<li lay-id="/{{d.data[0].moduleid}}/" lay-attr="/{{d.data[0].moduleid}}/"><i class="layui-icon layui-icon-home"></i></li>
|
|
|
{{# } }}
|
|
|
{{# } }}
|
|
|
{{# if(d.data.length == 0){ }}
|
|
|
<li lay-id="/"><i class="layui-icon layui-icon-home"></i></li>
|
|
|
{{# } }}
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
</div>
|
|
|
</div>
|
|
|
</script>
|
|
|
|
|
|
|
|
|
<!-- 主体内容 -->
|
|
|
<div class="layui-body" id="LAY_app_body">
|
|
|
<!-- 单页模式接入-->
|
|
|
<div class="layadmin-tabsbody-item layui-show"></div>
|
|
|
</div>
|
|
|
|
|
|
<!-- 辅助元素,一般用于移动设备下遮罩 -->
|
|
|
<div class="layadmin-body-shade" layadmin-event="shade"></div>
|
|
|
</div>
|
|
|
|
|
|
<!--告警操作记录-->
|
|
|
<script type="text/html" id="warnViewWinTpl">
|
|
|
<div class="warn-win">
|
|
|
<div class="warn-win-item">
|
|
|
<h5>告警确认【{{d.confirm.length}}】</h5>
|
|
|
{{# layui.each(d.confirm, function(index, item){ }}
|
|
|
<div class="warn-win-item-con">
|
|
|
<span>{{layui.util.toDateString(item.confirmTime)}}</span>
|
|
|
<ul>
|
|
|
<li>备注:{{item.remark}}</li>
|
|
|
<li>告警确认人:{{item.confirmUserId}}</li>
|
|
|
<li>紧急程度:{{item.levelName}}</li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
{{# }); }}
|
|
|
</div>
|
|
|
<div class="warn-win-item">
|
|
|
<h5>告警关闭【{{d.close.length}}】</h5>
|
|
|
{{# layui.each(d.close, function(index, item){ }}
|
|
|
{{# var closeTypeStr = '告警'}}
|
|
|
{{# if(item.closeType == 1){ closeTypeStr = '通知' } }}
|
|
|
<div class="warn-win-item-con">
|
|
|
<span>备注:{{item.remark}}</span>
|
|
|
<ul>
|
|
|
<li>告警关闭时间:{{layui.util.toDateString(item.closeTime)}}</li>
|
|
|
<li>告警关闭人:{{item.closeUserId}}</li>
|
|
|
<li>关闭范围:{{closeTypeStr}}</li>
|
|
|
<li>关闭时长:{{item.closeDuration}}小时</li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
{{# }); }}
|
|
|
</div>
|
|
|
<div class="warn-win-item">
|
|
|
<h5>告警恢复【{{d.resume.length}}】</h5>
|
|
|
{{# layui.each(d.resume, function(index, item){ }}
|
|
|
{{# var resumeTypeStr = '恢复关闭的活动告警'}}
|
|
|
{{# if(item.resumeType == 1){resumeTypeStr = '恢复历史告警' } }}
|
|
|
<div class="warn-win-item-con">
|
|
|
<span>备注:{{item.remark}}</span>
|
|
|
<ul>
|
|
|
<li>告警恢复时间:{{layui.util.toDateString(item.resumeTime)}}</li>
|
|
|
<li>告警恢复人:{{item.resumeUserId}}</li>
|
|
|
<li>恢复类型:{{resumeTypeStr}}</li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
{{# }); }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</script>
|
|
|
|
|
|
<!--详细页左侧面板-->
|
|
|
<script type="text/html" id="detailPageLeftPanel">
|
|
|
<div class="detail-left-panel">
|
|
|
<a class="detail-left-panel-btn" href="javascript:void(0)"><i class="layui-icon layui-icon-next"></i></a>
|
|
|
<div class="detail-left-panel-node" style="display: none">
|
|
|
{{# layui.each(d.map, function(k, v){ }}
|
|
|
<div class="left-panel-restype">
|
|
|
<div class="layui-title">{{v[0].reTypeName}}</div>
|
|
|
<div class="">
|
|
|
{{# layui.each(v, function(i, e){ }}
|
|
|
<div class="info-box link"
|
|
|
data-resid="{{e.targetId}}"
|
|
|
data-restype="{{e.resType}}"
|
|
|
data-restypename="{{e.resTypeName}}"
|
|
|
data-ip="{{e.ip}}"
|
|
|
data-admin="{{e.admin}}"
|
|
|
>
|
|
|
{{e.targetName}}
|
|
|
</div>
|
|
|
{{# }); }}
|
|
|
</div>
|
|
|
</div>
|
|
|
{{# }); }}
|
|
|
{{# if(!Object.keys(d.map).length) { }}
|
|
|
<div class="left-panel-restype">
|
|
|
<div class="desc-box">
|
|
|
暂无关联关系
|
|
|
</div>
|
|
|
</div>
|
|
|
{{# } }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</script>
|
|
|
|
|
|
<!--下探top30表格展示内容-->
|
|
|
<script type="text/html" id="detailKpiTableTpl">
|
|
|
<table class="layui-table" lay-even="" lay-skin="row">
|
|
|
<colgroup>
|
|
|
<col width="100">
|
|
|
<col width="150">
|
|
|
<col width="180">
|
|
|
<col width="180">
|
|
|
</colgroup>
|
|
|
<thead>
|
|
|
<tr>
|
|
|
<th>序号</th>
|
|
|
<th>进程号</th>
|
|
|
<th>所属用户</th>
|
|
|
{{# if(d.kpi == 'KPI7054BC34'){ }}
|
|
|
<th>使用率</th>
|
|
|
{{# } }}
|
|
|
{{# if(d.kpi != 'KPI7054BC34'){ }}
|
|
|
<th>使用量</th>
|
|
|
{{# } }}
|
|
|
</tr>
|
|
|
</thead>
|
|
|
<tbody>
|
|
|
{{# layui.each(d.data, function(index, item){ }}
|
|
|
<tr>
|
|
|
<td>{{index + 1}}</td>
|
|
|
<td>{{item.pid}}</td>
|
|
|
<td>{{item.username}}</td>
|
|
|
<td>{{item.usedPercent}}</td>
|
|
|
<!--<td>{{item.info}}</td>-->
|
|
|
</tr>
|
|
|
{{# }); }}
|
|
|
</tbody>
|
|
|
</table>
|
|
|
</script>
|
|
|
|
|
|
<!--corn表达式-->
|
|
|
<script type="text/html" id="cronHtml" >
|
|
|
<div id="cronContent" style="color:#000000">
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(255, 0, 0);">常用表达式例子</span></strong>
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
<span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(255, 0, 0);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 0);">(1)</span></span><strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0/2 * * * * ?</span></strong> </span> 表示每2秒 执行任务
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
<span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(255, 0, 0);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 0);">(1)</span></span><strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0/2 * * * ? </span></strong> </span> 表示每2分钟 执行任务
|
|
|
</p>
|
|
|
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
<span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(255, 0, 0);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 0);">(1)</span></span><strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0 2 1 * ?</span></strong> </span> 表示在每月的1日的凌晨2点调整任务
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
<span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 0);">(2)</span></span><strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * MON-FRI</span> </strong> 表示周一到周五每天上午10:15执行作业
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(3)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? 6L 2002-2006</span></strong> 表示2002-2006年的每个月的最后一个星期五上午10:15执行作
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(4)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0 10,14,16 * * ?</span></strong> 每天上午10点,下午2点,4点
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(5)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0/30 9-17 * * ?</span></strong> 朝九晚五工作时间内每半小时
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(6)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0 12 ? * WED</span></strong> 表示每个星期三中午12点
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(7)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0 12 * * ?</span></strong> 每天中午12点触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(8)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * * </span></strong> 每天上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(9)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 * * ?</span></strong> 每天上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(10)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 * * ?</span> </strong> 每天上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(11)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 * * ? 2005</span></strong> 2005年的每天上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(12)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 * 14 * * ?</span></strong> 在每天下午2点到下午2:59期间的每1分钟触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(13)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0/5 14 * * ?</span></strong> 在每天下午2点到下午2:55期间的每5分钟触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(14)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0/5 14,18 * * ?</span></strong> 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(15)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 0-5 14 * * ?</span> </strong> 在每天下午2点到下午2:05期间的每1分钟触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(16)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 10,44 14 ? 3 WED</span></strong> 每年三月的星期三的下午2:10和2:44触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(17)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * MON-FRI</span> </strong> 周一至周五的上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(18)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 15 * ?</span> </strong> 每月15日上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(19)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 L * ?</span> </strong> 每月最后一日的上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(20)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * 6L</span> </strong> 每月的最后一个星期五上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(21)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * 6L 2002-2005</span></strong> 2002年至2005年的每月的最后一个星期五上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
(22)<strong style="margin: 0px; padding: 0px;"><span style="margin: 0px; padding: 0px; line-height: 18px; color: rgb(0, 0, 255);">0 15 10 ? * 6#3</span></strong> 每月的第三个星期五上午10:15触发
|
|
|
</p>
|
|
|
<p style="margin: 10px auto; padding: 0px;">
|
|
|
|
|
|
</p>
|
|
|
</div>
|
|
|
</script>
|
|
|
|
|
|
<!--资源名称-->
|
|
|
<script type="text/html" id="resindex_resName">
|
|
|
<!-- 更改单元格溢出时的tip跑到左上角 LSQ 2022/1/6-->
|
|
|
<div id="res-div">
|
|
|
{{# var urlLast=window.location.hash;
|
|
|
var w=$(".layui-table thead th[data-field='resName']").data('minwidth');
|
|
|
if(urlLast=="#/res/index"){
|
|
|
w=$("[lay-id='resListTable'] table thead th[data-field='resName'").data('minwidth');
|
|
|
|
|
|
}else if(urlLast=="#/biz/index"){
|
|
|
w=$("[lay-id='bizListTable'] table thead th[data-field='resName'").data('minwidth');
|
|
|
}
|
|
|
var maxW=(w-45)+'px';
|
|
|
var styleW="float: left;max-width: "+maxW+";overflow: hidden; text-overflow: ellipsis; white-space: nowrap;display: inline-block;";
|
|
|
}}
|
|
|
<span lay-tips="{{ d.resName }}" style="{{styleW}}" data-zymc="{{ d.resId }}" data-restype="{{d.resType}}" data-name="{{d.resName}}" data-childrennum="{{d.childrenNum}}" data-ip="{{ d.ip }}" data-resTypeName="{{ d.resTypeName }}" data-admin="{{ d.admin }}" data-adminname="{{ d.adminName }}" data-pingenable="{{d.pingEnable}}" data-manageIp="{{d.manageIp}}" data-collProtocol="{{d.collProtocol}}" data-provider="{{d.provider}}" data-state="{{d.state}}" class="layui-table-link">{{ d.resName }}</span>
|
|
|
{{# if (d.favId == null) { }}
|
|
|
<a class="layui-icon layui-icon-rate hide" data-favid="{{d.favId}}" data-id="{{d.resId}}" lay-tips="加入收藏夹" style="font-size: 14px"></a>
|
|
|
{{# } else { }}
|
|
|
<a class="layui-icon layui-icon-rate-solid" data-favid="{{d.favId}}" style="color: #FEB61E; font-size: 14px; margin-left: 1px;" data-id="{{d.resId}}" lay-tips="移出收藏夹"></a>
|
|
|
{{# } }}
|
|
|
<a class="layui-icon reslist-view-topo hide" data-resid="{{d.resId}}" style="color: #FEB61E; font-size: 14px; margin-left: 1px;" lay-tips="查看资源拓扑"><i class="iconfont"></i></a>
|
|
|
<!--{{# if (d.resCategory == 'share' && d.hardwareFlag && d.hardwareFlag.endsWith("Y")) { }}
|
|
|
<a class="layui-icon reslist-assets-details hide" data-resid="{{d.resId}}" data-restype="{{d.resType}}" data-name="{{d.resName}}" data-ip="{{ d.ip }}" style="color: #FEB61E; font-size: 14px; margin-left: 10px;" lay-tips="资产配置信息"><i class="iconfont"></i></a>
|
|
|
{{# } }}-->
|
|
|
</div>
|
|
|
</script>
|
|
|
|
|
|
<!--最大文件系统使用率-->
|
|
|
<script type="text/html" id="fileUseRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI449F5365" data-flag="fs" data-name="{{d.os=='windows'?'磁盘使用情况':'文件系统使用情况'}}" data-showtype="bar" data-barkpiid="{{d.os=='windows'?'KPI29D42042,KPI1988842F':'KPIA91F44E7,KPI98306224'}}" data-barxaxis="{{d.os=='windows'?'KPI9D22EAB6':'KPI7AC1664E'}}"
|
|
|
data-warning="0" data-ident="1" data-trend="0">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div style="position:absolute; z-index:1;width: 100%" id="{{d.resId}}_bizfileName" lay-tips="{{d.fileSysUseName}}"
|
|
|
data-id="{{d.resId}}_bizfileName" data-message="{{d.fileSysUseName}}"><span style="color: #000000;">{{d.fileSysUseName}}</span>
|
|
|
</div>
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.fileSysUseRate >= 98 ? 'layui-bg-red' : (d.fileSysUseRate >= 95 ? 'layui-bg-orange' : (d.fileSysUseRate >= 90 ? 'layui-bg-blue':'')) }}"
|
|
|
lay-percent="{{ d.fileSysUseRate }}%"
|
|
|
style="width: {{ d.fileSysUseRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.fileSysUseRate == null || d.fileSysUseRate == '' || d.fileSysUseRate === '未知' || d.fileSysUseRate === '无' )? '0%' : d.fileSysUseRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--CPU使用率-->
|
|
|
<script type="text/html" id="cpuRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI7054BC34" data-flag="cpu" data-name="CPU使用率"
|
|
|
data-warning="0" data-ident="1" data-trend="1">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.cpuRate >= 95 ? 'layui-bg-red' : (d.cpuRate >= 90 ? 'layui-bg-orange' : (d.cpuRate >= 80 ? 'layui-bg-blue':''))}}"
|
|
|
lay-percent="{{ d.cpuRate }}%"
|
|
|
style="width: {{ d.cpuRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.cpuRate == null || d.cpuRate == '' || d.cpuRate === '未知' || d.cpuRate === '无' )? '0%' : d.cpuRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--内存使用率-->
|
|
|
<script type="text/html" id="memoryRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI31CB8D97" data-flag="mem" data-name="内存使用率"
|
|
|
data-warning="1" data-ident="1" data-trend="1">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.memoryRate >= 95 ? 'layui-bg-red' : (d.memoryRate >= 90 ? 'layui-bg-orange' : (d.memoryRate >= 80 ? 'layui-bg-blue':''))}}"
|
|
|
lay-percent="{{ d.memoryRate }}%"
|
|
|
style="width: {{ d.memoryRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.memoryRate == null || d.memoryRate == '' || d.memoryRate === '未知' || d.memoryRate === '无' )? '0%' : d.memoryRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--虚拟内存使用率-->
|
|
|
<script type="text/html" id="vmmemoryRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI20352505" data-flag="vmem" data-name="虚拟内存使用率"
|
|
|
data-warning="1" data-ident="1" data-trend="1">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.vmmemoryUseRate >= 95 ? 'layui-bg-red' : (d.vmmemoryUseRate >= 90 ? 'layui-bg-orange' : (d.vmmemoryUseRate >= 80 ? 'layui-bg-blue':''))}}"
|
|
|
lay-percent="{{ d.vmmemoryUseRate }}%"
|
|
|
style="width: {{ d.vmmemoryUseRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.vmmemoryUseRate == null || d.vmmemoryUseRate == '' || d.vmmemoryUseRate === '未知' || d.vmmemoryUseRate === '无' )? '0%' : d.vmmemoryUseRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--会话百分比-->
|
|
|
<script type="text/html" id="sessionRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI18F18278" data-name="活动会话百分比" data-flag="session"
|
|
|
data-warning="0" data-ident="1" data-trend="0">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.sessionRate >= 80 ? 'layui-bg-red' : (d.sessionRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.sessionRate }}%"
|
|
|
style="width: {{ d.sessionRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.sessionRate == null || d.sessionRate == '' || d.sessionRate === '未知' || d.sessionRate === '无' )? '0%' : d.sessionRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--CPU分配率-->
|
|
|
<script type="text/html" id="cpuSetRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPIBFA3F5CD" data-name="CPU分配率" data-flag="cpu"
|
|
|
data-warning="0" data-ident="1" data-trend="0">
|
|
|
{{#
|
|
|
d.cpuSetRate = parseFloat(d.cpuSetRate).toFixed(2);
|
|
|
}}
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.cpuSetRate >= 80 ? 'layui-bg-red' : (d.cpuSetRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.cpuSetRate }}%"
|
|
|
style="width: {{ d.cpuSetRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.cpuSetRate == null || d.cpuSetRate == '' || d.cpuSetRate === '未知' || d.cpuSetRate === '无' )? '0%' : d.cpuSetRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--内存分配率-->
|
|
|
<script type="text/html" id="memorySetRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPIC40A80AC" data-name="内存分配率" data-flag="mem"
|
|
|
data-warning="0" data-ident="1" data-trend="0">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.memorySetRate >= 80 ? 'layui-bg-red' : (d.memorySetRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.memorySetRate }}%"
|
|
|
style="width: {{ d.memorySetRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.memorySetRate == null || d.memorySetRate == '' || d.memorySetRate === '未知' || d.memorySetRate === '无' )? '0%' : d.memorySetRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--存储分配率-->
|
|
|
<script type="text/html" id="storageSetRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI46BAA9BE" data-name="存储分配率" data-flag="storage"
|
|
|
data-warning="0" data-ident="1" data-trend="0">
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.storageSetRate >= 80 ? 'layui-bg-red' : (d.storageSetRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.storageSetRate }}%"
|
|
|
style="width: {{ d.storageSetRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.storageSetRate == null || d.storageSetRate == '' || d.storageSetRate === '未知' || d.storageSetRate === '无' )? '0%' : d.storageSetRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--连接状态-->
|
|
|
<script type="text/html" id="linkStateTpl">
|
|
|
{{#
|
|
|
var linkStateHtml = '';
|
|
|
var linkStateTips = '无连接信息';
|
|
|
if(d.linkStateList && d.linkStateList.length >=0 ) {
|
|
|
linkStateTips = '';
|
|
|
if(d.linkStateList.length == 1) {
|
|
|
var linkState = d.linkStateList[0];
|
|
|
linkStateTips = `${linkState.protocol}: ${linkState.state}`;
|
|
|
if(linkState.state.indexOf('成功') !== -1) {
|
|
|
linkStateHtml = '<button type="button" class="layui-btn layui-btn-radius layui-bg-green layui-btn-xs p-0-15 cant-click">成功</button>';
|
|
|
} else {
|
|
|
linkStateHtml = `<button type="button"
|
|
|
id="${d.resId}_bizdanger"
|
|
|
data-message="${d.message}"
|
|
|
data-state="${d.state}"
|
|
|
data-id="${d.resId}_bizdanger"
|
|
|
class="layui-btn layui-btn-danger layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
失败
|
|
|
</button>`;
|
|
|
}
|
|
|
} else {
|
|
|
if(d.linkStateList.length == 0){
|
|
|
if(d.hostState == 'active' || d.hostState == 'connected' || d.hostState == '正常' ){
|
|
|
linkStateHtml = '<button type="button" class="layui-btn layui-btn-radius layui-bg-green layui-btn-xs p-0-15 cant-click">成功</button>';
|
|
|
linkStateTips += `<li class='li-link-state-tips-red'>自动发现: 连接成功</li>`;
|
|
|
}else{
|
|
|
linkStateHtml = `<button type="button"
|
|
|
id="${d.resId}_bizdanger"
|
|
|
data-message="${d.message}"
|
|
|
data-state="${d.state}"
|
|
|
data-id="${d.resId}_bizdanger"
|
|
|
class="layui-btn layui-btn-danger layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
失败
|
|
|
</button>`;
|
|
|
if(d.hostState!=''){
|
|
|
linkStateTips += `<li class='li-link-state-tips-red'>自动发现: 连接失败</li>`;
|
|
|
}else{
|
|
|
linkStateTips += `<li class='li-link-state-tips-red'>ssh: 连接失败</li>`;
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
|
linkStateTips += `<ul class='ul-link-state-tips'>`;
|
|
|
layui.each(d.linkStateList, function(index, value) {
|
|
|
if(value.state.indexOf('成功') !== -1) {
|
|
|
linkStateTips += `<li class='li-link-state-tips-green'>${value.protocol}: ${value.state}</li>`;
|
|
|
linkStateHtml += '<span class="layui-badge-dot layui-bg-green"></span>';
|
|
|
} else {
|
|
|
linkStateTips += `<li class='li-link-state-tips-red'>${value.protocol}: ${value.state}</li>`;
|
|
|
linkStateHtml += '<span class="layui-badge-dot layui-bg-red"></span>';
|
|
|
}
|
|
|
});
|
|
|
linkStateTips += '</ul>';
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}}
|
|
|
<div class="div-link-state-list" lay-tips="{{linkStateTips}}">
|
|
|
{{linkStateHtml}}
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--详情页面连接状态-->
|
|
|
<script type="text/html" id="linkStateDetailTpl">
|
|
|
{{#
|
|
|
var linkStateHtml = '';
|
|
|
var linkStateTips = '无连接信息';
|
|
|
if(d.linkStateList && d.linkStateList.length) {
|
|
|
linkStateTips = '';
|
|
|
if(d.linkStateList.length == 1) {
|
|
|
var linkState = d.linkStateList[0];
|
|
|
linkStateTips = `${linkState.protocol}: ${linkState.state}`;
|
|
|
if(linkState.state.indexOf('成功') !== -1) {
|
|
|
linkStateHtml = `<span class="span-green">${linkState.state}</span>`;
|
|
|
} else {
|
|
|
linkStateHtml = `<span class="span-red">${linkState.state}</span>`;
|
|
|
}
|
|
|
} else {
|
|
|
linkStateTips += `<ul class='ul-link-state-tips'>`;
|
|
|
layui.each(d.linkStateList, function(index, value) {
|
|
|
if(value.state.indexOf('成功') !== -1) {
|
|
|
linkStateTips += `<li class='li-link-state-tips-green'>${value.protocol}: ${value.state}</li>`;
|
|
|
linkStateHtml += '<div class="layui-badge-dot layui-bg-green"></div>';
|
|
|
} else {
|
|
|
linkStateTips += `<li class='li-link-state-tips-red'>${value.protocol}: ${value.state}</li>`;
|
|
|
linkStateHtml += '<div class="layui-badge-dot layui-bg-red"></div>';
|
|
|
}
|
|
|
});
|
|
|
linkStateTips += '</ul>';
|
|
|
}
|
|
|
}
|
|
|
}}
|
|
|
<div class="div-link-state-list" lay-tips="{{linkStateTips}}">
|
|
|
{{linkStateHtml}}
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--电源状态-->
|
|
|
<script type="text/html" id="powerStateTpl">
|
|
|
{{# if(d.powerState != null && d.powerState == 'poweredOn'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-green layui-btn-xs p-0-15 cant-click">
|
|
|
开机
|
|
|
</button>
|
|
|
{{# }else if(d.powerState != null && d.powerState == 'poweredOff'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
关机
|
|
|
</button>
|
|
|
{{# }else if(d.powerState != null && d.powerState == 'standBy'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-orange layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
待机
|
|
|
</button>
|
|
|
{{# }else if(d.powerState != null && d.powerState == 'unknown'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-gray layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
未知
|
|
|
</button>
|
|
|
{{# }else{ }}
|
|
|
<button type="button"
|
|
|
class="layui-btn layui-btn-radius layui-bg-gray layui-btn-xs p-0-15 cant-click">{{
|
|
|
'未监控'}}
|
|
|
</button>
|
|
|
{{# }}}
|
|
|
</script>
|
|
|
<!--健康状态-->
|
|
|
<script type="text/html" id="healthTpl">
|
|
|
{{# if(d.state != 'new'){ }}
|
|
|
{{# if(d.health === '1'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-danger layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">中
|
|
|
</button>
|
|
|
{{# } }}
|
|
|
{{# if(d.health === '2'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-warm layui-bg-orange layui-btn-radius layui-btn-xs p-0-15 cant-click">良
|
|
|
</button>
|
|
|
{{# } }}
|
|
|
{{# if(d.health === '3'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-green layui-btn-xs p-0-15 cant-click">优</button>
|
|
|
{{# } }}
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
<!--主机状态-->
|
|
|
<script type="text/html" id="hostStateTpl">
|
|
|
{{# if(d.hostState != null && d.hostState == 'connected'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-green layui-btn-xs p-0-15 cant-click">
|
|
|
已连接
|
|
|
</button>
|
|
|
{{# }else if(d.hostState != null && d.hostState == 'notResponding'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-orange layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
未响应
|
|
|
</button>
|
|
|
{{# }else if(d.hostState != null && d.hostState == 'disconnected'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
断开连接
|
|
|
</button>
|
|
|
{{# }else if(d.hostState != null && d.hostState == '正常'){ }}
|
|
|
<button type="button" class="layui-btn layui-bg-green layui-btn-radius layui-btn-xs p-0-15 cant-click">
|
|
|
正常
|
|
|
</button>
|
|
|
{{# }else{ }}
|
|
|
<button type="button"
|
|
|
class="layui-btn layui-btn-radius layui-bg-gray layui-btn-xs p-0-15 cant-click">{{
|
|
|
'未监控'}}
|
|
|
</button>
|
|
|
{{# }}}
|
|
|
</script>
|
|
|
<!--ping状态-->
|
|
|
<script type="text/html" id="pingStatusTpl">
|
|
|
{{# if(d.pingStatus === '正常'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-danger layui-bg-green layui-btn-radius layui-btn-xs p-0-15">正常
|
|
|
</button>
|
|
|
{{# }else{ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-red layui-btn-xs p-0-15">异常</button>
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
<!--资源状态-->
|
|
|
<script type="text/html" id="resStateTpl">
|
|
|
{{#
|
|
|
switch (d.state) {
|
|
|
case "new" :
|
|
|
}} <button type="button" class="layui-btn layui-btn-warm layui-bg-blue layui-btn-radius layui-btn-xs p-0-15 cant-click">未监控</button> {{#
|
|
|
break;
|
|
|
case "monitor" :
|
|
|
}} <button type="button" class="layui-btn layui-btn-warm layui-bg-green layui-btn-radius layui-btn-xs p-0-15 cant-click">监控中</button> {{#
|
|
|
break;
|
|
|
case "stop" :
|
|
|
}} <button type="button" class="layui-btn layui-btn-warm layui-bg-red layui-btn-radius layui-btn-xs p-0-15 cant-click">暂停监控</button> {{#
|
|
|
break;
|
|
|
case "alarmIgnore" :
|
|
|
}} <button type="button" class="layui-btn layui-btn-warm layui-bg-orange layui-btn-radius layui-btn-xs p-0-15 cant-click">告警压制中</button> {{#
|
|
|
break;
|
|
|
}
|
|
|
}}
|
|
|
</script>
|
|
|
<!--判断树结构有无子节点-->
|
|
|
<script type="text/html" id="bizResNameTpl">
|
|
|
<div>
|
|
|
{{# if(d.resType == 'MIDDLEWARE_WEBLOGIC' && (d.parentId == null || d.parentId == '') ){ }}
|
|
|
<span data-childrennum="{{d.childrenNum}}">{{d.resName}}</span>
|
|
|
{{# }else{ }}
|
|
|
<span data-zymc="{{d.resId}}" data-restype="{{d.resType}}" data-name="{{d.resName}}" data-ip="{{d.ip}}" data-childrennum="{{d.childrenNum}}" data-resTypeName="{{d.resTypeName}}" data-admin="{{d.admin}}" data-pingenable="{{d.pingEnable}}" class="layui-table-link">{{d.resName}}</span>
|
|
|
{{# } }}
|
|
|
{{# if (d.favId == null) { }}
|
|
|
<a class="layui-icon layui-icon-rate hide" data-favid="{{d.favId}}" data-id="{{d.resId}}" lay-tips="加入收藏夹" style="font-size: 14px"></a>
|
|
|
{{# } else { }}
|
|
|
<a class="layui-icon layui-icon-rate-solid" data-favid="{{d.favId}}" style="color: #FEB61E; font-size: 14px; margin-left: 10px;" data-id="{{d.resId}}" lay-tips="移出收藏夹"></a>
|
|
|
{{# } }}
|
|
|
<a class="layui-icon reslist-view-topo hide" data-resid="{{d.resId}}" style="color: #FEB61E; font-size: 14px; margin-left: 10px;" lay-tips="查看资源拓扑"><i class="iconfont"></i></a>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--表空间使用率(最大)-->
|
|
|
<script type="text/html" id="tableSpaceUseRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI64B1610A" data-name="表空间使用率" data-showtype="bar" data-barkpiid="KPI2EC3F15A,KPI6AD9EBD6" data-barxaxis="KPI4332BAC8"
|
|
|
data-warning="0" data-ident="1" data-trend="0" data-flag="tps" >
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div style="position:absolute; z-index:1;width: 100%" id="{{d.resId}}_bizTableSpaceUseRate" class="showTipsName" data-id="{{d.resId}}_bizTableSpaceUseRate" data-message="{{d.tableSpaceUseName}}"><span style="color: #000000;" >{{d.tableSpaceUseName}}</span></div>
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.tableSpaceUseRate >= 80 ? 'layui-bg-red' : (d.tableSpaceUseRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.tableSpaceUseRate }}%"
|
|
|
style="width: {{ d.tableSpaceUseRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.tableSpaceUseRate == null || d.tableSpaceUseRate == '' || d.tableSpaceUseRate === '未知' || d.tableSpaceUseRate === '无' )? '0%' : d.tableSpaceUseRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--ASM磁盘空间使用率-->
|
|
|
<script type="text/html" id="asmDiskUsedRateTpl">
|
|
|
<div class="layui-progress-wrap kpiSubDiv" data-resid={{d.resId}} data-kpiid="KPI922F8FF7" data-name="ASM磁盘空间使用率" data-showtype="bar" data-barkpiid="KPI4D710FDA,KPI811E751E" data-barxaxis="KPI50267025"
|
|
|
data-warning="0" data-ident="1" data-trend="0" data-flag="asm" >
|
|
|
<div class="layui-progress layui-progress-big" lay-showpercent="true">
|
|
|
<div style="position:absolute; z-index:1;width: 100%" id="{{d.resId}}_asmDiskUsedRate" class="showTipsName" data-id="{{d.resId}}_asmDiskUsedRate" data-message="{{d.asmDiskUsedRate}}"><span style="color: #000000;" >{{d.asmDiskUsedRateName}}</span></div>
|
|
|
<div class="layui-progress-bar layui-bg-green {{ d.asmDiskUsedRate >= 80 ? 'layui-bg-red' : (d.asmDiskUsedRate <= 50 ? '' : 'layui-bg-orange') }}"
|
|
|
lay-percent="{{ d.asmDiskUsedRate }}%"
|
|
|
style="width: {{ d.asmDiskUsedRate }}%;">
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="layui-progress-text">{{ (d.asmDiskUsedRate == null || d.asmDiskUsedRate == '' || d.asmDiskUsedRate === '未知' || d.asmDiskUsedRate === '无' )? '0%' : d.asmDiskUsedRate +'%' }}</span>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--weblogic定制表头-->
|
|
|
<script type="text/html" id="webLogicResNameTpl">
|
|
|
<div>
|
|
|
{{# if(d.resType == 'MIDDLEWARE_WEBLOGIC' && (d.parentId == null || d.parentId == '') ){ }}
|
|
|
<span data-childrennum="{{d.childrenNum}}">{{d.resName}}</span>
|
|
|
{{# }else{ }}
|
|
|
<span data-zymc="{{ d.resId }}" data-restype="{{d.resType}}" data-name="{{d.resName}}" data-childrennum="{{d.childrenNum}}" data-ip="{{ d.ip }}" data-resTypeName="{{ d.resTypeName }}" data-admin="{{ d.admin }}" data-pingenable="{{d.pingEnable}}" class="layui-table-link">{{ d.resName }}</span>
|
|
|
{{# } }}
|
|
|
{{# if (d.favId == null) { }}
|
|
|
<a class="layui-icon layui-icon-rate hide" data-favid="{{d.favId}}" data-id="{{d.resId}}" lay-tips="加入收藏夹" style="font-size: 14px"></a>
|
|
|
{{# } else { }}
|
|
|
<a class="layui-icon layui-icon-rate-solid" data-favid="{{d.favId}}" style="color: #FEB61E; font-size: 14px; margin-left: 10px;" data-id="{{d.resId}}" lay-tips="移出收藏夹"></a>
|
|
|
{{# } }}
|
|
|
<a class="layui-icon reslist-view-topo hide" data-resid="{{d.resId}}" style="color: #FEB61E; font-size: 14px; margin-left: 10px;" lay-tips="查看资源拓扑"><i class="iconfont"></i></a>
|
|
|
</div>
|
|
|
</script>
|
|
|
<!--资源池状态-->
|
|
|
<script type="text/html" id="clusterStateTpl">
|
|
|
{{# if(d.clusterState === '正常'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-danger layui-bg-green layui-btn-radius layui-btn-xs p-0-15">正常
|
|
|
</button>
|
|
|
{{# }else{ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-red layui-btn-xs p-0-15">异常</button>
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
<!--运行状态-->
|
|
|
<script type="text/html" id="runStateTpl">
|
|
|
{{# if(d.runState === '正常'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-danger layui-bg-green layui-btn-radius layui-btn-xs p-0-15">正常
|
|
|
</button>
|
|
|
{{# }else{ if(d.runState === '运行中'){ }}
|
|
|
<button type="button" class="layui-btn layui-btn-danger layui-bg-green layui-btn-radius layui-btn-xs p-0-15">运行中</button>
|
|
|
{{# }else{ }}
|
|
|
<button type="button" class="layui-btn layui-btn-radius layui-bg-red layui-btn-xs p-0-15">异常</button>
|
|
|
{{# } }}
|
|
|
{{# } }}
|
|
|
</script>
|
|
|
<script type="text/html" id="weblogicIpTpl">
|
|
|
<div>{{d.ip?d.ip:""}}</div>
|
|
|
</script>
|
|
|
<script type="text/html" id="weblogicListenAddrTpl">
|
|
|
<div>{{d.listenAddr?d.listenAddr:""}}</div>
|
|
|
</script>
|
|
|
<!--cup核心数-->
|
|
|
<script type="text/html" id="cpuCoresTpl">
|
|
|
<div>{{d.cpuCores?(d.cpuCores+"核"):""}}</div>
|
|
|
</script>
|
|
|
<!--cup个数-->
|
|
|
<script type="text/html" id="cpuNumTpl">
|
|
|
<div>{{d.cpuNum?(d.cpuNum+"个"):""}}</div>
|
|
|
</script> |
...
|
...
|
|