|
@@ -17,14 +17,12 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div id="myChart" style="width: 100%; height: 500px;background-color: #f7f8fa;border-radius: 8px;" class="pa-3"></div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
defineOptions({ name: 'overview-page'})
|
|
|
-import { ref, onMounted, watch } from 'vue'
|
|
|
-import * as echarts from 'echarts'
|
|
|
+import { ref, watch } from 'vue'
|
|
|
import { getRecentConversations } from '@/api/recruit/enterprise/statistics'
|
|
|
|
|
|
const props = defineProps({
|
|
@@ -35,18 +33,16 @@ const overviewData = ref({
|
|
|
position: 0,
|
|
|
resume: 0,
|
|
|
viewResume: 0,
|
|
|
- dealResume: 0,
|
|
|
- interview: 0
|
|
|
+ interview: 0,
|
|
|
+ interviewFinish: 0
|
|
|
})
|
|
|
// 数据概况
|
|
|
const overview = ref([
|
|
|
{ title: '职位浏览量', key: 'position', ratio: 0, desc: '指全部职位被候选人查看的人数总和' },
|
|
|
{ title: '收到简历量', key: 'resume', ratio: 0, desc: '指全部职位收到简历的总数' },
|
|
|
{ title: '查看收到简历', key: 'viewResume', ratio: 0, desc: '指查看候选人主动发送的简历数量' },
|
|
|
- { title: '已处理简历', key: 'dealResume', ratio: 0, desc: '指招聘方标记"通过筛选"与"不合适"的简历数' },
|
|
|
- { title: '主动联系我的人', key: 'activeContactCount', ratio: 'qqactiveContactCount', desc: '指候选人主动发起沟通的人数' },
|
|
|
- { title: '我主动联系的人', key: 'usContactCount', ratio: 'qqUsContactCount', desc: '指候选人主动发起沟通的人数' },
|
|
|
- { title: '面试数量', key: 'interview', ratio: 0, desc: '面试人数的总数' }
|
|
|
+ { title: '面试-已邀约', key: 'interview', ratio: 0, desc: '已邀约的面试人数' },
|
|
|
+ { title: '面试-已完成', key: 'interviewFinish', ratio: 0, desc: '已完成面试的人数' },
|
|
|
])
|
|
|
|
|
|
// 主动联系我的、我主动联系的人
|
|
@@ -58,100 +54,6 @@ const getRecent = async () => {
|
|
|
}
|
|
|
getRecent()
|
|
|
|
|
|
-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)
|
|
|
-})
|
|
|
-
|
|
|
watch(
|
|
|
() => props.query,
|
|
|
(val) => {
|
|
@@ -168,10 +70,10 @@ watch(
|
|
|
flex-wrap: wrap; // 换行
|
|
|
}
|
|
|
.overview-item {
|
|
|
- // width: calc((100% - 84px) / 8);
|
|
|
- // min-width: calc((100% - 84px) / 8);
|
|
|
- // max-width: calc((100% - 84px) / 8);
|
|
|
- min-width: 200px;
|
|
|
+ width: calc((100% - 48px) / 5);
|
|
|
+ min-width: calc((100% - 48px) / 5);
|
|
|
+ max-width: calc((100% - 48px) / 5);
|
|
|
+ // min-width: 200px;
|
|
|
margin: 0 12px 12px 0;
|
|
|
height: 175px;
|
|
|
border-radius: 12px;
|