crpm-proj-code-set/zxcpxt/src/main/resources/static/route/pages/index.html

416 lines
14 KiB
HTML
Raw Normal View History

2025-06-30 09:30:01 +08:00
<!DOCTYPE html>
<html lang="en">
<head>
<base href="/"/>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>在线测评系统</title>
<link rel="stylesheet" href="assets/crpm/js/layui/css/layui.css" />
<link rel="stylesheet" href="assets/crpm/fonts/font-awesome/css/font-awesome.css" />
<link rel="stylesheet" href="assets/crpm/index/index3/index3.css" />
<link rel="stylesheet" href="assets/crpm/index/index.css" />
</head>
<body>
<div id="app">
<div class="layui-layout layui-layout-admin">
<div class="layui-header">
<div class="layui-logo layui-hide-xs layui-bg-black">
在线测评系统
</div>
<ul class="layui-nav layui-layout-right">
<li class="layui-nav-item layui-hide layui-show-sm-inline-block">
<a href="javascript:void(0);">管理员</a>
<dl class="layui-nav-child">
<dd><a href="javascript:void(0);">退出</a></dd>
</dl>
</li>
</ul>
</div>
<div class="layui-side layui-bg-black">
<div class="layui-side-scroll">
<!-- 左侧导航区域可配合layui已有的垂直导航 -->
<ul class="layui-nav layui-nav-tree" lay-filter="test">
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-c6e43803-1fd3-4869-afbf-19bdad5cba01" data-mod-id="18a85b2f-22b9-4e85-a913-d799d5bd9744" data-url="route/pages/6e55d5/list.html"><i class="fa fa-list"></i> 考试安排</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-4b169ac5-041d-4ce7-9888-e272f7d46aca" data-mod-id="ad52bb2a-b3a8-42b9-810c-936af20a61b9" data-url="route/pages/fd7c04/list.html"><i class="fa fa-list"></i> 系统设置</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-9f27ecbc-2380-4244-b1a3-23a40551f909" data-mod-id="04fe9e21-8eb8-44e2-b124-49dcab8a248b" data-url="route/pages/d307dd/list.html"><i class="fa fa-list"></i> 试卷管理</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-5a0a6124-8680-4588-ac2f-f32e4f3f46b3" data-mod-id="068117b5-128e-4964-aaba-f138663c24d2" data-url="route/pages/f7032e/list.html"><i class="fa fa-list"></i> 题库管理</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-49ba617b-2a3f-4730-b5a5-fa4b703358f9" data-mod-id="86b515f5-c49f-47d3-a192-b41687fd3b49" data-url="route/pages/286b2b/list.html"><i class="fa fa-list"></i> 用户管理</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-e99c4fbe-7436-4bf7-8dd5-46f3a7ecbbea" data-mod-id="f23678c6-8f60-4bd1-8a87-36210666acdd" data-url="route/pages/d6a132/list.html"><i class="fa fa-list"></i> 班级管理</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-902a979b-e5e0-4ed6-a396-159afd54e3ca" data-mod-id="eab4ad11-37f2-43df-b8ab-b014178bac77" data-url="route/pages/d633e3/list.html"><i class="fa fa-list"></i> 答题记录</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-f1a8ab61-a8fc-4ef9-8ee2-40f45c7cc00d" data-mod-id="e194e640-0536-4933-b389-f57dc09414c0" data-url="route/pages/e281ff/list.html"><i class="fa fa-list"></i> 成绩分析</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-88dda718-8817-48a9-aa5b-e32d91b193da" data-mod-id="4611c960-893f-49a5-9109-5273faa6c646" data-url="route/pages/079b7d/list.html"><i class="fa fa-list"></i> 错题统计</a>
</li>
<li class="layui-nav-item layui-nav-itemed">
<a href="javascript:void(0);" class="menu-item" id="menu-41ffc7bf-14bd-4945-810a-aa72c05c99fb" data-mod-id="4b02c324-1fee-4abf-aee6-25e30c1f9713" data-url="route/pages/86ad8d/list.html"><i class="fa fa-list"></i> 资源库管理</a>
</li>
</ul>
</div>
</div>
<div class="layui-body">
<!-- 内容主体区域 -->
<div class="layui-box-top">
<blockquote class="layui-elem-quote-index layui-text">
欢迎使用在线测评系统
</blockquote>
<div class='homepage' id="homepage">
<div class='homepage-top' >
<div id="barChartOne" class='barChartOne' ></div>
<div class='pieChart' id="pieChart"></div>
<div id="barChartTwo" class='barChartTwo' ></div>
</div>
<div class='homepage-bot' >
<div class='lineChart' id="lineChart"></div>
<div id="barChartThree" class='barChartThree' ></div>
<div id="funnelChart" class='funnelChart' ></div>
</div>
</div>
<div class="layui-card layui-panel page-iframe-container">
<iframe class="page-iframe" id="pageIframe" src="" style="display: none;"></iframe>
</div>
</div>
</div>
<div class="layui-footer"></div>
</div>
</div>
<script src="assets/crpm/js/layui/layui.js"></script>
<script src="assets/crpm/js/echarts/echarts.min.js"></script>
<script>
layui.use(['element', 'layer', 'util'], function () {
var element = layui.element;
var layer = layui.layer;
var util = layui.util;
var $ = layui.$;
var $win = $(window);
window['layer'] = layer;
var init = function() {
var $pageIframe = $('#pageIframe');
$pageIframe.css({
height: `${$win.height() - 200}px`
})
}
init();
var homepage = document.getElementById('homepage');
$(document).on('click', '.menu-item', function() {
var url = this.dataset.url;
var pageIframe = $('#pageIframe');
pageIframe.attr('src', url);
pageIframe.show();
homepage.style.display = 'none';
});
});
//柱状图1
var barChartOne = echarts.init(document.getElementById('barChartOne'));
var optionBarOne = {
animation: false,
title: {
//text: '业务核心数据'//
},
tooltip: {},
legend: {
data: ['data1', 'data2'] ,
left: 'right'
},
xAxis: {
data: ['一月', '二月', '三月', '四月', '五月','六月','七月','八月','九月','十月','十一月','十二月',]
},
yAxis: {},
series: [{
name: 'data1',
type: 'bar',
data: [5, 20, 36, 10, 10,15,16,20,12,13,35,12] // 第一条柱状图的数据
}, {
name: 'data2',
type: 'bar',
data: [15, 10, 25, 8, 15,8,30,12,11,18,25,12] // 第二条柱状图的数据
}]
};
barChartOne.setOption(optionBarOne);
// 饼状图
var pieChart = echarts.init(document.getElementById('pieChart'));
var optionPie = {
animation: false,
title: {
//text: '业务核心数据',//
left: 'left'
},
tooltip: {
trigger: 'item'
},
legend: {
orient: 'vertical',
left: 'right'
},
series: [{
//name: '嘻嘻',//
type: 'pie',
radius: ['0%', '70%'],
data: [
{value: 150, name: 'data1'},
{value: 274, name: 'data2'},
{value: 310, name: 'data3'},
{value: 335, name: 'data4'},
{value: 400, name: 'data5'}
]
}]
};
pieChart.setOption(optionPie);
//柱状图2
var barChartTwo = echarts.init(document.getElementById('barChartTwo'));
var optionBarTwo = {
animation: false,
title: {
//text: '业务核心数据'//
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: {
data: ['Profit', 'Expenses', 'Income']
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [
{
type: 'value'
}
],
yAxis: [
{
type: 'category',
axisTick: {
show: false
},
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
}
],
series: [
{
name: 'Profit',
type: 'bar',
label: {
show: true,
position: 'inside'
},
emphasis: {
focus: 'series'
},
data: [200, 170, 240, 244, 200, 220, 210]
},
{
name: 'Income',
type: 'bar',
stack: 'Total',
label: {
show: true
},
emphasis: {
focus: 'series'
},
data: [320, 302, 341, 374, 390, 450, 420]
},
{
name: 'Expenses',
type: 'bar',
stack: 'Total',
label: {
show: true,
position: 'left'
},
emphasis: {
focus: 'series'
},
data: [-120, -132, -101, -134, -190, -230, -210]
}
]
};
barChartTwo.setOption(optionBarTwo);
//折线图
var lineChart = echarts.init(document.getElementById('lineChart'));
var optionLine = {
animation: false,
title: {
//text: '业务核心数据',//
left: 'left', // Center align the title horizontally
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['2024-1', '2024-2', '2024-3', '2024-4', '2024-5', '2024-6', '2024-7']
},
yAxis: {
type: 'value'
},
tooltip: {
trigger: 'axis' // 设置触发类型为坐标轴触发
},
series: [{
data: [820, 733, 901, 600, 1290, 500, 1320],
type: 'line',
smooth: true,
areaStyle: {}
}]
};
lineChart.setOption(optionLine);
var currentIndex = -1;
var interval = 1000; // 切换间隔时间,单位是毫秒
var timer; // 定时器变量
// 自动触发选中状态并每隔1秒自动向下一个触发
function startAutoPlay() {
timer = setInterval(function() {
var dataLen = optionLine.series[0].data.length;
// 取消之前高亮的图形
lineChart.dispatchAction({
type: 'downplay',
seriesIndex: 0,
dataIndex: currentIndex
});
currentIndex = (currentIndex + 1) % dataLen;
// 高亮当前图形
lineChart.dispatchAction({
type: 'highlight',
seriesIndex: 0,
dataIndex: currentIndex
});
// 显示 tooltip
lineChart.dispatchAction({
type: 'showTip',
seriesIndex: 0,
dataIndex: currentIndex
});
}, interval);
}
// 开始自动播放
startAutoPlay();
// 鼠标悬停在图表上时暂停自动播放
lineChart.on('mouseover', function() {
clearInterval(timer);
});
// 鼠标离开图表区域时恢复自动播放
lineChart.on('mouseout', function() {
startAutoPlay();
});
//柱状图3
var barChartThree = echarts.init(document.getElementById('barChartThree'));
var optionBarThree = {
animation: false,
title: {
//text: '业务核心数据'//
},
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [
{
data: [120, 200, 150, 80, 70, 110, 130],
type: 'bar'
}
]
};
barChartThree.setOption(optionBarThree);
//漏斗图
var funnelChart = echarts.init(document.getElementById('funnelChart'));
var optionFunnel = {
animation: false,
title: {
text: ''
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b} : {c}%'
},
toolbox: {
feature: {
dataView: { readOnly: false },
restore: {},
saveAsImage: {}
}
},
legend: {
data: ['Show', 'Click', 'Visit', 'Inquiry', 'Order']
},
series: [
{
name: 'Funnel',
type: 'funnel',
left: '10%',
top: 60,
bottom: 60,
width: '80%',
min: 0,
max: 100,
minSize: '0%',
maxSize: '100%',
sort: 'descending',
gap: 2,
label: {
show: true,
position: 'inside'
},
labelLine: {
length: 10,
lineStyle: {
width: 1,
type: 'solid'
}
},
itemStyle: {
borderColor: '#fff',
borderWidth: 1
},
emphasis: {
label: {
fontSize: 20
}
},
data: [
{ value: 60, name: 'Visit' },
{ value: 40, name: 'Inquiry' },
{ value: 20, name: 'Order' },
{ value: 80, name: 'Click' },
{ value: 100, name: 'Show' }
]
}
]
};
funnelChart.setOption(optionFunnel);
</script>
</body>
</html>