|
@@ -0,0 +1,544 @@
|
|
|
|
+<template>
|
|
|
|
+ <div class="main">
|
|
|
|
+ <div class="header">苏格拉底平台</div>
|
|
|
|
+ <div class="content">
|
|
|
|
+ <div class="top">
|
|
|
|
+ <el-row :gutter="20">
|
|
|
|
+ <el-col :span="3">
|
|
|
|
+ <div class="top1">
|
|
|
|
+ <div class="title">今日IES使用数</div>
|
|
|
|
+ <div ref="IES_use"
|
|
|
|
+ class="IES_use"
|
|
|
|
+ id="container1"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="3">
|
|
|
|
+ <div class="top2">
|
|
|
|
+ <div class="title">账号使用情况</div>
|
|
|
|
+ <div ref="account_use"
|
|
|
|
+ class="account_use"
|
|
|
|
+ id="container2"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="6">
|
|
|
|
+ <div class="top3">
|
|
|
|
+ <div class="title">一日使用率走势</div>
|
|
|
|
+ <div ref="utilization_rate"
|
|
|
|
+ class="utilization_rate"
|
|
|
|
+ id="container3"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="4">
|
|
|
|
+ <div class="top4">
|
|
|
|
+ <div class="title">资源上传及使用状况</div>
|
|
|
|
+ <div ref="resources"
|
|
|
|
+ class="resources"
|
|
|
|
+ id="container4"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <div class="top5">
|
|
|
|
+ <div class="title">点阅率成长趋势</div>
|
|
|
|
+ <div ref="click_rate"
|
|
|
|
+ class="click_rate"
|
|
|
|
+ id="container5"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="bottom">
|
|
|
|
+ <el-row :gutter="20">
|
|
|
|
+ <el-col :span="4">
|
|
|
|
+ <div class="bottom1">
|
|
|
|
+ <div class="title">今日苏格拉底平台使用数</div>
|
|
|
|
+ <div ref="socrates"
|
|
|
|
+ class="socrates"
|
|
|
|
+ id="container1"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <div class="bottom2">
|
|
|
|
+ <div class="title">点阅率成长趋势</div>
|
|
|
|
+ <div ref="click"
|
|
|
|
+ class="click"
|
|
|
|
+ id="container2"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="5">
|
|
|
|
+ <div class="bottom3">
|
|
|
|
+ <div class="title">资源上传及使用状况</div>
|
|
|
|
+ <div ref="resource_upload"
|
|
|
|
+ class="resource_upload"
|
|
|
|
+ id="container3"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :span="7">
|
|
|
|
+ <div class="bottom4">
|
|
|
|
+ <div class="title">资源上传统计</div>
|
|
|
|
+ <div ref="statistics"
|
|
|
|
+ class="statistics"
|
|
|
|
+ id="container4"
|
|
|
|
+ style="width:100%;height:280px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </div>
|
|
|
|
+
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+<script>
|
|
|
|
+import * as echarts from 'echarts';
|
|
|
|
+import { ref, defineComponent, onMounted } from 'vue';
|
|
|
|
+export default defineComponent({
|
|
|
|
+ setup() {
|
|
|
|
+ let utilization_rate = ref(null);
|
|
|
|
+ let click_rate = ref(null);
|
|
|
|
+ let click = ref(null);
|
|
|
|
+ let statistics = ref(null);
|
|
|
|
+ onMounted(() => {
|
|
|
|
+ Echarts1();
|
|
|
|
+ Echarts2();
|
|
|
|
+ Echarts3();
|
|
|
|
+ Echarts4();
|
|
|
|
+ });
|
|
|
|
+ const Echarts1 = () => {
|
|
|
|
+ const myChart1 = echarts.init(utilization_rate.value);
|
|
|
|
+ const option = {
|
|
|
|
+ tooltip: {
|
|
|
|
+ trigger: 'axis',
|
|
|
|
+ axisPointer: {
|
|
|
|
+ type: 'cross',
|
|
|
|
+ label: {
|
|
|
|
+ backgroundColor: '#6a7985',
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ legend: {
|
|
|
|
+ data: ['IES中国', 'IES台湾', 'IES全球'],
|
|
|
|
+ },
|
|
|
|
+ grid: {
|
|
|
|
+ left: '3%',
|
|
|
|
+ right: '4%',
|
|
|
|
+ bottom: '3%',
|
|
|
|
+ containLabel: true,
|
|
|
|
+ },
|
|
|
|
+ xAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'category',
|
|
|
|
+ boundaryGap: false,
|
|
|
|
+ data: [
|
|
|
|
+ '1',
|
|
|
|
+ '2',
|
|
|
|
+ '3',
|
|
|
|
+ '4',
|
|
|
|
+ '5',
|
|
|
|
+ '6',
|
|
|
|
+ '7',
|
|
|
|
+ '8',
|
|
|
|
+ '9',
|
|
|
|
+ '10',
|
|
|
|
+ '11',
|
|
|
|
+ '12',
|
|
|
|
+ '13',
|
|
|
|
+ '14',
|
|
|
|
+ '15',
|
|
|
|
+ '16',
|
|
|
|
+ '17',
|
|
|
|
+ '18',
|
|
|
|
+ '19',
|
|
|
|
+ '20',
|
|
|
|
+ '21',
|
|
|
|
+ '22',
|
|
|
|
+ '23',
|
|
|
|
+ '24',
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ yAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'value',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ series: [
|
|
|
|
+ {
|
|
|
|
+ name: 'IES中国',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 30, 40, 20, 10, 60, 80, 100, 150, 160, 180, 150, 160, 170, 140,
|
|
|
|
+ 100, 120, 90, 50, 80, 60, 100, 20, 10, 50,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: 'IES台湾',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 10, 30, 20, 50, 40, 60, 80, 100, 110, 90, 130, 120, 150, 180, 170,
|
|
|
|
+ 190, 120, 180, 150, 120, 130, 140, 110,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: 'IES全球',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 5, 10, 6, 28, 40, 32, 50, 60, 12, 18, 20, 60, 15, 29, 32, 55, 19,
|
|
|
|
+ 26, 85, 25, 63, 23, 52, 32, 52, 32, 51, 20,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ };
|
|
|
|
+ myChart1.setOption(option);
|
|
|
|
+ };
|
|
|
|
+ const Echarts2 = () => {
|
|
|
|
+ const myChart2 = echarts.init(click_rate.value);
|
|
|
|
+ const option = {
|
|
|
|
+ tooltip: {
|
|
|
|
+ trigger: 'axis',
|
|
|
|
+ axisPointer: {
|
|
|
|
+ type: 'cross',
|
|
|
|
+ label: {
|
|
|
|
+ backgroundColor: '#6a7985',
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ legend: {
|
|
|
|
+ data: ['IES中国', 'IES台湾', 'IES全球'],
|
|
|
|
+ },
|
|
|
|
+ grid: {
|
|
|
|
+ left: '3%',
|
|
|
|
+ right: '4%',
|
|
|
|
+ bottom: '3%',
|
|
|
|
+ containLabel: true,
|
|
|
|
+ },
|
|
|
|
+ xAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'category',
|
|
|
|
+ boundaryGap: false,
|
|
|
|
+ data: [
|
|
|
|
+ '1',
|
|
|
|
+ '2',
|
|
|
|
+ '3',
|
|
|
|
+ '4',
|
|
|
|
+ '5',
|
|
|
|
+ '6',
|
|
|
|
+ '7',
|
|
|
|
+ '8',
|
|
|
|
+ '9',
|
|
|
|
+ '10',
|
|
|
|
+ '11',
|
|
|
|
+ '12',
|
|
|
|
+ '13',
|
|
|
|
+ '14',
|
|
|
|
+ '15',
|
|
|
|
+ '16',
|
|
|
|
+ '17',
|
|
|
|
+ '18',
|
|
|
|
+ '19',
|
|
|
|
+ '20',
|
|
|
|
+ '21',
|
|
|
|
+ '22',
|
|
|
|
+ '23',
|
|
|
|
+ '24',
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ yAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'value',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ series: [
|
|
|
|
+ {
|
|
|
|
+ name: 'IES中国',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 30, 40, 20, 10, 60, 80, 100, 150, 160, 180, 150, 160, 170, 140,
|
|
|
|
+ 100, 120, 90, 50, 80, 60, 100, 20, 10, 50,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: 'IES台湾',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 10, 30, 20, 50, 40, 60, 80, 100, 110, 90, 130, 120, 150, 180, 170,
|
|
|
|
+ 190, 120, 180, 150, 120, 130, 140, 110,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: 'IES全球',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 5, 10, 6, 28, 40, 32, 50, 60, 12, 18, 20, 60, 15, 29, 32, 55, 19,
|
|
|
|
+ 26, 85, 25, 63, 23, 52, 32, 52, 32, 51, 20,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ };
|
|
|
|
+ myChart2.setOption(option);
|
|
|
|
+ };
|
|
|
|
+ const Echarts3 = () => {
|
|
|
|
+ const myChart3 = echarts.init(click.value);
|
|
|
|
+ const option = {
|
|
|
|
+ tooltip: {
|
|
|
|
+ trigger: 'axis',
|
|
|
|
+ axisPointer: {
|
|
|
|
+ type: 'cross',
|
|
|
|
+ label: {
|
|
|
|
+ backgroundColor: '#6a7985',
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ legend: {
|
|
|
|
+ data: ['IES中国', 'IES台湾', 'IES全球'],
|
|
|
|
+ },
|
|
|
|
+ grid: {
|
|
|
|
+ left: '3%',
|
|
|
|
+ right: '4%',
|
|
|
|
+ bottom: '3%',
|
|
|
|
+ containLabel: true,
|
|
|
|
+ },
|
|
|
|
+ xAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'category',
|
|
|
|
+ boundaryGap: false,
|
|
|
|
+ data: [
|
|
|
|
+ '1',
|
|
|
|
+ '2',
|
|
|
|
+ '3',
|
|
|
|
+ '4',
|
|
|
|
+ '5',
|
|
|
|
+ '6',
|
|
|
|
+ '7',
|
|
|
|
+ '8',
|
|
|
|
+ '9',
|
|
|
|
+ '10',
|
|
|
|
+ '11',
|
|
|
|
+ '12',
|
|
|
|
+ '13',
|
|
|
|
+ '14',
|
|
|
|
+ '15',
|
|
|
|
+ '16',
|
|
|
|
+ '17',
|
|
|
|
+ '18',
|
|
|
|
+ '19',
|
|
|
|
+ '20',
|
|
|
|
+ '21',
|
|
|
|
+ '22',
|
|
|
|
+ '23',
|
|
|
|
+ '24',
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ yAxis: [
|
|
|
|
+ {
|
|
|
|
+ type: 'value',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ series: [
|
|
|
|
+ {
|
|
|
|
+ //name: 'IES中国',
|
|
|
|
+ type: 'line',
|
|
|
|
+ stack: '总量',
|
|
|
|
+ areaStyle: {},
|
|
|
|
+ emphasis: {
|
|
|
|
+ focus: 'series',
|
|
|
|
+ },
|
|
|
|
+ data: [
|
|
|
|
+ 30, 40, 20, 10, 60, 80, 100, 150, 160, 180, 150, 160, 170, 140,
|
|
|
|
+ 100, 120, 90, 50, 80, 60, 100, 20, 10, 50,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ };
|
|
|
|
+ myChart3.setOption(option);
|
|
|
|
+ };
|
|
|
|
+ const Echarts4 = () => {
|
|
|
|
+ const myChart4 = echarts.init(statistics.value);
|
|
|
|
+ const option = {
|
|
|
|
+ xAxis: {
|
|
|
|
+ type: 'category',
|
|
|
|
+ data: [
|
|
|
|
+ '1',
|
|
|
|
+ '2',
|
|
|
|
+ '3',
|
|
|
|
+ '4',
|
|
|
|
+ '5',
|
|
|
|
+ '6',
|
|
|
|
+ '7',
|
|
|
|
+ '8',
|
|
|
|
+ '9',
|
|
|
|
+ '10',
|
|
|
|
+ '11',
|
|
|
|
+ '12',
|
|
|
|
+ '13',
|
|
|
|
+ '14',
|
|
|
|
+ '15',
|
|
|
|
+ '16',
|
|
|
|
+ '17',
|
|
|
|
+ '18',
|
|
|
|
+ '19',
|
|
|
|
+ '20',
|
|
|
|
+ '21',
|
|
|
|
+ '22',
|
|
|
|
+ '23',
|
|
|
|
+ '24',
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ yAxis: {
|
|
|
|
+ type: 'value',
|
|
|
|
+ },
|
|
|
|
+ series: [
|
|
|
|
+ {
|
|
|
|
+ data: [
|
|
|
|
+ 30, 40, 20, 10, 60, 80, 100, 150, 160, 180, 150, 160, 170, 140,
|
|
|
|
+ 100, 120, 90, 50, 80, 60, 100, 20, 10, 50,
|
|
|
|
+ ],
|
|
|
|
+ type: 'bar',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ };
|
|
|
|
+ myChart4.setOption(option);
|
|
|
|
+ };
|
|
|
|
+ return {
|
|
|
|
+ utilization_rate,
|
|
|
|
+ click_rate,
|
|
|
|
+ click,
|
|
|
|
+ statistics,
|
|
|
|
+ Echarts1,
|
|
|
|
+ Echarts2,
|
|
|
|
+ Echarts3,
|
|
|
|
+ Echarts4,
|
|
|
|
+ };
|
|
|
|
+ },
|
|
|
|
+});
|
|
|
|
+</script>
|
|
|
|
+
|
|
|
|
+<style lang="scss" scoped>
|
|
|
|
+.main {
|
|
|
|
+ position: relative;
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 100%;
|
|
|
|
+ background: url('../../assets/images/screen/tmdID/bg.jpg') no-repeat;
|
|
|
|
+ background-size: cover;
|
|
|
|
+ /* height: 880px; */
|
|
|
|
+ min-width: 1386px;
|
|
|
|
+}
|
|
|
|
+.header {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 90px;
|
|
|
|
+ text-align: center;
|
|
|
|
+ font-size: 36px;
|
|
|
|
+ color: #00f6ff;
|
|
|
|
+ line-height: 90px;
|
|
|
|
+ margin: 0 auto;
|
|
|
|
+}
|
|
|
|
+.title {
|
|
|
|
+ color: rgb(253, 253, 253);
|
|
|
|
+ font-size: 19px;
|
|
|
|
+ padding-top: 15px;
|
|
|
|
+ padding-left: 20px;
|
|
|
|
+}
|
|
|
|
+.top1 {
|
|
|
|
+ margin-bottom: 50px;
|
|
|
|
+}
|
|
|
|
+.top1 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.top2 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.top3 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 200px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.top4 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 200px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.top5 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 200px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.bottom1 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.bottom2 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.bottom3 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+.bottom4 > div {
|
|
|
|
+ width: 100%;
|
|
|
|
+ height: 120px;
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
+ //border: 1px solid #034c6a;
|
|
|
|
+ box-shadow: 0px 0 55px rgba(255, 255, 255, 0.1) inset;
|
|
|
|
+}
|
|
|
|
+</style>
|