소스 검색

添加所有职位数量展示

lifanagju_citu 5 달 전
부모
커밋
4c12842443
1개의 변경된 파일33개의 추가작업 그리고 4개의 파일을 삭제
  1. 33 4
      src/views/menduner/system/analysis/statisticAnalysis/index.vue

+ 33 - 4
src/views/menduner/system/analysis/statisticAnalysis/index.vue

@@ -117,7 +117,7 @@
           </el-button>
         </div>
         <el-row :gutter="16" class="row m-t-10px">
-          <el-col v-for="item in statisticList" :key="item.name" :md="4" :sm="12" :xs="24" :loading="loading">
+          <el-col v-for="item in statisticList" :key="item.name" :md="3" :sm="12" :xs="24" :loading="loading">
             <ComparisonCard
               :title="item.title"
               :value="statistic[item.name]"
@@ -245,6 +245,7 @@ const apiArr = reactive({
   pageViewsTotal: statisticAnalysisApi.getAnalysisJobBrowseNum, // 职位浏览量-总数据
   pageViews: statisticAnalysisApi.getAnalysisJobBrowseNumPage, // 职位浏览量-钻取
   resumeReceived: statisticAnalysisApi.getAnalysisJobCvNewPage, // 钻取
+  pushTotalNum: statisticAnalysisApi.getAnalysisJobNumPage, // 钻取
   pushNum: statisticAnalysisApi.getAnalysisJobNumPage, // 钻取
   resumeViewed: statisticAnalysisApi.getAnalysisJobCvLookPage, // 钻取
   invitedInterviews: statisticAnalysisApi.getAnalysisInterviewWaitPage, // 钻取
@@ -258,7 +259,8 @@ const apiArr = reactive({
 
 // 统计
 const statisticList = [
-  { title: '发布职位数量', name: 'pushNum' },
+  { title: '所有职位数量', name: 'pushTotalNum' },
+  { title: '发布中职位数量', name: 'pushNum' },
   { title: '职位浏览量', name: 'pageViews' },
   { title: '收到的简历', name: 'resumeReceived' },
   { title: '已查看简历', name: 'resumeViewed' },
@@ -268,6 +270,7 @@ const statisticList = [
 // 统计
 const statistic = reactive({
   pageViews: 0,
+  pushTotalNum: 0,
   pushNum: 0,
   resumeReceived: 0,
   resumeViewed: 0,
@@ -379,7 +382,18 @@ const tableHeaders = {
     { name: '工作经验', prop: 'expName' },
     { name: '学历要求', prop: 'eduName' },
   ],
-  // 发布职位数量
+  // 所有职位数量
+  pushTotalNum: [
+    { name: '职位名称', prop: 'name' },
+    { name: '发布企业', prop: 'enterpriseName' },
+    { name: '职位类型', prop: 'positionName' },
+    { name: '薪酬', prop: 'salaryDisplay' },
+    { name: '工作地区', prop: 'areaName' },
+    { name: '工作经验', prop: 'expName' },
+    { name: '学历要求', prop: 'eduName' },
+    { name: '众聘', prop: 'hire' },
+  ],
+  // 发布中职位数量
   pushNum: [
     { name: '职位名称', prop: 'name' },
     { name: '发布企业', prop: 'enterpriseName' },
@@ -442,7 +456,22 @@ const dealTableData = async () => {
       return item
     })
   }
-  // 发布职位数量
+  // 所有职位数量
+  if (currentItem.value.name === 'pushTotalNum') {
+    const areaList = await getDictOptions('areaList')
+    const positionData = await getDictOptions('positionData')
+    tableData.value = tableData.value.map(item => {
+      item.areaName = !item.areaId ? '全国' : getText(item.areaId, areaList)
+      item.positionName = getText(item.positionId, positionData, 'nameCn', 'id')
+      item.salaryDisplay = item.payFrom && item.payTo ? `${item.payFrom}-${item.payTo}/${getDictLabel(DICT_TYPE.MENDUNER_PAY_UNIT, item.payUnit)}` : '面议'
+      item.jobStatus = getDictLabel(DICT_TYPE.MENDUNER_JOB_SEEK_STATUS, item.jobStatus)
+      item.expName = getDictLabel(DICT_TYPE.MENDUNER_EXP_TYPE, item.expType)
+      item.eduName = getDictLabel(DICT_TYPE.MENDUNER_EDUCATION_TYPE, item.eduType)
+      item.hire = item.hire ? '是' : '否'
+      return item
+    })
+  }
+  // 发布中职位数量
   if (currentItem.value.name === 'pushNum') {
     const areaList = await getDictOptions('areaList')
     const positionData = await getDictOptions('positionData')