|
@@ -0,0 +1,152 @@
|
|
|
+<template>
|
|
|
+ <div class="overview my-5">
|
|
|
+ <div class="overview-item pa-5 color-666" v-for="(val, i) in overview" :key="i">
|
|
|
+ <div>{{ val.title }}</div>
|
|
|
+ <div class="overview-item-value my-3">{{ val.value }}</div>
|
|
|
+ <div class="font-size-14">
|
|
|
+ 环比
|
|
|
+ <span class="color-error">0% ↑</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div id="myChart" style="width: 100%; height: 500px;background-color: #f7f8fa;border-radius: 8px;" class="pa-3"></div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+defineOptions({ name: 'overview-page'})
|
|
|
+import { ref, onMounted } from 'vue'
|
|
|
+import * as echarts from 'echarts'
|
|
|
+
|
|
|
+// 数据概况
|
|
|
+const overview = ref([
|
|
|
+ { title: '我看过', value: 86, desc: '' },
|
|
|
+ { title: '看过我', value: 12, desc: '' },
|
|
|
+ { title: '我打招呼', value: 0, desc: '' },
|
|
|
+ { title: '牛人新招呼', value: 4, desc: '' },
|
|
|
+ { title: '我沟通', value: 0, desc: '' },
|
|
|
+ { title: '收获简历', value: 5, desc: '' },
|
|
|
+ { title: '交换电话微信', value: 2, desc: '' },
|
|
|
+ { title: '接受面试', value: 0, desc: '' }
|
|
|
+])
|
|
|
+
|
|
|
+onMounted(() => {
|
|
|
+ var chartDom = document.getElementById('myChart')
|
|
|
+ var myChart = echarts.init(chartDom)
|
|
|
+ var option
|
|
|
+
|
|
|
+ option = {
|
|
|
+ title: {
|
|
|
+ text: '历史数据走势图'
|
|
|
+ },
|
|
|
+ tooltip: {
|
|
|
+ trigger: 'axis',
|
|
|
+ axisPointer: {
|
|
|
+ type: 'cross',
|
|
|
+ label: {
|
|
|
+ backgroundColor: '#6a7985'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ legend: {
|
|
|
+ data: ['职位数', '刷新次数', '职位浏览', '简历投递数', '简历处理']
|
|
|
+ },
|
|
|
+ toolbox: {
|
|
|
+ feature: {
|
|
|
+ saveAsImage: {}
|
|
|
+ }
|
|
|
+ },
|
|
|
+ grid: {
|
|
|
+ left: '3%',
|
|
|
+ right: '4%',
|
|
|
+ bottom: '3%',
|
|
|
+ containLabel: true
|
|
|
+ },
|
|
|
+ xAxis: [
|
|
|
+ {
|
|
|
+ type: 'category',
|
|
|
+ boundaryGap: false,
|
|
|
+ data: ['2024-07-10', '2024-07-11', '2024-07-12']
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ yAxis: [
|
|
|
+ {
|
|
|
+ type: 'value'
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ series: [
|
|
|
+ {
|
|
|
+ name: '职位数',
|
|
|
+ type: 'line',
|
|
|
+ emphasis: {
|
|
|
+ focus: 'series'
|
|
|
+ },
|
|
|
+ data: [120, 132, 101, 134, 90, 230, 210]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '刷新次数',
|
|
|
+ type: 'line',
|
|
|
+ emphasis: {
|
|
|
+ focus: 'series'
|
|
|
+ },
|
|
|
+ data: [220, 182, 191, 234, 290, 330, 310]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '职位浏览',
|
|
|
+ type: 'line',
|
|
|
+ emphasis: {
|
|
|
+ focus: 'series'
|
|
|
+ },
|
|
|
+ data: [150, 232, 201, 154, 190, 330, 410]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '简历投递数',
|
|
|
+ type: 'line',
|
|
|
+ emphasis: {
|
|
|
+ focus: 'series'
|
|
|
+ },
|
|
|
+ data: [320, 332, 301, 334, 390, 330, 320]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '简历处理',
|
|
|
+ type: 'line',
|
|
|
+ label: {
|
|
|
+ show: true,
|
|
|
+ position: 'top'
|
|
|
+ },
|
|
|
+ emphasis: {
|
|
|
+ focus: 'series'
|
|
|
+ },
|
|
|
+ data: [820, 932, 901, 934, 1290, 1330, 1320]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ option && myChart.setOption(option)
|
|
|
+})
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped lang="scss">
|
|
|
+.overview {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+.overview-item {
|
|
|
+ width: calc((100% - 84px) / 8);
|
|
|
+ min-width: calc((100% - 84px) / 8);
|
|
|
+ max-width: calc((100% - 84px) / 8);
|
|
|
+ margin: 0 12px 12px 0;
|
|
|
+ height: 175px;
|
|
|
+ border-radius: 12px;
|
|
|
+ overflow: hidden;
|
|
|
+ transition: all .2s linear;
|
|
|
+ background-color: #f7f8fa;
|
|
|
+ &:nth-child(8n) {
|
|
|
+ margin-right: 0;
|
|
|
+ }
|
|
|
+}
|
|
|
+.overview-item-value {
|
|
|
+ color: var(--v-primary-base);
|
|
|
+ font-weight: 700;
|
|
|
+ font-size: 44px;
|
|
|
+}
|
|
|
+</style>
|