添加项目文件。
This commit is contained in:
495
WaterCloud.Web/Views/Home/Default.cshtml
Normal file
495
WaterCloud.Web/Views/Home/Default.cshtml
Normal file
@@ -0,0 +1,495 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>首页</title>
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/lib/font-awesome-4.7.0/css/font-awesome.min.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/public.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<style>
|
||||
|
||||
.layui-card {
|
||||
border: 1px solid #f2f2f2;
|
||||
border-radius: 5px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.icon {
|
||||
margin-right: 10px;
|
||||
color: #1aa094;
|
||||
}
|
||||
|
||||
.icon-cray {
|
||||
color: #ffb800 !important;
|
||||
}
|
||||
|
||||
.icon-blue {
|
||||
color: #1e9fff !important;
|
||||
}
|
||||
|
||||
.icon-tip {
|
||||
color: #ff5722 !important;
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module {
|
||||
text-align: center;
|
||||
margin-top: 10px
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module a i {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
text-align: center;
|
||||
border-radius: 2px;
|
||||
font-size: 30px;
|
||||
background-color: #F8F8F8;
|
||||
color: black;
|
||||
transition: all .3s;
|
||||
-webkit-transition: all .3s;
|
||||
}
|
||||
|
||||
.layuimini-qiuck-module a cite {
|
||||
position: relative;
|
||||
top: 2px;
|
||||
display: block;
|
||||
color: black;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.welcome-module {
|
||||
width: 100%;
|
||||
height: 210px;
|
||||
}
|
||||
|
||||
.panel {
|
||||
background-color: #fff;
|
||||
border: 1px solid transparent;
|
||||
border-radius: 3px;
|
||||
-webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
|
||||
box-shadow: 0 1px 1px rgba(0,0,0,.05)
|
||||
}
|
||||
|
||||
.panel-body {
|
||||
padding: 10px
|
||||
}
|
||||
|
||||
.panel-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
font-size: 12px;
|
||||
color: inherit
|
||||
}
|
||||
|
||||
.label {
|
||||
display: inline;
|
||||
padding: .2em .6em .3em;
|
||||
font-size: 75%;
|
||||
font-weight: 700;
|
||||
line-height: 1;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: baseline;
|
||||
border-radius: .25em;
|
||||
margin-top: .3em;
|
||||
}
|
||||
|
||||
.layui-red {
|
||||
color: red
|
||||
}
|
||||
|
||||
.main_btn > p {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.layui-bg-number {
|
||||
background-color: #F8F8F8;
|
||||
}
|
||||
|
||||
.layuimini-notice:hover {
|
||||
background: #f6f6f6;
|
||||
}
|
||||
|
||||
.layuimini-notice {
|
||||
padding: 7px 16px;
|
||||
clear: both;
|
||||
font-size: 12px !important;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
transition: background 0.2s ease-in-out;
|
||||
}
|
||||
|
||||
.layuimini-notice-title, .layuimini-notice-label {
|
||||
padding-right: 70px !important;
|
||||
text-overflow: ellipsis !important;
|
||||
overflow: hidden !important;
|
||||
white-space: nowrap !important;
|
||||
}
|
||||
|
||||
.layuimini-notice-title {
|
||||
line-height: 28px;
|
||||
font-size: 14px;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.layuimini-notice-extra {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
margin-top: -8px;
|
||||
right: 16px;
|
||||
display: inline-block;
|
||||
height: 16px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.layui-table {
|
||||
width: 100%;
|
||||
margin: 10px 0;
|
||||
background-color: #fff;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.layui-text {
|
||||
line-height: 1.6;
|
||||
font-size: 14px;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="layuimini-container">
|
||||
<div class="layuimini-main">
|
||||
<div class="layui-row layui-col-space15">
|
||||
<div class="layui-col-md8">
|
||||
<div class="layui-row layui-col-space15">
|
||||
<div class="layui-col-md6">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header"><a href="javascript:;" layuimini-content-href="/SystemManage/QuickModule/Index" data-title="快捷入口"><i class="fa fa-credit-card icon icon-blue"></i>快捷入口</a></div>
|
||||
<div class="layui-card-body">
|
||||
<div class="welcome-module">
|
||||
<div class="layui-row layui-col-space10 layuimini-qiuck">
|
||||
"<div class="layui-col-xs3 layuimini-qiuck-module"><a href="javascript:;" layuimini-content-href="/SystemSecurity/DbBackup/Index" data-title="数据备份" data-icon="fa null"> <i class="fa null"></i><cite>数据备份</cite></a></div>"
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md6">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header"><i class="fa fa-warning icon"></i>数据统计</div>
|
||||
<div class="layui-card-body">
|
||||
<div class="welcome-module">
|
||||
<div class="layui-row layui-col-space10">
|
||||
<div class="layui-col-xs6">
|
||||
<div class="panel layui-bg-number">
|
||||
<div class="panel-body">
|
||||
<div class="panel-title">
|
||||
<span class="label pull-right layui-bg-blue">实时</span>
|
||||
<h5>用户统计</h5>
|
||||
</div>
|
||||
<div class="panel-content">
|
||||
<h1 class="no-margins" id="usercout"></h1>
|
||||
<small>当前分类总记录数</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-xs6">
|
||||
<div class="panel layui-bg-number">
|
||||
<div class="panel-body">
|
||||
<div class="panel-title">
|
||||
<span class="label pull-right layui-bg-cyan">实时</span>
|
||||
<h5>登录统计</h5>
|
||||
</div>
|
||||
<div class="panel-content">
|
||||
<h1 class="no-margins" id="logincout"></h1>
|
||||
<small>当前分类总记录数</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-xs6">
|
||||
<div class="panel layui-bg-number">
|
||||
<div class="panel-body">
|
||||
<div class="panel-title">
|
||||
<span class="label pull-right layui-bg-orange">实时</span>
|
||||
<h5>菜单统计</h5>
|
||||
</div>
|
||||
<div class="panel-content">
|
||||
<h1 class="no-margins" id="modulecout"></h1>
|
||||
<small>当前分类总记录数</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-xs6">
|
||||
<div class="panel layui-bg-number">
|
||||
<div class="panel-body">
|
||||
<div class="panel-title">
|
||||
<span class="label pull-right layui-bg-green">实时</span>
|
||||
<h5>日志统计</h5>
|
||||
</div>
|
||||
<div class="panel-content">
|
||||
<h1 class="no-margins" id="logcout"></h1>
|
||||
<small>当前分类总记录数</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header"><i class="fa fa-line-chart icon"></i>报表统计</div>
|
||||
<div class="layui-card-body">
|
||||
<div id="echarts-records" style="width: 100%;min-height:500px"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-col-md4">
|
||||
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header"><i class="fa fa-bullhorn icon icon-tip"></i>系统公告</div>
|
||||
<div class="layui-card-body layui-text layui-watercloud-notice">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header"><i class="fa fa-fire icon"></i>版本信息</div>
|
||||
<div class="layui-card-body layui-text">
|
||||
<table class="layui-table">
|
||||
<colgroup>
|
||||
<col width="100">
|
||||
<col>
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>框架名称</td>
|
||||
<td>
|
||||
WaterCloud
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>当前版本</td>
|
||||
<td>@WaterCloud.Code.GlobalContext.GetVersion()</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script>
|
||||
// 公告赋值
|
||||
$(function () {
|
||||
noticeInfo();
|
||||
quickModuleInfo();
|
||||
loadInfo();
|
||||
});
|
||||
//记录信息
|
||||
loadInfo = function () {
|
||||
$.ajax({
|
||||
url: "/ClientsData/GetCoutData?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"),
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
$('#usercout').html(data.usercout);
|
||||
$('#logincout').html(data.logincout);
|
||||
$('#modulecout').html(data.modulecout);
|
||||
$('#logcout').html(data.logcout);
|
||||
}
|
||||
});
|
||||
}
|
||||
//公告
|
||||
noticeInfo = function () {
|
||||
$.ajax({
|
||||
url: "/ClientsData/GetNoticeInfo?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"),
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
var noticeHtml = '';
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
noticeHtml += '<div class="layuimini-notice">';
|
||||
noticeHtml += '<div class="layuimini-notice-title">' + data[i].F_Title + '</div>';
|
||||
noticeHtml += '<div class="layuimini-notice-extra">' + new Date(data[i].F_CreatorTime).Format("yyyy-MM-dd hh:mm") + '</div>';
|
||||
noticeHtml += '<div class="layuimini-notice-content layui-hide">';
|
||||
noticeHtml += '<pre>';
|
||||
var str = data[i].F_Content;
|
||||
noticeHtml += str;
|
||||
noticeHtml += '</pre></div></div >';
|
||||
}
|
||||
$('.layui-watercloud-notice').empty();
|
||||
$('.layui-watercloud-notice').html(noticeHtml);
|
||||
}
|
||||
});
|
||||
}
|
||||
//快捷入口
|
||||
quickModuleInfo = function () {
|
||||
$.ajax({
|
||||
url: "/ClientsData/GetQuickModule?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"),
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
var qiuckHtml = '';
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
qiuckHtml += '<div class="layui-col-xs3 layuimini-qiuck-module">';
|
||||
qiuckHtml += '<a href = "javascript:;" layuimini-content-href="' + data[i].href + '"';
|
||||
qiuckHtml += ' data-title="' + data[i].title + '"';
|
||||
if (!!data[i].icon) {
|
||||
qiuckHtml += ' data-icon="fa ' + data[i].icon + '" >';
|
||||
qiuckHtml += ' <i class="fa ' + data[i].icon + '"></i>';
|
||||
}
|
||||
else {
|
||||
qiuckHtml += ' data-icon="fa fa-window-maximize" >';
|
||||
qiuckHtml += ' <i class="fa fa-window-maximize"></i>';
|
||||
}
|
||||
qiuckHtml += '<cite>' + data[i].title + '</cite></a ></div >';
|
||||
}
|
||||
$('.layuimini-qiuck').empty();
|
||||
$('.layuimini-qiuck').html(qiuckHtml);
|
||||
}
|
||||
});
|
||||
}
|
||||
layui.use(['layer', 'miniTab', 'echarts', 'common'], function () {
|
||||
var $ = layui.jquery,
|
||||
layer = layui.layer,
|
||||
miniTab = layui.miniTab,
|
||||
common = layui.common,
|
||||
echarts = layui.echarts;
|
||||
$(function () {
|
||||
loadChart();
|
||||
});
|
||||
miniTab.listen();
|
||||
common.iframeInterval(function () {
|
||||
loadInfo();
|
||||
noticeInfo();
|
||||
quickModuleInfo();
|
||||
}, 30000); //指定30秒刷新一次
|
||||
/**
|
||||
* 查看公告信息
|
||||
**/
|
||||
$('body').on('click', '.layuimini-notice', function () {
|
||||
var title = $(this).children('.layuimini-notice-title').text(),
|
||||
noticeTime = $(this).children('.layuimini-notice-extra').text(),
|
||||
content = $(this).children('.layuimini-notice-content').html();
|
||||
var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
|
||||
'<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
|
||||
'<div style="font-size: 12px">' + content + '</div>\n' +
|
||||
'</div>\n';
|
||||
parent.layer.open({
|
||||
type: 1,
|
||||
title: '系统公告' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
||||
area: '300px;',
|
||||
shade: 0.8,
|
||||
id: 'layuimini-notice',
|
||||
btn: ['确定'],
|
||||
btnAlign: 'c',
|
||||
moveType: 1,
|
||||
content: html
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* 报表功能
|
||||
*/
|
||||
function loadChart() {
|
||||
var myChart = echarts.init(document.getElementById('echarts-records'));
|
||||
var xData = [];
|
||||
var armData = [];
|
||||
var cpuData = [];
|
||||
common.ajax({
|
||||
url: "/SystemSecurity/ServerMonitoring/GetServerData",
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function (data) {
|
||||
var length = data.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
if (data[i]['F_Date'] !== null) {
|
||||
xData.push(new Date(data[i]['F_Date']).Format("yyyy-MM-dd"));
|
||||
}
|
||||
if (data[i]['F_ARM'] !== null) {
|
||||
armData.push(data[i]['F_ARM']);
|
||||
}
|
||||
if (data[i]['F_CPU'] !== null) {
|
||||
cpuData.push(data[i]['F_CPU']);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
option = {
|
||||
tooltip: {
|
||||
trigger: 'axis'
|
||||
},
|
||||
legend: {
|
||||
data: ['CPU使用率', 'ARM使用率']
|
||||
},
|
||||
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
boundaryGap: false,
|
||||
data: xData
|
||||
},
|
||||
yAxis: {
|
||||
type: 'value'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'CPU使用率', type: 'line',
|
||||
data: cpuData,
|
||||
lineStyle: {
|
||||
normal: {
|
||||
width: 2
|
||||
}
|
||||
},
|
||||
smooth: true,
|
||||
symbol: 'circle',
|
||||
symbolSize: 10,
|
||||
showAllSymbol: true,
|
||||
color: '#2499F8',
|
||||
},
|
||||
{
|
||||
name: 'ARM使用率', type: 'line',
|
||||
data: armData,
|
||||
lineStyle: {
|
||||
normal: {
|
||||
width: 2
|
||||
}
|
||||
},
|
||||
smooth: true,
|
||||
symbol: 'circle',
|
||||
symbolSize: 10,
|
||||
showAllSymbol: true,
|
||||
color: '#F90',
|
||||
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
myChart.setOption(option);
|
||||
// echarts 窗口缩放自适应
|
||||
window.onresize = function () {
|
||||
myChart.resize();
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
95
WaterCloud.Web/Views/Home/Error.cshtml
Normal file
95
WaterCloud.Web/Views/Home/Error.cshtml
Normal file
@@ -0,0 +1,95 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<title>页面不存在</title>
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" />
|
||||
<link rel="stylesheet" href="~/css/watercloud.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" />
|
||||
|
||||
<style>
|
||||
.listen-btn a {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.listen-btn a:hover {
|
||||
color: #ffffff;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="page-loading">
|
||||
<div class="ball-loader">
|
||||
<span></span><span></span><span></span><span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="error-page">
|
||||
<img id="errorimg" class="error-page-img">
|
||||
<div class="error-page-info">
|
||||
<h1 id="errormsg"></h1>
|
||||
<div class="error-page-info-desc" id="msg">
|
||||
</div>
|
||||
<div>
|
||||
<button class="layui-btn listen-btn" onclick="returnIndex()">返回首页</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/cookie/jquery.cookie.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script type="text/javascript">
|
||||
window.onbeforeunload = returnIndex;
|
||||
window.onunload = returnIndex;
|
||||
layui.use(['layer'], function () {
|
||||
var $ = layui.$;
|
||||
var msg = $.request("msg");
|
||||
if (window.location.hash.indexOf('#/') > -1) {
|
||||
$.cookie("wc_returnurl", window.location.hash.substring(2, window.location.hash.length), {
|
||||
expires: 1, path: '/'
|
||||
});
|
||||
}
|
||||
switch (msg) {
|
||||
case "401":
|
||||
$('#msg').html("帐号已在其它地方登录!");
|
||||
$('#errormsg').html(msg);
|
||||
$('#errorimg').attr('src', "../images/403.svg");
|
||||
break;
|
||||
case "403":
|
||||
$('#msg').html("权限不足!");
|
||||
$('#errormsg').html(msg);
|
||||
$('#errorimg').attr('src', "../images/403.svg");
|
||||
break;
|
||||
case "404":
|
||||
$('#msg').html("页面不存在!");
|
||||
$('#errormsg').html(msg);
|
||||
$('#errorimg').attr('src', "../images/404.svg");
|
||||
break;
|
||||
case "408":
|
||||
$('#msg').html("登录已超时!");
|
||||
$('#errormsg').html(msg);
|
||||
$('#errorimg').attr('src', "../images/404.svg");
|
||||
break;
|
||||
case "500":
|
||||
$('#msg').html("系统错误!");
|
||||
$('#errormsg').html(msg);
|
||||
$('#errorimg').attr('src', "../images/500.svg");
|
||||
break;
|
||||
default:
|
||||
$('#msg').html("请求出错!");
|
||||
$('#errormsg').html("400");
|
||||
$('#errorimg').attr('src', "../images/404.svg");
|
||||
break;
|
||||
}
|
||||
return false;
|
||||
})
|
||||
function returnIndex() {
|
||||
top.location.href = "/Login/Index";
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
265
WaterCloud.Web/Views/Home/Index.cshtml
Normal file
265
WaterCloud.Web/Views/Home/Index.cshtml
Normal file
@@ -0,0 +1,265 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>@ViewBag.ProjectName</title>
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta http-equiv="Access-Control-Allow-Origin" content="*">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link rel="icon" href="@ViewBag.LogoIcon">
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/layuimini.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/themes/default.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/lib/font-awesome-4.7.0/css/font-awesome.min.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<style id="layuimini-bg-color">
|
||||
</style>
|
||||
</head>
|
||||
@*style="background: url(/images/bgs.jpg)"*@
|
||||
<body class="layui-layout-body layuimini-all">
|
||||
<div class="layui-layout layui-layout-admin">
|
||||
|
||||
<div class="layui-header header">
|
||||
<div class="layui-logo layuimini-logo"></div>
|
||||
|
||||
<div class="layuimini-header-content">
|
||||
<a>
|
||||
<div class="layuimini-tool"><i title="展开" class="fa fa-outdent" data-side-fold="1"></i></div>
|
||||
</a>
|
||||
|
||||
<!--电脑端头部菜单-->
|
||||
<ul class="layui-nav layui-layout-left layuimini-header-menu layuimini-menu-header-pc layuimini-pc-show">
|
||||
</ul>
|
||||
|
||||
<!--手机端头部菜单-->
|
||||
<ul class="layui-nav layui-layout-left layuimini-header-menu layuimini-mobile-show">
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;"><i class="fa fa-list-ul"></i> 选择模块</a>
|
||||
<dl class="layui-nav-child layuimini-menu-header-mobile">
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul class="layui-nav layui-layout-right">
|
||||
<li class="layui-nav-item" lay-unselect>
|
||||
<a href="javascript:;" data-tohome="主页"><i class="fa fa-home"></i></a>
|
||||
</li>
|
||||
<li class="layui-nav-item" lay-unselect>
|
||||
<a href="javascript:;" data-clear="清理" class="layuimini-clear layui-hide"><i class="fa fa-trash-o"></i></a>
|
||||
</li>
|
||||
<li class="layui-nav-item mobile layui-hide-xs" lay-unselect>
|
||||
<a href="javascript:;" data-check-screen="full"><i class="fa fa-arrows-alt"></i></a>
|
||||
</li>
|
||||
<li class="layui-nav-item" lay-unselect>
|
||||
<a class="layui-icon layui-icon-notice" data-notice="消息" id="noticeMarker">
|
||||
|
||||
</a>
|
||||
</li>
|
||||
<li class="layui-nav-item layuimini-setting">
|
||||
<a href="javascript:;" id="usercode"></a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd>
|
||||
<a href="javascript:;" layuimini-content-href="../Home/UserSetting" data-title="基本资料" data-icon="fa fa-gears">基本资料@*<span class="layui-badge-dot"></span>*@</a>
|
||||
</dd>
|
||||
<dd>
|
||||
<a href="javascript:;" onclick="btn_revisepassword()" data-title="修改密码" data-icon="fa fa-gears">修改密码</a>
|
||||
</dd>
|
||||
<dd>
|
||||
<hr>
|
||||
</dd>
|
||||
<dd>
|
||||
<a href="javascript:;" class="login-out">退出登录</a>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<li class="layui-nav-item layuimini-select-bgcolor" lay-unselect>
|
||||
<a href="javascript:;" data-bgcolor="配色方案"><i class="fa fa-ellipsis-v"></i></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--无限极左侧菜单-->
|
||||
<div class="layui-side layui-bg-black layuimini-menu-left">
|
||||
</div>
|
||||
|
||||
<!--初始化加载层-->
|
||||
<div class="layuimini-loader">
|
||||
<div class="layuimini-loader-inner"></div>
|
||||
</div>
|
||||
|
||||
<!--手机端遮罩层-->
|
||||
<div class="layuimini-make"></div>
|
||||
|
||||
<!-- 移动导航 -->
|
||||
<div class="layuimini-site-mobile"><i class="layui-icon"></i></div>
|
||||
|
||||
<div class="layui-body">
|
||||
|
||||
<div class="layuimini-tab layui-tab-rollTool layui-tab" lay-filter="layuiminiTab" lay-allowclose="true">
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this" id="layuiminiHomeTabId" lay-id=""></li>
|
||||
</ul>
|
||||
<div class="layui-tab-control">
|
||||
<li class="layuimini-tab-roll-left layui-icon layui-icon-left"></li>
|
||||
<li class="layuimini-tab-roll-right layui-icon layui-icon-right"></li>
|
||||
<li class="layui-tab-tool layui-icon layui-icon-down">
|
||||
<ul class="layui-nav close-box">
|
||||
<li class="layui-nav-item">
|
||||
<a href="javascript:;"><span class="layui-nav-more"></span></a>
|
||||
<dl class="layui-nav-child">
|
||||
<dd><a href="javascript:;" data-refresh="刷新"><i class="fa fa-refresh"></i>刷新当前</a></dd>
|
||||
<dd><a href="javascript:;" layuimini-tab-close="current"><i class="fa fa-times"></i>关闭当前</a></dd>
|
||||
<dd><a href="javascript:;" layuimini-tab-close="other"><i class="fa fa-ban"></i>关闭其他</a></dd>
|
||||
<dd><a href="javascript:;" layuimini-tab-close="all"><i class="fa fa-times-circle"></i>关闭全部</a></dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</div>
|
||||
<div class="layui-tab-content">
|
||||
<div id="layuiminiHomeTabIframe" class="layui-tab-item layui-show"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/cookie/jquery.cookie.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/framework-clientdata.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/lib/signalr/dist/browser/signalr.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/chat.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/websocket.js"></script>
|
||||
<script>
|
||||
// 接收消息
|
||||
function getsocketData(e) { // 创建接收消息函数
|
||||
const data = e && e.detail.data;
|
||||
if (data != "pong" && data != "Close!") {
|
||||
var json = JSON.parse(data);
|
||||
if (!!json.status) {
|
||||
layui.use(['notice'], function () {
|
||||
var notice = layui.notice;
|
||||
notice.options = {
|
||||
positionClass: "toast-bottom-right",//弹出的位置,
|
||||
};
|
||||
if (json.status == "打印完成") {
|
||||
notice.success("打印成功!");
|
||||
}
|
||||
else {
|
||||
notice.warning("打印失败!" + json.status);
|
||||
}
|
||||
})
|
||||
}
|
||||
else if (data.cmd = "getPrinters") {
|
||||
top.clients.printers = json.printers;
|
||||
top.clients.defaultPrinter = json.defaultPrinter;
|
||||
}
|
||||
}
|
||||
}
|
||||
// 注册监听事件
|
||||
window.addEventListener('onmessageWS', getsocketData);
|
||||
//创建websocket
|
||||
createSocket('ws://127.0.0.1:' + '7181');
|
||||
|
||||
function btn_revisepassword() {
|
||||
layui.use(['common'], function () {
|
||||
var common = layui.common;
|
||||
common.modalOpen({
|
||||
title: '重置密码',
|
||||
url: '/SystemOrganize/User/ReviseSelfPassword',
|
||||
width: "400px",
|
||||
height: "300px",
|
||||
callBack: function (index) {
|
||||
var iframe = "layui-layer-iframe" + index;
|
||||
window[iframe].submitForm();
|
||||
}
|
||||
});
|
||||
})
|
||||
};
|
||||
layui.use(['jquery', 'layer', 'miniAdmin', 'miniTongji', 'miniTab', 'common', 'notice'], function () {
|
||||
var $ = layui.jquery,
|
||||
layer = layui.layer,
|
||||
miniAdmin = layui.miniAdmin,
|
||||
common = layui.common,
|
||||
notice = layui.notice,
|
||||
miniTongji = layui.miniTongji;
|
||||
function loadUser() {
|
||||
var code = document.getElementById("usercode");
|
||||
if (top.currentUser.F_IsAdmin) {
|
||||
$('[data-clear]').removeClass('layui-hide');
|
||||
}
|
||||
else {
|
||||
$('[data-clear]').parent().remove();
|
||||
}
|
||||
code.innerHTML = top.currentUser.F_Account + '<i class="layui-icon layui-icon-down layui-nav-more"></i>';
|
||||
if (top.currentUser.MsgCout > 0) {
|
||||
$('#noticeMarker').html('<span class="layui-badge-dot"></span>');
|
||||
notice.options = {
|
||||
positionClass: "toast-bottom-right",//弹出的位置,
|
||||
onclick: function () {
|
||||
$('#noticeMarker').click();
|
||||
},
|
||||
};
|
||||
notice.info('您有' + top.currentUser.MsgCout + '条信息未读');
|
||||
}
|
||||
else {
|
||||
$('#noticeMarker').html('');
|
||||
}
|
||||
};
|
||||
//表格人性化开关 默认开启传任意参数关闭
|
||||
sessionStorage.setItem('watercloudButtonHumanized','');
|
||||
var bgcolor = localStorage.getItem('watercloudBgcolorId');
|
||||
var options = {
|
||||
iniUrl: "/ClientsData/GetInitDataJson?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"), // 初始化接口
|
||||
clearUrl: "/ClientsData/ClearCache?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"), // 缓存清理接口
|
||||
urlHashLocation: true, // 是否打开hash定位 说明:url地址显示
|
||||
bgColorDefault: !!bgcolor ? bgcolor : 0, // 主题默认配置
|
||||
multiModule: true, // 是否开启多模块
|
||||
menuChildOpen: false, // 是否默认展开菜单
|
||||
loadingTime: 0, // 初始化加载时间
|
||||
pageAnim: false, // iframe窗口动画
|
||||
maxTabNum: 20, // 最大的tab打开数量
|
||||
};
|
||||
miniAdmin.render(options);
|
||||
$(function () {
|
||||
loadUser();
|
||||
});
|
||||
//百度统计代码,只统计指定域名
|
||||
miniTongji.render({
|
||||
specific: true,
|
||||
domains: [
|
||||
'watercloud.vip',
|
||||
],
|
||||
});
|
||||
$('.login-out').on("click", function () {
|
||||
common.modalConfirm("是否要退出账号登录", function (r) {
|
||||
if (r) {
|
||||
common.ajax({
|
||||
url: "../Login/OutLogin",
|
||||
dataType: "json",
|
||||
async: true,
|
||||
success: function (data) {
|
||||
layer.msg('退出成功');
|
||||
window.onbeforeunload();
|
||||
$.cookie("wc_returnurl", '', {
|
||||
expires: -1, path: '/'
|
||||
});
|
||||
window.location.href = '../Login/Index';
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
404
WaterCloud.Web/Views/Home/Message.cshtml
Normal file
404
WaterCloud.Web/Views/Home/Message.cshtml
Normal file
@@ -0,0 +1,404 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>通知中心</title>
|
||||
<link href="../lib/font-awesome-4.7.0/css/font-awesome.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<script src="../lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link rel="stylesheet" href="../js/lay-module/dtree/dtree.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<link rel="stylesheet" href="../js/lay-module/dtree/font/dtreefont.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<script src="../js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="../lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<link rel="stylesheet" href="../lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="../css/public.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="../js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link href="../css/watercloud.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="../js/lay-module/loading/wcLoading.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="../js/lay-module/loading/wcLoading.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<style>
|
||||
/** 消息列表样式 */
|
||||
.layui-badge {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
padding: 0 6px;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
background-color: #FF5722;
|
||||
color: #fff;
|
||||
border-radius: 2px;
|
||||
left: 40px;
|
||||
}
|
||||
|
||||
.layui-badge-yellow {
|
||||
margin-top: 5px;
|
||||
color: #faad14;
|
||||
background: #fff;
|
||||
border: 1px solid #ffe58f;
|
||||
}
|
||||
|
||||
.layui-badge-green {
|
||||
margin-top: 5px;
|
||||
color: #52c41a;
|
||||
background: #fff;
|
||||
border: 1px solid #b7eb8f;
|
||||
}
|
||||
|
||||
.layui-badge-red {
|
||||
margin-top: 5px;
|
||||
color: #f5222d;
|
||||
background: #fff;
|
||||
border: 1px solid #ffa39e;
|
||||
}
|
||||
|
||||
.message-list {
|
||||
position: absolute;
|
||||
top: 48px;
|
||||
padding: 0px 0px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 45px;
|
||||
overflow-y: auto;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
background: #F2F2F2;
|
||||
}
|
||||
|
||||
.watercolor {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.message-list-item {
|
||||
display: block;
|
||||
line-height: 24px;
|
||||
position: relative;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
}
|
||||
|
||||
.message-list-item:hover, .message-btn-clear:hover, .message-btn-more:hover {
|
||||
background: #F2F2F2;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-icon {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
margin-top: -20px;
|
||||
border-radius: 50%;
|
||||
position: absolute;
|
||||
left: 40px;
|
||||
top: 50%;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-icon.layui-icon {
|
||||
color: #fff;
|
||||
font-size: 15px;
|
||||
text-align: center;
|
||||
background-color: #FE5D58;
|
||||
margin-top: -20px;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-icon + .message-item-right {
|
||||
margin-left: 40px;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-title {
|
||||
color: #666;
|
||||
font-size: 14px;
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-text {
|
||||
color: #999;
|
||||
font-size: 12px;
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
.message-list-item .message-item-extra {
|
||||
color: #999;
|
||||
font-size: 12px;
|
||||
padding-left: 40px;
|
||||
}
|
||||
|
||||
.message-list-item > .layui-badge {
|
||||
position: absolute;
|
||||
right: 20px;
|
||||
top: 12px;
|
||||
left: 40px;
|
||||
}
|
||||
|
||||
.message-btn-clear, .message-btn-more {
|
||||
color: #666;
|
||||
display: block;
|
||||
padding: 10px 5px;
|
||||
line-height: 24px;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.message-btn-clear {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
}
|
||||
|
||||
.message-btn-more {
|
||||
color: #666;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.message-btn-more.ew-btn-loading > .ew-btn-loading-text {
|
||||
font-size: 13px !important;
|
||||
}
|
||||
|
||||
.message-list-empty {
|
||||
color: #999;
|
||||
padding: 100px 0;
|
||||
text-align: center;
|
||||
display: none;
|
||||
}
|
||||
|
||||
.message-list-empty > .layui-icon {
|
||||
color: #ccc;
|
||||
display: block;
|
||||
font-size: 45px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.show-empty .message-list-empty {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.show-empty .message-btn-clear, .show-empty .message-list {
|
||||
display: none;
|
||||
}
|
||||
body {
|
||||
margin: 5px 0px 5px 0px;
|
||||
}
|
||||
/** //消息列表样式结束 */
|
||||
</style>
|
||||
<script>
|
||||
layui.use(['element', 'jquery', 'common'], function () {
|
||||
var $ = layui.$;
|
||||
var common = layui.common;
|
||||
$(function () {
|
||||
//todo ajax获取3个信息的参数 进行显示
|
||||
common.ajax({
|
||||
url: "/InfoManage/Message/GetUnReadListJson",
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function (data) {
|
||||
//通知值
|
||||
var num1 = 0;
|
||||
//私信值
|
||||
var num2 = 0;
|
||||
//带办值
|
||||
var num3 = 0;
|
||||
var html1 = '';
|
||||
var html2 = '';
|
||||
var html3 = '';
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
if (data[i].F_MessageType == 0) {
|
||||
num1++;
|
||||
html1 += '<a class="message-list-item" id="' + data[i].F_Id + '" href="javascript:;">'
|
||||
+ '<div class="watercolor">'
|
||||
+ '<i class="layui-icon layui-icon-tips message-item-icon"></i>'
|
||||
+ '<div class="message-item-right">'
|
||||
+ '<div class="message-item-title">' + '通知--' + new Date(data[i].F_CreatorTime).Format("yyyy-MM-dd hh:mm") + '</div>'
|
||||
+ '<div class="message-item-text layui-hide">' + data[i].F_MessageInfo + '</div>'
|
||||
+ '<div class="message-item-extra">' + data[i].F_CreatorUserName + '</div>'
|
||||
+ '</div>'
|
||||
+ '</div >'
|
||||
+ '</a >';
|
||||
}
|
||||
else if (data[i].F_MessageType == 1) {
|
||||
num2++;
|
||||
html2 += '<a class="message-list-item" id="' + data[i].F_Id + '" href="javascript:;">'
|
||||
+ '<div class="watercolor">'
|
||||
+ '<div class="message-item-right">'
|
||||
+ '<div class="message-item-title">' + '私信--' + data[i].F_CreatorUserName + '</div>'
|
||||
+ '<div class="message-item-text layui-hide">' + data[i].F_MessageInfo + '</div>'
|
||||
+ '<div class="message-item-extra">' + new Date(data[i].F_CreatorTime).Format("yyyy-MM-dd hh:mm") + '</div>'
|
||||
+ '</div>'
|
||||
+ '</div>'
|
||||
+ '</a>';
|
||||
}
|
||||
else {
|
||||
num3++;
|
||||
html3 += '<a class="message-list-item" id="' + data[i].F_Id + '" href="javascript:;">'
|
||||
+ '<div class="watercolor">'
|
||||
+ '<span class="layui-badge ' + 'layui-badge-yellow' + '">' + '待处理' + '</span>'
|
||||
+ '<div class="message-item-right">'
|
||||
+ '<h2 class="message-item-title">' + data[i].F_MessageInfo + '</h2>'
|
||||
+ '<div class="message-item-text layui-hide">' + data[i].F_Href + '</div>'
|
||||
+ '<div class="message-item-extra">' + new Date(data[i].F_CreatorTime).Format("yyyy-MM-dd hh:mm") + '</div>'
|
||||
+ '</div>'
|
||||
+ '</div>'
|
||||
+ '</a>';
|
||||
}
|
||||
}
|
||||
$('#message1').html("通知(" + num1 + ")");
|
||||
$('#message2').html("私信(" + num2 + ")");
|
||||
$('#message3').html("待办(" + num3 + ")");
|
||||
$('#list1').html(html1);
|
||||
$('#list2').html(html2);
|
||||
$('#list3').html(html3);
|
||||
if (num1 == 0) {
|
||||
$('#list1').parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
if (num2 == 0) {
|
||||
$('#list2').parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
if (num3 == 0) {
|
||||
$('#list3').parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
wcLoading.close();
|
||||
/* 按钮点击事件 */
|
||||
$('body').on('click', '.message-list-item', function () {
|
||||
//todo 前后交互,htm2是根据后端数据生成的
|
||||
var message = $('.layui-this')[0].id;
|
||||
common.ajax({
|
||||
url: "/InfoManage/Message/ReadMsgForm",
|
||||
data: { keyValue: this.id },
|
||||
dataType: "json",
|
||||
type: 'POST',
|
||||
success: function () {
|
||||
}
|
||||
});
|
||||
if (message == 'message1') {
|
||||
var title = $(this).children('.watercolor').children('.message-item-right').children('.message-item-title').text(),
|
||||
noticeTime = $(this).children('.watercolor').children('.message-item-right').children('.message-item-extra').text(),
|
||||
content = $(this).children('.watercolor').children('.message-item-right').children('.message-item-text').text();
|
||||
var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
|
||||
'<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
|
||||
'<div style="font-size: 12px">' + content + '</div>\n' +
|
||||
'</div>\n';
|
||||
top.layer.open({
|
||||
type: 1,
|
||||
title: '通知' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
||||
area: '250px;',
|
||||
shade: 0.8,
|
||||
id: 'layuimini-notice',
|
||||
btn: ['确定'],
|
||||
btnAlign: 'c',
|
||||
moveType: 1,
|
||||
content: html
|
||||
});
|
||||
}
|
||||
else if (message == 'message2') {
|
||||
var title = $(this).children('.watercolor').children('.message-item-right').children('.message-item-title').text(),
|
||||
noticeTime = $(this).children('.watercolor').children('.message-item-right').children('.message-item-extra').text(),
|
||||
content = $(this).children('.watercolor').children('.message-item-right').children('.message-item-text').text();
|
||||
var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
|
||||
'<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
|
||||
'<div style="font-size: 12px">' + content + '</div>\n' +
|
||||
'</div>\n';
|
||||
top.layer.open({
|
||||
type: 1,
|
||||
title: '私信' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
||||
area: '250px;',
|
||||
shade: 0.8,
|
||||
id: 'layuimini-notice',
|
||||
btn: ['确定'],
|
||||
btnAlign: 'c',
|
||||
moveType: 1,
|
||||
content: html
|
||||
});
|
||||
}
|
||||
else {
|
||||
var Href = $(this).children('.watercolor').children('.message-item-right').children('.message-item-text').html();
|
||||
top.$("[layuimini-href='" + Href + "']", ".layuimini-menu-left").click();
|
||||
common.modalClose();
|
||||
}
|
||||
|
||||
});
|
||||
/* 清空消息点击事件 分开写交互*/
|
||||
$('#messageClearBtn1').click(function () {
|
||||
var thisObj = $(this);
|
||||
common.ajax({
|
||||
url: "/InfoManage/Message/ReadAllMsgForm?type=0",
|
||||
type: "POST",
|
||||
success: function () {
|
||||
$('#message1').html("通知(0)");
|
||||
$(thisObj).parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
});
|
||||
});
|
||||
$('#messageClearBtn2').click(function () {
|
||||
var thisObj = $(this);
|
||||
common.ajax({
|
||||
url: "/InfoManage/Message/ReadAllMsgForm?type=1",
|
||||
type: "POST",
|
||||
success: function () {
|
||||
$('#message2').html("私信(0)");
|
||||
$(thisObj).parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
$('#messageClearBtn3').click(function () {
|
||||
var thisObj = $(this);
|
||||
common.ajax({
|
||||
url: "/InfoManage/Message/ReadAllMsgForm?type=2",
|
||||
type: "POST",
|
||||
success: function () {
|
||||
$('#message3').html("待办(0)");
|
||||
$(thisObj).parents('.layui-tab-item').addClass('show-empty');
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-card" style="box-shadow: none;border: none;">
|
||||
<div class="layui-tab layui-tab-brief">
|
||||
<ul class="layui-tab-title" style="text-align: center;">
|
||||
<li class="layui-this" id="message1"></li>
|
||||
<li id="message2" class="layui-hide"></li>
|
||||
<li id="message3"></li>
|
||||
</ul>
|
||||
<div class="layui-tab-content" style="padding: 0;">
|
||||
<!-- tab1 -->
|
||||
<div class="layui-tab-item layui-show">
|
||||
<div class="message-list" id="list1">
|
||||
</div>
|
||||
<!-- 列表为空 -->
|
||||
<div class="message-list-empty">
|
||||
<i class="layui-icon layui-icon-notice"></i>
|
||||
<div>没有通知</div>
|
||||
</div>
|
||||
<a id="messageClearBtn1" class="message-btn-clear">全部标记已读</a>
|
||||
</div>
|
||||
<!-- tab2 -->
|
||||
<div class="layui-tab-item">
|
||||
<div class="message-list" id="list2">
|
||||
</div>
|
||||
<!-- 列表为空 -->
|
||||
<div class="message-list-empty">
|
||||
<i class="layui-icon layui-icon-dialogue"></i>
|
||||
<div>没有私信</div>
|
||||
</div>
|
||||
<a id="messageClearBtn2" class="message-btn-clear">全部标记已读</a>
|
||||
</div>
|
||||
<!-- tab3 -->
|
||||
<div class="layui-tab-item">
|
||||
<div class="message-list" id="list3">
|
||||
</div>
|
||||
<!-- 列表为空 -->
|
||||
<div class="message-list-empty">
|
||||
<i class="layui-icon layui-icon-flag"></i>
|
||||
<div>没有待办</div>
|
||||
</div>
|
||||
<a id="messageClearBtn3" class="message-btn-clear">全部标记已读</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
123
WaterCloud.Web/Views/Home/UserSetting.cshtml
Normal file
123
WaterCloud.Web/Views/Home/UserSetting.cshtml
Normal file
@@ -0,0 +1,123 @@
|
||||
@{
|
||||
ViewBag.Title = "Index";
|
||||
Layout = "~/Views/Shared/_Index.cshtml";
|
||||
}
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>基本资料</title>
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<style>
|
||||
|
||||
.layui-form-item .layui-input-company {
|
||||
width: auto;
|
||||
padding-right: 10px;
|
||||
line-height: 38px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="layuimini-container">
|
||||
<div class="layuimini-main">
|
||||
<div class="layui-form layuimini-form" lay-filter="adminform">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">账号</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="F_Account" name="F_Account" lay-verify="required" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">姓名</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="F_RealName" name="F_RealName" autocomplete="off" lay-verify="required" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label ">性别</label>
|
||||
<div class="layui-input-block">
|
||||
<select id="F_Gender" name="F_Gender">
|
||||
<option value="true">男</option>
|
||||
<option value="false">女</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label required">生日</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="F_Birthday" name="F_Birthday" autocomplete="off" value="" lay-verify="required" class="layui-input ">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">手机</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="F_MobilePhone" name="F_MobilePhone" autocomplete="off" placeholder="请输入手机号" value="" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">邮箱</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="F_Email" name="F_Email" autocomplete="off" placeholder="请输入邮箱" value="" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item layui-form-text">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-block">
|
||||
<textarea id="F_Description" name="F_Description" autocomplete="off" class="layui-textarea" placeholder="请输入备注信"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" style="text-align:center">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn" lay-submit lay-filter="saveBtn">确认保存</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
layui.use(['jquery', 'form', 'laydate', 'common', 'optimizeSelectOption'], function () {
|
||||
|
||||
var form = layui.form,
|
||||
$ = layui.$,
|
||||
common = layui.common,
|
||||
laydate = layui.laydate;
|
||||
$(function () {
|
||||
common.ajax({
|
||||
url: "/SystemOrganize/User/GetUserFormJson",
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function (data) {
|
||||
common.val('adminform', data);
|
||||
//$('#F_Birthday').val(new Date(data.F_Birthday).Format("yyyy-MM-dd"));
|
||||
}
|
||||
});
|
||||
form.render();
|
||||
});
|
||||
wcLoading.close();
|
||||
//执行一个laydate实例
|
||||
laydate.render({
|
||||
elem: '#F_Birthday'
|
||||
, btns: ['clear', 'now']
|
||||
, trigger: 'click',
|
||||
format: 'yyyy-MM-dd',
|
||||
});
|
||||
//监听提交
|
||||
form.on('submit(saveBtn)', function (data) {
|
||||
var postData = data.field;
|
||||
common.submitForm({
|
||||
url: "/SystemOrganize/User/SubmitUserForm",
|
||||
param: postData,
|
||||
close: false,
|
||||
success: function () {
|
||||
|
||||
}
|
||||
})
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
249
WaterCloud.Web/Views/Login/Index.cshtml
Normal file
249
WaterCloud.Web/Views/Login/Index.cshtml
Normal file
@@ -0,0 +1,249 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-cn">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>@ViewBag.ProjectName</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta http-equiv="Access-Control-Allow-Origin" content="*">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<link rel="icon" href="@ViewBag.LogoIcon">
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/loginnew.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/cookie/jquery.cookie.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/md5/base64.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/md5/jquery.md5.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script>
|
||||
layui.use(['jquery', 'form', 'table', 'common', 'commonTable', 'echarts'], function () {
|
||||
});
|
||||
</script>
|
||||
@*动画特效*@
|
||||
@* <div id="starsBox"></div>*@
|
||||
<div class="layui-container">
|
||||
<div class="admin-login-background">
|
||||
<div class="layui-form login-form">
|
||||
<div class="logo-title">
|
||||
<h1>@ViewBag.ProjectName</h1>
|
||||
</div>
|
||||
<form class="layui-form" action="">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-icon layui-icon-username" for="username"></label>
|
||||
<input type="text" id="username" lay-verify="required|account" placeholder="用户名" autocomplete="off" class="layui-input" value="@ViewBag.UserName">
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-icon layui-icon-password" for="password"></label>
|
||||
<input type="password" id="password" lay-verify="required|password" placeholder="密码" autocomplete="off" class="layui-input" value="@ViewBag.Password">
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-icon layui-icon-vercode" for="captcha"></label>
|
||||
<div class="code">
|
||||
<input id="captcha" type="text" name="captcha" lay-verify="required|captcha" placeholder="图形验证码" autocomplete="off" class="layui-input verification captcha">
|
||||
<canvas id="canvas" width="100" height="43"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item layui-hide">
|
||||
<select id="wchost" name="wchost" lay-verify="required">
|
||||
</select>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<span>
|
||||
<input type="checkbox" name="remember_user" id="remember_user" lay-skin="primary" style="vertical-align:middle;" value="true">
|
||||
<span>记住密码</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="login_tips"></div>
|
||||
<button id="login_button" class="layui-btn layui-btn-fluid" lay-submit="" lay-filter="login">登 入</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="~/js/login.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script>
|
||||
//模式
|
||||
var SqlMode = '@ViewBag.SqlMode';
|
||||
(function ($) {
|
||||
var show_num = [];
|
||||
$.login = {
|
||||
formMessage: function (msg) {
|
||||
$('.login_tips').find('.tips_msg').remove();
|
||||
$('.login_tips').append('<div class="tips_msg"><i class="fa fa-question-circle"></i>' + msg + '</div>');
|
||||
},
|
||||
init: function () {
|
||||
$("#canvas").click(function () {
|
||||
draw(show_num);
|
||||
});
|
||||
var login_error = top.$.cookie('WaterCloud_login_error');
|
||||
if (login_error != null) {
|
||||
switch (login_error) {
|
||||
case "overdue":
|
||||
$.login.formMessage('系统登录已超时,请重新登录');
|
||||
break;
|
||||
case "OnLine":
|
||||
$.login.formMessage('您的帐号已在其它地方登录,请重新登录');
|
||||
break;
|
||||
case "-1":
|
||||
$.login.formMessage('系统未知错误,请重新登录');
|
||||
break;
|
||||
}
|
||||
top.$.cookie('WaterCloud_login_error', '', { path: "/", expires: -1 });
|
||||
}
|
||||
},
|
||||
checkLogin: function () {
|
||||
$.ajax({
|
||||
url: "/Login/CheckLoginState?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"),
|
||||
type: "post",
|
||||
async: false,
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
if (data.state == "success") {
|
||||
var url = $.cookie('wc_returnurl');
|
||||
if (url != null) {
|
||||
window.location.href = '@Url.Content("~/Home/Index")' + "#/" + url;
|
||||
$.cookie('wc_returnurl', '', { path: "/", expires: -1 });
|
||||
}
|
||||
else {
|
||||
window.location.href = '@Url.Content("~/Home/Index")';
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
$(function () {
|
||||
if (SqlMode =='TenantSql') {
|
||||
$('#wchost').parent().removeClass('layui-hide');
|
||||
}
|
||||
else {
|
||||
$('#wchost').parent().addClass('layui-hide');
|
||||
$('#wchost').removeAttr('lay-verify');
|
||||
}
|
||||
$.login.init();
|
||||
$.login.checkLogin();
|
||||
$("#wchost").bindSelect({
|
||||
url: "/Login/GetListJsonByLogin",
|
||||
id: "F_HostUrl",
|
||||
text: "F_ProjectName"
|
||||
});
|
||||
draw(show_num);
|
||||
if ($.cookie("remember_user")) {
|
||||
$("#remember_user").prop("checked", true);
|
||||
$("#username").val($.cookie("username"));
|
||||
$("#password").val(Base64.decode($.cookie("password")));
|
||||
}
|
||||
});
|
||||
function saveUserInfo() {
|
||||
if ($("#remember_user").prop("checked") == true) {
|
||||
var user_name = $("#username").val();
|
||||
var user_password = $("#password").val();
|
||||
$.cookie("remember_user", "true", {
|
||||
expires: 7
|
||||
}); // 存储一个带7天期限的 cookie
|
||||
$.cookie("username", user_name, {
|
||||
expires: 7
|
||||
}); // 存储一个带7天期限的 cookie
|
||||
$.cookie("password", Base64.encode(user_password), {
|
||||
expires: 7
|
||||
}); // 存储一个带7天期限的 cookie
|
||||
} else {
|
||||
$.cookie("remember_user", "false", {
|
||||
expires: -1
|
||||
}); // 删除 cookie
|
||||
$.cookie("username", '', {
|
||||
expires: -1
|
||||
});
|
||||
$.cookie("password", '', {
|
||||
expires: -1
|
||||
});
|
||||
}
|
||||
}
|
||||
layui.use(['form'], function () {
|
||||
var form = layui.form,
|
||||
layer = layui.layer;
|
||||
// 登录过期的时候,跳出ifram框架
|
||||
if (top.location != self.location) top.location = self.location;
|
||||
|
||||
// 进行登录操作
|
||||
form.on('submit(login)', function (data) {
|
||||
saveUserInfo();
|
||||
data = data.field;
|
||||
if (data.username == '') {
|
||||
layer.msg('用户名不能为空');
|
||||
return false;
|
||||
}
|
||||
if (data.password == '') {
|
||||
layer.msg('密码不能为空');
|
||||
return false;
|
||||
}
|
||||
var num = show_num.join("");
|
||||
if (data.captcha == '') {
|
||||
layer.msg('验证码不能为空');
|
||||
return false;
|
||||
}
|
||||
else if (num != data.captcha.toLowerCase()) {
|
||||
layer.msg('验证码错误');
|
||||
draw(show_num)
|
||||
return false;
|
||||
}
|
||||
$("#login_button").empty();
|
||||
$("#login_button").attr('disabled', 'disabled').html("loading...");
|
||||
$.ajax({
|
||||
url: "/Login/CheckLogin?v=" + new Date().Format("yyyy-MM-dd hh:mm:ss"),
|
||||
data: { username: $.trim($('#username').val()), localurl: $('#wchost').val(), password: $.md5($.trim($('#password').val())) },
|
||||
type: "post",
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
if (data.state == "success") {
|
||||
$("#login_button").empty();
|
||||
$("#login_button").html("登录成功,正在跳转...");
|
||||
var realurl = $.cookie('wc_realreturnurl');
|
||||
if (realurl != null) {
|
||||
window.location.href = realurl;
|
||||
$.cookie('wc_realreturnurl', '', { path: "/", expires: -1 });
|
||||
$.cookie('wc_returnurl', '', { path: "/", expires: -1 });
|
||||
}
|
||||
else {
|
||||
var url = $.cookie('wc_returnurl');
|
||||
if (url != null) {
|
||||
window.location.href = '@Url.Content("~/Home/Index")' + "#/" + url;
|
||||
$.cookie('wc_returnurl', '', { path: "/", expires: -1 });
|
||||
}
|
||||
else {
|
||||
window.location.href = '@Url.Content("~/Home/Index")';
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$("#login_button").empty();
|
||||
$("#login_button").removeAttr('disabled').html("登 入");
|
||||
draw(show_num);
|
||||
layer.msg(data.message);
|
||||
$.login.formMessage(data.message);
|
||||
}
|
||||
},
|
||||
error: function () {
|
||||
$("#login_button").empty();
|
||||
$("#login_button").removeAttr('disabled').html("登 入");
|
||||
draw(show_num);
|
||||
layer.msg("系统未知错误,请重新登录");
|
||||
$.login.formMessage("系统未知错误,请重新登录");
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})(jQuery);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
30
WaterCloud.Web/Views/Shared/_Form.cshtml
Normal file
30
WaterCloud.Web/Views/Shared/_Form.cshtml
Normal file
@@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<title>@ViewBag.Title</title>
|
||||
<link href="~/lib/font-awesome-4.7.0/css/font-awesome.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/framework-clientdata.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/cookie/jquery.cookie.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/art-template/template-web.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/art-template/dateformate.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<link rel="stylesheet" href="~/js/lay-module/dtree/dtree.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<link rel="stylesheet" href="~/js/lay-module/dtree/font/dtreefont.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<link rel="stylesheet" href="~/css/public.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link href="~/css/watercloud.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="~/js/lay-module/loading/wcLoading.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/soulTable.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/js/lay-module/loading/wcLoading.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<script src="~/js/lay-module/iceEditor/iceEditor.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
</head>
|
||||
<body>
|
||||
@RenderBody()
|
||||
@Html.AntiForgeryToken()
|
||||
</body>
|
||||
</html>
|
||||
25
WaterCloud.Web/Views/Shared/_Index.cshtml
Normal file
25
WaterCloud.Web/Views/Shared/_Index.cshtml
Normal file
@@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>@ViewBag.Title</title>
|
||||
<link href="~/lib/font-awesome-4.7.0/css/font-awesome.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<script src="~/lib/jquery-3.4.1/jquery-3.4.1.min.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link rel="stylesheet" href="~/js/lay-module/dtree/dtree.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<link rel="stylesheet" href="~/js/lay-module/dtree/font/dtreefont.css?v=@WaterCloud.Code.GlobalContext.GetVersion()">
|
||||
<script src="~/js/framework-clientdata.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/js/framework-ui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<script src="~/lib/layui/layui.js?v=@WaterCloud.Code.GlobalContext.GetVersion()"></script>
|
||||
<link rel="stylesheet" href="~/lib/layui/css/layui.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/public.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/js/lay-config.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
<link href="~/css/watercloud.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="~/js/lay-module/loading/wcLoading.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<link rel="stylesheet" href="~/css/soulTable.css?v=@WaterCloud.Code.GlobalContext.GetVersion()" media="all">
|
||||
<script src="~/js/lay-module/loading/wcLoading.js?v=@WaterCloud.Code.GlobalContext.GetVersion()" charset="utf-8"></script>
|
||||
</head>
|
||||
<body>
|
||||
@RenderBody()
|
||||
@Html.AntiForgeryToken()
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user