|
@@ -54,17 +54,25 @@ const title = ref('')
|
|
|
const data = ref([])
|
|
|
// 数据概况
|
|
|
const overview = ref([
|
|
|
- { title: '发布职位数量', value: 0, desc: '已发布职位数量', items: [], api: getJobNumPage, deal: true, query: { jobStatus: 0 } },
|
|
|
- { title: '职位浏览量', value: 0, desc: '指全部职位被求职者查看的人数总和', items: [], api: getJobBrowseNum, deal: true, custom: true }, // getJobBrowseNumPage
|
|
|
- { title: '收到的简历', value: 0, desc: '指全部职位收到简历的总数', items: [], api: getJobCvNewPage, isDeal: true },
|
|
|
- { title: '已查看简历', value: 0, desc: '指查看候选人主动发送的简历数量', items: [], api: getJobCvLookPage },
|
|
|
- { title: '已邀面试', value: 0, desc: '已邀约的面试人数', items: [], api: getInterviewWaitPage },
|
|
|
- { title: '面试完成', value: 0, desc: '已完成面试的人数', items: [], api: getInterviewCompletePage }
|
|
|
+ { title: '发布职位数量', key: 0, value: 0, desc: '已发布职位数量', items: [], api: getJobNumPage, deal: true, query: { jobStatus: 0 } },
|
|
|
+ { title: '职位浏览量', key: 1, value: 0, desc: '指全部职位被求职者查看的人数总和', items: [], api: getJobBrowseNum, deal: true, custom: true }, // getJobBrowseNumPage
|
|
|
+ { title: '收到的简历', key: 2, value: 0, desc: '指全部职位收到简历的总数', items: [], api: getJobCvNewPage, isDeal: true },
|
|
|
+ { title: '已查看简历', key: 3, key: 0, value: 0, desc: '指查看候选人主动发送的简历数量', items: [], api: getJobCvLookPage },
|
|
|
+ { title: '已邀面试', value: 4, desc: '已邀约的面试人数', items: [], api: getInterviewWaitPage },
|
|
|
+ { title: '面试完成', key: 5, value: 0, desc: '已完成面试的人数', items: [], api: getInterviewCompletePage }
|
|
|
])
|
|
|
|
|
|
const getBrowseDetails = async () => {
|
|
|
const { list, total: number } = await getJobBrowseNumPage({ ...props.query, ...queryParams })
|
|
|
- data.value = dealDictArrayData([], list)
|
|
|
+ data.value = dealDictArrayData([], list).map(e => {
|
|
|
+ if (overview.value[current.value].key < 2) {
|
|
|
+ e.areaName = e.area?.str ?? '全国'
|
|
|
+ }
|
|
|
+ if (overview.value[current.value].key === 2) {
|
|
|
+ e.areaName = e.job.area?.str ?? '全国'
|
|
|
+ }
|
|
|
+ return e
|
|
|
+ })
|
|
|
total.value = number
|
|
|
}
|
|
|
|
|
@@ -82,11 +90,23 @@ const handleGetDetail = async () => {
|
|
|
if (obj.deal && obj.custom) return getBrowseDetails()
|
|
|
|
|
|
const res = await obj.api({ ...props.query, ...queryParams, ...obj?.query })
|
|
|
+
|
|
|
total.value = res.total
|
|
|
- data.value = obj.deal ? dealDictArrayData([], res.list) : obj.isDeal ? res.list.map(e => {
|
|
|
- e.job = dealDictObjData({}, e.job)
|
|
|
- return e
|
|
|
- }) : res.list
|
|
|
+ data.value = obj.deal ?
|
|
|
+ dealDictArrayData([], res.list).map(e => {
|
|
|
+ e.areaName = e.area?.str ?? '全国'
|
|
|
+ return e
|
|
|
+ }) :
|
|
|
+ obj.isDeal ?
|
|
|
+ res.list.map(e => {
|
|
|
+ e.job = dealDictObjData({}, e.job)
|
|
|
+ e.job.areaName = e.job.area?.str ?? '全国'
|
|
|
+ return e
|
|
|
+ }) :
|
|
|
+ res.list.map(e => {
|
|
|
+ e.areaName = e.area?.str ?? '全国'
|
|
|
+ return e
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
const handleClose = () => {
|