mirror of
https://github.com/201206030/novel-plus.git
synced 2025-07-01 15:26:37 +00:00
438 lines
23 KiB
Java
438 lines
23 KiB
Java
<!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="/layuimini/lib/layui-v2.5.4/css/layui.css" media="all">
|
|
<link rel="stylesheet" href="/layuimini/lib/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
|
|
<link rel="stylesheet" href="/layuimini/css/public.css" media="all">
|
|
<style>
|
|
.layui-card {border:1px solid #f2f2f2;border-radius:5px;}
|
|
.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:#333;transition:all .3s;-webkit-transition:all .3s;}
|
|
.layuimini-qiuck-module a cite {position:relative;top:2px;display:block;color:#666;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;}
|
|
.layuimini-notice-extra {position:absolute;top:50%;margin-top:-8px;right:16px;display:inline-block;height:16px;color:#999;}
|
|
</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-md12">
|
|
<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="userCount">1234</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="authorCount">1234</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="bookCount">1234</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="orderCount">1234</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-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>
|
|
小说精品屋
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>开发语言</td>
|
|
<td>Java</td>
|
|
</tr>
|
|
<tr>
|
|
<td>主要特色</td>
|
|
<td>小说 / 漫画 / 自适应 / 弹幕 / 采集</td>
|
|
</tr>
|
|
<tr>
|
|
<td>下载地址</td>
|
|
<td>
|
|
<a href="https://gitee.com/xiongxyang/fiction_house" target="_blank">Gitee</a> /
|
|
<a href="https://github.com/201206030/fiction_house" target="_blank">Github</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Gitee</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<a href='https://gitee.com/xiongxyang/fiction_house/stargazers'><img src='https://gitee.com/xiongxyang/fiction_house/badge/star.svg?theme=dark' alt='star'></img></a>
|
|
<a href='https://gitee.com/xiongxyang/fiction_house/members'><img src='https://gitee.com/xiongxyang/fiction_house/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Github</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=fiction_house&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=fiction_house&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</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>
|
|
小说精品屋-plus
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>开发语言</td>
|
|
<td>Java</td>
|
|
</tr>
|
|
<tr>
|
|
<td>主要特色</td>
|
|
<td>原创 / 多端 / 充值 / 订阅 / 采集</td>
|
|
</tr>
|
|
<tr>
|
|
<td>下载地址</td>
|
|
<td>
|
|
<a href="https://gitee.com/xiongxyang/novel-plus" target="_blank">Gitee</a> /
|
|
<a href="https://github.com/201206030/novel-plus" target="_blank">Github</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Gitee</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<a href='https://gitee.com/xiongxyang/novel-plus/stargazers'><img src='https://gitee.com/xiongxyang/novel-plus/badge/star.svg?theme=dark' alt='star'></img></a>
|
|
<a href='https://gitee.com/xiongxyang/novel-plus/members'><img src='https://gitee.com/xiongxyang/novel-plus/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Github</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</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>
|
|
小说精品屋-微服务版
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>开发语言</td>
|
|
<td>Java</td>
|
|
</tr>
|
|
<tr>
|
|
<td>主要特色</td>
|
|
<td>SpringCloudAlibaba / Redis / RabbitMq / ElasticSearch / Sharding-Jdbc / Docker</td>
|
|
</tr>
|
|
<tr>
|
|
<td>下载地址</td>
|
|
<td>
|
|
<a href="https://gitee.com/xiongxyang/novel-cloud" target="_blank">Gitee</a> /
|
|
<a href="https://github.com/201206030/novel-cloud" target="_blank">Github</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Gitee</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<a href='https://gitee.com/xiongxyang/novel-cloud/stargazers'><img src='https://gitee.com/xiongxyang/novel-cloud/badge/star.svg?theme=dark' alt='star'></img></a>
|
|
<a href='https://gitee.com/xiongxyang/novel-cloud/members'><img src='https://gitee.com/xiongxyang/novel-cloud/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Github</td>
|
|
<td style="padding-bottom: 0;">
|
|
<div class="layui-btn-container">
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script src="/layuimini/lib/jquery-3.4.1/jquery-3.4.1.min.js" charset="utf-8"></script>
|
|
<script src="/layuimini/lib/layui-v2.5.4/layui.js" charset="utf-8"></script>
|
|
<script src="/layuimini/js/lay-config.js?v=1.0.4" charset="utf-8"></script>
|
|
<script>
|
|
$.ajax({
|
|
type: "GET",
|
|
url: "/novel/stat/countSta",
|
|
data: {},
|
|
success: function (r) {
|
|
if (r.code == 0) {
|
|
$("#userCount").html(r.userCount);
|
|
$("#authorCount").html(r.authorCount);
|
|
$("#bookCount").html(r.bookCount);
|
|
$("#orderCount").html(r.orderCount);
|
|
} else {
|
|
layer.msg(r.msg);
|
|
}
|
|
},
|
|
});
|
|
|
|
layui.use(['layer', 'layuimini','echarts'], function () {
|
|
var $ = layui.jquery,
|
|
layer = layui.layer,
|
|
layuimini = layui.layuimini,
|
|
echarts = layui.echarts;
|
|
|
|
/**
|
|
* 查看公告信息
|
|
**/
|
|
$('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,
|
|
success: function (layero) {
|
|
var btn = layero.find('.layui-layer-btn');
|
|
btn.find('.layui-layer-btn0').attr({
|
|
href: 'https://gitee.com/zhongshaofa/layuimini',
|
|
target: '_blank'
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
/**
|
|
* 报表功能
|
|
*/
|
|
$.ajax({
|
|
type: "GET",
|
|
url: "/novel/stat/tableSta",
|
|
data: {},
|
|
success: function (r) {
|
|
if (r.code == 0) {
|
|
var legendData = ['会员新增','作家新增','作品新增','交易新增'];
|
|
var userSeries = [
|
|
{
|
|
name:'会员新增',
|
|
type:'line',
|
|
data:[]
|
|
},{
|
|
name:'作家新增',
|
|
type:'line',
|
|
data:[]
|
|
},{
|
|
name:'作品新增',
|
|
type:'line',
|
|
data:[]
|
|
},{
|
|
name:'交易新增',
|
|
type:'line',
|
|
data:[]
|
|
}];
|
|
var xAxisData = r.dateList;
|
|
var userTableSta = r.userTableSta;
|
|
for(var i = 0 ; i < xAxisData.length ; i++){
|
|
userSeries[0].data[i] = userTableSta[xAxisData[i]] ? userTableSta[xAxisData[i]] : 0;
|
|
}
|
|
var authorTableSta = r.authorTableSta;
|
|
for(var i = 0 ; i < xAxisData.length ; i++){
|
|
userSeries[1].data[i] = authorTableSta[xAxisData[i]] ? authorTableSta[xAxisData[i]] : 0;
|
|
}
|
|
var bookTableSta = r.bookTableSta;
|
|
for(var i = 0 ; i < xAxisData.length ; i++){
|
|
userSeries[2].data[i] = bookTableSta[xAxisData[i]] ? bookTableSta[xAxisData[i]] : 0;
|
|
}
|
|
var orderTableSta = r.orderTableSta;
|
|
for(var i = 0 ; i < xAxisData.length ; i++){
|
|
userSeries[3].data[i] = orderTableSta[xAxisData[i]] ? orderTableSta[xAxisData[i]] : 0;
|
|
}
|
|
|
|
|
|
|
|
var echartsRecords = echarts.init(document.getElementById('echarts-records'), 'walden');
|
|
var optionRecords = {
|
|
tooltip: {
|
|
trigger: 'axis'
|
|
},
|
|
legend: {
|
|
data:legendData
|
|
},
|
|
grid: {
|
|
left: '3%',
|
|
right: '5%',
|
|
bottom: '3%',
|
|
containLabel: true
|
|
},
|
|
toolbox: {
|
|
feature: {
|
|
saveAsImage: {}
|
|
}
|
|
},
|
|
xAxis: {
|
|
type: 'category',
|
|
boundaryGap: false,
|
|
data: xAxisData
|
|
},
|
|
yAxis: {
|
|
type: 'value'
|
|
},
|
|
series: userSeries
|
|
};
|
|
echartsRecords.setOption(optionRecords);
|
|
|
|
// echarts 窗口缩放自适应
|
|
window.onresize = function(){
|
|
echartsRecords.resize();
|
|
}
|
|
|
|
} else {
|
|
layer.msg(r.msg);
|
|
}
|
|
},
|
|
});
|
|
|
|
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|