Ver Fonte

字段调整

Xiao_123 há 8 meses atrás
pai
commit
d647bbfe21
38 ficheiros alterados com 179 adições e 77 exclusões
  1. 1 1
      src/components/Enterprise/components/introduction.vue
  2. 3 3
      src/components/Enterprise/components/positions.vue
  3. 4 2
      src/components/Enterprise/details.vue
  4. 2 2
      src/components/Enterprise/hotPromoted.vue
  5. 2 2
      src/components/Position/item.vue
  6. 2 2
      src/components/Position/longCompany.vue
  7. 4 4
      src/components/Position/longStrip.vue
  8. 1 1
      src/components/Position/similarPositions.vue
  9. 1 1
      src/components/PositionLongStrip/item.vue
  10. 16 21
      src/config/axios/service.js
  11. 7 0
      src/router/modules/components/headhunting.js
  12. 68 0
      src/utils/headhuntingData.js
  13. 3 3
      src/utils/statisticsHeaders.js
  14. 26 8
      src/views/headhunting/components/content.vue
  15. 11 0
      src/views/headhunting/details.vue
  16. 1 1
      src/views/publicRecruitment/components/table.vue
  17. 3 3
      src/views/recruit/components/message/components/chatting.vue
  18. 1 1
      src/views/recruit/components/message/index.vue
  19. 1 1
      src/views/recruit/enterprise/enterpriseCenter/components/positions.vue
  20. 1 1
      src/views/recruit/enterprise/hirePosition/components/item.vue
  21. 1 1
      src/views/recruit/enterprise/interviewManagement/index.vue
  22. 1 1
      src/views/recruit/enterprise/personnelManagement/components/invite.vue
  23. 1 1
      src/views/recruit/enterprise/personnelManagement/components/screen.vue
  24. 1 1
      src/views/recruit/enterprise/personnelManagement/components/table.vue
  25. 1 1
      src/views/recruit/enterprise/positionManagement/components/item.vue
  26. 1 1
      src/views/recruit/enterprise/resumeManagement/elite/components/invite.vue
  27. 1 1
      src/views/recruit/enterprise/resumeManagement/elite/components/public.vue
  28. 1 1
      src/views/recruit/enterprise/resumeManagement/elite/components/screen.vue
  29. 1 1
      src/views/recruit/enterprise/resumeManagement/elite/components/table.vue
  30. 1 1
      src/views/recruit/enterprise/resumeManagement/talentPool/components/details/jobIntention.vue
  31. 1 1
      src/views/recruit/personal/PersonalCenter/components/communication.vue
  32. 1 1
      src/views/recruit/personal/PersonalCenter/components/interview/item.vue
  33. 3 3
      src/views/recruit/personal/position/components/details.vue
  34. 1 1
      src/views/recruit/personal/position/components/poster.vue
  35. 1 1
      src/views/recruit/personal/position/components/rightRecommend.vue
  36. 1 1
      src/views/recruit/personal/remuse/components/jobIntention.vue
  37. 1 1
      src/views/recruit/personal/shareJob/index.vue
  38. 2 1
      src/views/register/select.vue

+ 1 - 1
src/components/Enterprise/components/introduction.vue

@@ -6,7 +6,7 @@
     <v-divider class="my-3"></v-divider>
     <div>
       <h4>公司地址</h4>
-      <div v-if="props.info.business.address" class="mt-1">
+      <div v-if="props.info?.business?.address" class="mt-1">
         <v-icon size="25" color="primary">mdi-map-marker</v-icon>
         <span style="color: var(--color-666);font-size: 15px;">{{ props.info.business.address }}</span>
       </div>

+ 3 - 3
src/components/Enterprise/components/positions.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="top">
-    <div class="d-flex">
+    <div class="d-flex" v-if="positionCategory.length">
       <div class="font-weight-bold position-category-left">职位类别:</div>
       <div class="position-category-right">
         <span 
@@ -54,12 +54,12 @@
           </div>
         </div>
         <div v-if="!val.active" class="text-right">
-          <p class="salary">{{ val.job.payFrom }}-{{ val.job.payTo }}/{{ val.job.payName }}</p>
+          <p class="salary">{{ val.job.payFrom ? val.job.payFrom + '-' : '' }}{{ val.job.payTo }}{{ val.job.payName ? '/' + val.job.payName : '' }}</p>
           <div class="update-time">{{ timesTampChange(val.job.updateTime) }} 刷新</div>
         </div>
         <div v-else class="account-info">
           <v-avatar :image="getUserAvatar(val.contact.avatar, val.contact.sex)"></v-avatar>
-          <span class="account-label">{{ val.contact.name }} · {{ val.contact.postNameCn }}</span>
+          <span class="account-label">{{ val.contact.name }}{{ val.contact.postNameCn ? ' · ' + val.contact.postNameCn : '' }}</span>
           <span>
             <v-btn class="half-button" color="primary" size="small" @click="toDetails(val)">立即沟通</v-btn>
           </span>

+ 4 - 2
src/components/Enterprise/details.vue

@@ -54,7 +54,7 @@
                 <v-chip size="small" label v-for="(k, i) in info?.enterprise?.welfareList?.slice(0, 6)" :key="i" class="mb-2 welfare-tags-item ellipsis" color="primary">{{ k }}</v-chip>
               </div>
             </div>
-            <div class="welfare">
+            <div class="welfare" v-if="info?.business">
               <h4>工商信息</h4>
               <div :class="['mt-2', 'business-item']" v-for="val in businessList" :key="val.value">
                 <div>{{ val.label }}</div>
@@ -123,7 +123,9 @@ const getDetails = async () => {
   if (!props.id) return
   const data = await getEnterpriseDetails({ id: props.id })
   // 成立日期
-  data.business.establishmentTime = timesTampChange(data.business.establishmentTime, 'Y-M-D')
+  if (data?.business?.establishmentTime) {
+    data.business.establishmentTime = timesTampChange(data.business.establishmentTime, 'Y-M-D')
+  }
 
   info.value = { ...data, ...dealDictObjData({}, data.enterprise) }
   getCollectionStatus(props.id)

+ 2 - 2
src/components/Enterprise/hotPromoted.vue

@@ -27,12 +27,12 @@
             <div class="job-info" @mouseenter="k.active = true" @mouseleave="k.active = false" @click="handleClickPosition(k)">
               <div class="mb-2 d-flex">
                 <p :class="['name', 'cursor-pointer', {'default-active': k.active }]">{{ k.name }}</p>
-                <span class="salary">{{ k.payFrom }}-{{ k.payTo }}/{{ k.payName }}</span>
+                <span class="salary">{{ k.payFrom ? k.payFrom + '-' : '' }}{{ k.payTo }}{{ k.payName ? '/' + k.payName : '' }}</span>
               </div>
               <div style="height: 24px; overflow: hidden; color: #808080;">
                 <span v-for="(j, index) in desc" :key="index">
                   <span v-if="k[j.value]" class="mr-1 font-size-13">{{ k[j.value] }}</span>
-                  <span v-if="k[j.value] && index !== desc.length - 1" class="septal-line ml-1"></span>
+                  <span v-if="k[j.value] && index !== desc.length - 1 && k[desc[index + 1].value]" class="septal-line ml-1"></span>
                 </span>
                 <span class="font-size-13 float-right">{{ timesTampChange(k.updateTime, 'Y-M-D') }}</span>
               </div>

+ 2 - 2
src/components/Position/item.vue

@@ -8,13 +8,13 @@
               <p :class="['name', {'default-active': item.active }]">{{ item.name }}</p>
               <svg-icon v-if="tab === 3 && item.hire" name="pin" size="30"></svg-icon>
             </div>
-            <p class="salary">{{ item.payFrom }}-{{ item.payTo }}/{{ item.payName }}</p>
+            <p class="salary">{{ item.payFrom ? item.payFrom + '-' : '' }}{{ item.payTo }}{{ item.payName ? '/' + item.payName : '' }}</p>
           </div>
           <div class="d-flex justify-space-between align-center">
             <div>
               <span v-for="(j, i) in desc" :key="i" class="font-size-13" style="color: #808080;">
                 <span v-if="item[j.value]" class="mr-1 d-inline-block">{{ item[j.value] }}</span>
-                <span v-if="i !== desc.length - 1 && item[j.value]" class="septal-line ml-1"></span>
+                <span v-if="i !== desc.length - 1 && item[j.value] && item[desc[i + 1].value]" class="septal-line ml-1"></span>
               </span>
             </div>
           </div>

+ 2 - 2
src/components/Position/longCompany.vue

@@ -7,7 +7,7 @@
             <v-img :src="item.logoUrl || 'https://minio.citupro.com/dev/menduner/company-avatar.png'" :alt="item.anotherName" :width="40" style="height: 40px;border-radius: 4px;"/>
           </div>
           <h3 :class="{'default-active': item.active }" class="cursor-pointer" @click="handleClickEnterprise(item, 'briefIntroduction')">{{ item.anotherName }}</h3>
-          <p>{{ item.financingName }}<span class="mx-2">|</span>{{ item.industryName }}<span class="mx-2">|</span>{{ item.scaleName }}</p>
+          <p>{{ item.financingName }}<span v-if="item.financingName && item.industryName" class="mx-2">|</span>{{ item.industryName }}<span v-if="item.scaleName" class="mx-2">|</span>{{ item.scaleName }}</p>
         </div>
         <div v-if="item.active">
           <v-btn class="half-button ml-3" color="primary" size="small" @click.stop="handleCancel(item)">取消收藏</v-btn>
@@ -17,7 +17,7 @@
         <div class="chipBox">
           <div class="d-inline-block" v-for="(val, i) in item.welfareList" :key="i">
             <span>{{ val }}</span>
-            <span class="mx-1" v-if="i !== item.welfareList.length - 1">|</span>
+            <span class="mx-1" v-if="i !== item.welfareList.length - 1 && val && item.welfareList[i + 1]">|</span>
           </div>
         </div>
         <div class="position" @click="handleClickEnterprise(item, 'recruitmentPositions')">

+ 4 - 4
src/components/Position/longStrip.vue

@@ -20,9 +20,9 @@
             <span v-if="val?.job?.areaName">[{{ val.job.areaName }}]</span>
           </div>
           <div class="job-other">
-            <span class="salary">{{ val.job.payFrom }}-{{ val.job.payTo }}/{{ val.job.payName }}</span>
-            <v-chip class="mx-3" color="primary" label size="small">{{ val.job.expName }}</v-chip>
-            <v-chip color="primary" label size="small">{{ val.job.eduName }}</v-chip>
+            <span class="salary">{{ val.job.payFrom ? val.job.payFrom + '-' : ''}}{{ val.job.payTo }}{{ val.job.payName ? '/' + val.job.payName : '' }}</span>
+            <v-chip v-if="val.job?.expName" class="mx-3" color="primary" label size="small">{{ val.job.expName }}</v-chip>
+            <v-chip v-if="val.job?.eduName" color="primary" label size="small">{{ val.job.eduName }}</v-chip>
           </div>
         </div>
         <div class="company-info ml-3" style="flex: 1;">
@@ -34,7 +34,7 @@
             <div class="mt-3 ellipsis color-666 font-size-13" style="max-width: 260px;">
               <span v-for="(k, i) in desc" :key="k">
                 {{ val.enterprise[k] }}
-                <span v-if="i !== desc.length - 1 && val.enterprise[k]" class="septal-line"></span>
+                <span v-if="i !== desc.length - 1 && val.enterprise[k] && val.enterprise[desc[i + 1]]" class="septal-line"></span>
               </span>
             </div>
           </div>

+ 1 - 1
src/components/Position/similarPositions.vue

@@ -3,7 +3,7 @@
     <h4 class="mb-3">{{ $t('position.similarPosition') }}</h4>
     <div v-for="(item, index) in props.list" :key="index" class="mb-2 cursor-pointer" @click="handlePosition(item)">
       <p class="recruit-name">{{ item.name }}</p>
-      <span class="recruit-salary">{{ item.payFrom }}-{{ item.payTo }}/{{ item.payName }}</span>
+      <span class="recruit-salary">{{ item.payFrom ? item.payFrom + '-' : '' }}{{ item.payTo }}{{ item.payName ? '/' + item.payName :'' }}</span>
       <div :class="['enterprise', {'border-bottom-dashed': index !== list.length - 1}]">
         <v-img class="float-left" :src="item.logoUrl || 'https://minio.citupro.com/dev/menduner/company-avatar.png'" :width="30" :height="30"></v-img>
         <span class="float-left enterprise-name">{{ item.anotherName }}</span>

+ 1 - 1
src/components/PositionLongStrip/item.vue

@@ -13,7 +13,7 @@
             <div class="d-flex">
               <p v-if="item.job.name.indexOf('style')" v-html="item.job.name" :class="['title1', {'default-active': item.positionActive }]"></p>
               <p v-else :class="['title1', {'default-active': item.positionActive }]">{{ item.job.name }}{{ item.job.pos ? ' [' + item.job.pos + '] ' : '' }}</p>
-              <p class="salary ml-1">{{ item.job.payFrom }}-{{ item.job.payTo }}/{{ item.job.payName }}</p>
+              <p class="salary ml-1">{{ item.job.payFrom ? item.job.payFrom + '-' : '' }}{{ item.job.payTo }}{{ item.job.payName ? '/' + item.job.payName : '' }}</p>
               <div v-if="item?.job?.hire">
                 <v-chip v-if="item?.job?.hirePrice && item?.job?.hirePrice > 0" class="ml-3" label color="primary" size="small">赏金:{{ commissionCalculation(item.job.hirePrice, 1) }}元</v-chip>
                 <v-chip v-if="item?.job?.hirePoint && item?.job?.hirePoint > 0" class="ml-3" label color="primary" size="small">积分:{{ commissionCalculation(item.job.hirePoint, 1) }}点</v-chip>

+ 16 - 21
src/config/axios/service.js

@@ -90,12 +90,15 @@ service.interceptors.request.use(
         config.url = config.url + '?' + paramsStr
       }
     }
-    // 截取request url
-    const url = getSuffixAfterPrefix(config.url)
-    if (!url || !clickTrigger.length) return config
-    const _obj = clickTrigger.find(e => e.url === url)
-    if (_obj) {
-      getIntegral(_obj.url, userStore)
+    
+    if (isToken) {
+      // 截取request url
+      const url = getSuffixAfterPrefix(config.url)
+      if (!url || !clickTrigger.length) return config
+      const _obj = clickTrigger.find(e => e.url === url)
+      if (_obj) {
+        getIntegral(_obj.url, userStore)
+      }
     }
     return config
   },
@@ -201,21 +204,13 @@ service.interceptors.response.use(
     }
     
     // 请求成功后触发获取积分
-    // if (!requestCompletionTrigger.length) {
-    //   return data
-    // }
-    // const _list = requestCompletionTrigger.filter(_e => {
-    //   return response.config.url.includes(_e.url)
-    // })
-    // if (_list.length) {
-    //   getIntegral(_list.pop().url, userStore)
-    // }
-
-    const url = getSuffixAfterPrefix(response.config.url)
-    if (!url || !requestCompletionTrigger.length) return data
-    const _obj = requestCompletionTrigger.find(e => e.url === url)
-    if (_obj) {
-      getIntegral(_obj.url, userStore)
+    if (response.config.headers?.Authorization) {
+      const url = getSuffixAfterPrefix(response.config.url)
+      if (!url || !requestCompletionTrigger.length) return data
+      const _obj = requestCompletionTrigger.find(e => e.url === url)
+      if (_obj) {
+        getIntegral(_obj.url, userStore)
+      }
     }
     return data
   },

+ 7 - 0
src/router/modules/components/headhunting.js

@@ -12,6 +12,13 @@ const headhunting = [
     meta: {
       title: '我们的服务'
     }
+  },
+  {
+    path: '/headhunting/service/details',
+    component: () => import('@/views/headhunting/details.vue'),
+    meta: {
+      title: '门墩儿猎寻服务'
+    }
   }
 ]
 

+ 68 - 0
src/utils/headhuntingData.js

@@ -0,0 +1,68 @@
+// 五大服务模块钻取
+export const serviceData = [
+  {
+    title: '高级管理精英甄选',
+    startDesc: '我们深知企业在转型升级过程中,高级管理人才的重要性。因此,门墩儿猎头凭借丰富的行业经验、专业的人才筛选能力和严谨的服务态度,为企业量身定制高级管理人才解决方案。我们的高级管理精英甄选业务涵盖各行各业,包括但不限于金融、互联网、房地产、制造业等领域。我们通过深入了解企业发展战略、企业文化及岗位需求,运用先进的猎头技术和丰富的人才资源库,为企业精准挖掘、评估和推荐具备以下特质的高级管理人才:',
+    endDesc: '门墩儿猎头始终秉承“客户至上、诚信为本”的服务宗旨,以专业、高效、贴心的服务,为企业输送了一批又一批高级管理精英,助力企业实现战略目标。我们相信,在门墩儿猎头的助力下,企业将不断迈向新的征程。',
+    children: [
+      '1. 高度的职业素养:具备良好的职业道德,对企业忠诚,能够带领团队实现企业目标。',
+      '2. 卓越的领导能力:具备较强的团队建设和管理能力,能够激发团队成员潜能,推动企业持续发展。',
+      '3. 丰富的实战经验:具备丰富的行业经验和成功案例,能够为企业带来实质性的变革和创新。',
+      '4. 强大的抗压能力:在面对复杂多变的市场环境时,能够保持冷静,为企业稳定发展保驾护航。'
+    ]
+  },
+  {
+    title: '人才发展储备策略',
+    startDesc: '我们深知企业在转型升级过程中,高级管理人才的重要性。因此,门墩儿猎头凭借丰富的行业经验、专业的人才筛选能力和严谨的服务态度,为企业量身定制高级管理人才解决方案。我们的高级管理精英甄选业务涵盖各行各业,包括但不限于金融、互联网、房地产、制造业等领域。我们通过深入了解企业发展战略、企业文化及岗位需求,运用先进的猎头技术和丰富的人才资源库,为企业精准挖掘、评估和推荐具备以下特质的高级管理人才:',
+    startTitle: '门墩儿猎头的人才发展储备策略主要包括以下几个方面:',
+    endDesc: '通过门墩儿猎头的人才发展储备策略,企业不仅能够有效应对人才流失的风险,还能在激烈的市场竞争中保持核心竞争力,实现可持续发展。我们致力于成为企业信赖的人才战略合作伙伴,为企业的发展壮大提供源源不断的动力。',
+    children: [
+      '1. 人才需求分析:我们通过对企业战略目标、业务发展和组织结构的深入分析,精准把握企业未来的人才需求,为企业制定合理的人才储备规划。',
+      '2. 人才选拔与评估:我们运用科学的选拔方法和专业的评估体系,从海量候选人中筛选出具备潜力和成长空间的人才,为企业储备一批高素质的候选人。',
+      '3. 人才培养与激励:门墩儿猎头协助企业制定个性化的培养计划,通过内部培训、外部学习、导师辅导等多种方式,提升储备人才的综合能力。同时,我们关注人才激励机制,确保储备人才在企业中保持积极向上的状态。',
+      '4. 人才梯队建设:我们帮助企业构建多层级、多领域的人才梯队,确保企业在关键岗位出现空缺时,能够迅速找到合适的内部候选人填补。',
+      '5. 人才跟踪与优化:门墩儿猎头将持续关注储备人才的发展状况,为企业提供人才优化建议,确保人才储备策略与企业发展战略同步调整。'
+    ]
+  },
+  {
+    title: '管理者能力提升方案',
+    startDesc: '门墩儿猎头深刻认识到,优秀的管理者是推动企业持续发展的关键因素。为此,我们精心打造了一套管理者能力提升方案,旨在帮助企业提升管理团队的整体素质,增强企业的管理效能,从而在复杂多变的市场环境中保持领先地位。',
+    startTitle: '门墩儿猎头的管理者能力提升方案包括以下核心内容:',
+    endDesc: '门墩儿猎头的管理者能力提升方案,不仅帮助企业培养了一批具有国际视野和本土实战经验的管理人才,还为企业注入了强大的管理动力,助力企业在激烈的市场竞争中保持领先地位,实现长远发展。我们坚信,通过门墩儿猎头的专业服务,企业的管理团队将不断迈向新的高度。',
+    children: [
+      '1. 能力诊断:我们通过问卷调查、一对一访谈、案例分析等多种方式,全面评估企业管理者的现有能力水平,精准识别管理者在领导力、战略规划、团队建设、执行力等方面的优势和短板。',
+      '2. 定制化培训:根据能力诊断结果,门墩儿猎头为企业量身定制培训计划,涵盖领导力发展、管理技能提升、创新思维训练等多个模块,确保培训内容与企业实际需求紧密结合。',
+      '3. 实战演练:我们通过模拟实战、案例分析、角色扮演等互动式教学方法,让管理者在实践中学习管理技巧,提升解决实际问题的能力。',
+      '4. 资深导师辅导:门墩儿猎头拥有一批经验丰富的行业导师,他们将为企业管理者提供一对一的辅导,分享成功的管理经验,帮助管理者快速成长。',
+      '5. 成果转化与评估:我们关注培训成果的转化,通过定期的跟进评估,确保管理者将所学知识应用到实际工作中,实现个人能力与企业业绩的双提升。'
+    ]
+  },
+  {
+    title: '卓越成长轨迹',
+    startDesc: '门墩儿猎头的卓越成长轨迹服务,是一项旨在帮助企业规划和实现关键人才职业发展路径的全方位服务。该服务通过精心设计的人才成长路线图,助力企业培育和保留核心人才,确保企业在不断变化的市场环境中保持竞争优势和持续发展的动力。',
+    startTitle: '以下是卓越成长轨迹服务的详细描述:',
+    endDesc: '门墩儿猎头的卓越成长轨迹服务,不仅为企业打造了一支高素质、高效率的人才队伍,也为企业创造了一个持续学习、不断进步的组织文化。我们的服务帮助企业实现人才与企业共同成长,为企业的长远发展奠定了坚实的人才基础。',
+    children: [
+      '1. 个人潜力评估:门墩儿猎头运用专业的评估工具和方法,对企业的关键人才进行深入的潜力分析,识别他们的优势领域和发展需求,为每位人才定制个性化的成长轨迹。',
+      '2. 职业发展规划:我们根据企业的战略目标和人才的特点,为关键人才制定清晰的职业发展规划,包括短期和长期的职业目标、关键能力提升点以及预期的成长里程碑。',
+      '3. 成长路径设计:门墩儿猎头帮助企业设计多样化的成长路径,包括岗位轮换、项目参与、导师制度、海外派遣等,确保人才在各个阶段都能获得必要的经验和技能。',
+      '4. 能力培养实施:我们协助企业实施能力培养计划,通过内部培训、外部学习、在线课程等多种形式,全面提升人才的专业技能和管理水平。',
+      '5. 成长跟踪与反馈:门墩儿猎头提供持续的成长跟踪服务,定期评估人才的发展进度,给予及时的反馈和建议,确保成长轨迹的顺利实施。',
+      '6. 成果转化:我们强调将人才成长转化为企业成果,通过人才的能力提升推动企业业绩的增长和竞争力的提升。'
+    ]
+  },
+  {
+    title: '高管信誉与资质验证',
+    startDesc: '门墩儿猎头深知企业在招募高级管理人员时,高管信誉与资质的重要性。为此,我们推出了高管信誉与资质验证服务,这是一项专业的背景调查和资质审核服务,旨在为企业提供准确、可靠的高管候选人评估,确保企业能够招募到具备优秀职业道德和过硬专业能力的高层领导。',
+    startTitle: '以下是高管信誉与资质验证服务的详细描述:',
+    endDesc: '门墩儿猎头的高管信誉与资质验证服务,为企业招募高管提供了坚实的安全保障,帮助企业规避了因高管个人问题带来的风险,确保了企业高层管理的稳定性和企业声誉的完整性。通过我们的专业服务,企业能够更加放心地选拔和任用高层管理人才,为企业的长远发展保驾护航。',
+    children: [
+      '1. 信誉调查:门墩儿猎头通过严格的调查流程,对高管候选人的职业背景、个人声誉、法律记录等进行深入调查,包括但不限于工作经历、教育背景、信用记录、社会关系等,以确保候选人的信誉良好。',
+      '2. 资质审核:我们对候选人的专业资质进行详细审核,包括专业资格证书、行业认证、荣誉奖项等,确保候选人的专业能力符合企业的要求。',
+      '3. 工作表现评估:门墩儿猎头通过与候选人前任雇主、同事、下属的沟通,了解其在以往工作中的表现和领导风格,为企业的决策提供参考。',
+      '4. 道德风险评估:我们评估候选人是否存在潜在的商业道德风险,如利益冲突、不正当竞争等,为企业规避潜在的风险。',
+      '5. 综合报告:门墩儿猎头根据调查和审核结果,提供一份详尽的综合报告,为企业决策提供客观、全面的参考依据。',
+      '6. 法律合规性:我们的服务严格遵守相关法律法规,确保调查过程的合法性、合规性,保护候选人的隐私权益。'
+    ]
+  }
+]

+ 3 - 3
src/utils/statisticsHeaders.js

@@ -12,7 +12,7 @@ export default {
   0: [
     { title: '职位名称', key: 'name', sortable: false },
     { title: '职位类型', key: 'positionName', sortable: false },
-    { title: '薪酬', key: 'payFrom', sortable: false, value: item => `${item.payFrom}-${item.payTo}/${item.payName}` },
+    { title: '薪酬', key: 'payFrom', sortable: false, value: item => `${item.payFrom ? item.payFrom + '-' : ''}${item.payTo}${item.payName ? '/' + item.payName : ''}` },
     { title: '工作地区', key: 'areaName', sortable: false },
     { title: '工作经验', key: 'expName', sortable: false },
     { title: '学历要求', key: 'eduName', sortable: false },
@@ -21,7 +21,7 @@ export default {
   // 职位浏览量
   1: [
     { title: '招聘职位', key: 'name', sortable: false },
-    { title: '薪酬', key: 'payFrom', sortable: false, value: item => `${item.payFrom}-${item.payTo}/${item.payName}` },
+    { title: '薪酬', key: 'payFrom', sortable: false, value: item => `${item.payFrom ? item.payFrom + '-' : ''}${item.payTo}${item.payName ? '/' + item.payName : ''}` },
     { title: '工作地区', key: 'areaName', sortable: false },
     { title: '工作经验', key: 'expName', sortable: false },
     { title: '学历要求', key: 'eduName', sortable: false },
@@ -32,7 +32,7 @@ export default {
     { title: '投递人', key: 'person.name', sortable: false },
     { title: '求职状态', key: 'person.jobStatus', sortable: false, value: item => jobStatus.find(i => i.value === item.person.jobStatus)?.label },
     { title: '投递岗位', key: 'job.name', sortable: false },
-    { title: '薪酬', key: 'job.payFrom', sortable: false, value: item => `${item.job.payFrom}-${item.job.payTo}/${item.job.payName}` },
+    { title: '薪酬', key: 'job.payFrom', sortable: false, value: item => `${item.job.payFrom ? item.job.payFrom + '-' : ''}${item.job.payTo}${item.job.payName ? '/' + item.job.payName : ''}` },
     { title: '工作地区', key: 'job.areaName', sortable: false },
     { title: '工作经验', key: 'job.expName', sortable: false },
     { title: '学历要求', key: 'job.eduName', sortable: false },

+ 26 - 8
src/views/headhunting/components/content.vue

@@ -19,7 +19,12 @@
     <div class="service-link">
       <div class="service-link-box common-width">
         <ul>
-          <li v-for="(val, index) in service" :key="index" :style="{'border-left': index !== 0 ? '1px solid #56738f' : 'none'}">{{ val.title }}</li>
+          <li 
+            v-for="(val, index) in service" 
+            :key="index" 
+            :style="{'border-left': index !== 0 ? '1px solid #56738f' : 'none'}"
+          >{{ val.title }}</li>
+            <!-- @click="handleClick('service', val.title)" -->
         </ul>
       </div>
     </div>
@@ -83,10 +88,16 @@
       <div class="d-flex">
         <div class="left">
           <h2>欢迎关注,了解门墩儿的新动态。</h2>
-          <p class="mt-3" style="font-size: .9rem;">史宾沙在所有主流社交媒体都有账号。欢迎关注我们,以便了解关于发展趋势和领导力问题的最新见解。</p>
+          <p class="mt-3" style="font-size: .9rem;">门墩儿在所有主流社交媒体都有账号。欢迎关注我们,以便了解关于发展趋势和领导力问题的最新见解。</p>
           <div class="social-contact">
             <div v-for="(item, index) in social" :key="index" class="d-flex" :class="{'mb-5': index !== social.length - 1}">
-              <v-img :src="item.url" width="52" height="48"></v-img>
+              <v-img :src="item.url" width="52" height="48" class="cursor-pointer"></v-img>
+              <v-tooltip v-if="item.showTooltip" :text="item.tips" location="start" activator="parent">
+                <div class="ma-3" style="text-align: center">
+                  <v-img class="ml-2" cover aspect-ratio="1/1" src="https://minio.citupro.com/dev/static/mendunerCode.jpg" width="120" height="120"></v-img>
+                  <span class="tips-text">关注门墩儿微信公众号</span>
+                </div>
+              </v-tooltip>
               <p class="ml-5">{{ item.desc }}</p>
             </div>
           </div>
@@ -109,7 +120,7 @@ const list = [
 ]
 // 服务
 const service = [
-  { title: '高级管理精英甄选' },
+  { title: '高级管理精英甄选', id: 'selection-senior-management-elite' },
   { title: '人才发展储备策略' },
   { title: '管理者能力提升方案' },
   { title: '卓越成长轨迹' },
@@ -135,9 +146,13 @@ const articles = [
 ]
 // 联系我们
 const social = [
-  { desc: '敬请查询我们的领英账号以关注最新的研究报告和 职业机会。', url: 'https://cn.spencerstuart.com/-/media/linkedin-logo.png?h=50&amp;w=50&amp;la=zh-CN&amp;hash=80E76CEDF468709061F46EE02219B4DA' },
-  { desc: '关注史宾沙官方微信号@SpencerStuart,获悉热点资讯和行业洞见。', url: 'https://cn.spencerstuart.com/-/media/wechat.jpg?h=75&amp;w=75&amp;la=zh-CN&amp;hash=B9D5E58A097630C3C5A878D5ED49B4A6' }
+  { desc: '敬请查询我们的领英账号以关注最新的研究报告和职业机会。', url: 'https://cn.spencerstuart.com/-/media/linkedin-logo.png?h=50&amp;w=50&amp;la=zh-CN&amp;hash=80E76CEDF468709061F46EE02219B4DA' },
+  { showTooltip: true, desc: '关注门墩儿官方微信公众号,获悉热点资讯和行业洞见。', url: 'https://cn.spencerstuart.com/-/media/wechat.jpg?h=75&amp;w=75&amp;la=zh-CN&amp;hash=B9D5E58A097630C3C5A878D5ED49B4A6' }
 ]
+
+// const handleClick = (type, title) => {
+//   window.open()
+// }
 </script>
 
 <style scoped lang="scss">
@@ -218,7 +233,6 @@ const social = [
   font-style: normal;
   font-weight: 700;
   color: #fff;
-  font-size: .9rem;
   letter-spacing: 3px;
   text-transform: uppercase;
   padding: 20px 0;
@@ -233,7 +247,7 @@ const social = [
       padding: 0;
       li {
         width: 20%;
-        padding: 15px;
+        padding: 13px;
         text-align: center;
         vertical-align: middle;
         cursor: pointer;
@@ -506,4 +520,8 @@ const social = [
     flex: 1;
   }
 }
+.tip-text {
+  font-size: 14px;
+  color: var(--color-222);
+}
 </style>

+ 11 - 0
src/views/headhunting/details.vue

@@ -0,0 +1,11 @@
+<template>
+  <div>xxx</div>
+</template>
+
+<script setup>
+defineOptions({ name: 'headhuntingDetails' })
+</script>
+
+<style scoped lang="scss">
+
+</style>

+ 1 - 1
src/views/publicRecruitment/components/table.vue

@@ -33,7 +33,7 @@ const headers = [
   { title: '牛人', value: 'sendPerson.name', key: 'name', sortable: false },
   { title: '应聘公司', key: 'enterprise.anotherName', sortable: false },
   { title: '应聘职位', key: 'job', value: item => item?.job?.name, sortable: false },
-  { title: '岗位薪资', key: 'salary', value: item => `${item?.job?.payFrom}-${item?.job?.payTo}`, sortable: false },
+  { title: '岗位薪资', key: 'salary', value: item => `${item?.job?.payFrom ? item?.job?.payFrom + '-' : ''}${item?.job?.payTo}`, sortable: false },
   { title: '推荐时间', key: 'createTime', value: item => timesTampChange(item.createTime), sortable: false },
 ]
 

+ 3 - 3
src/views/recruit/components/message/components/chatting.vue

@@ -29,7 +29,7 @@
         <div class="d-flex justify-space-between">
           <div class="font-weight-bold color-primary">
             <span>{{ val.job.name }}</span>
-            <span class="ml-3">{{ val.job.payFrom }}-{{ val.job.payTo }}</span>
+            <span class="ml-3">{{ val.job.payFrom ? val.job.payFrom + '-' : '' }}{{ val.job.payTo }}</span>
           </div>
           <div :style="{'color': ['5', '98', '99'].includes(val.status) ? 'var(--v-error-base)' : 'var(--v-primary-base)'}">{{ statusList.find(e => e.value === val.status)?.label }}</div>
         </div>
@@ -70,7 +70,7 @@
             >
               <div class="pa-3">
                 <div class="text-h6"> {{ val.payload?.content?.positionInfo?.name }}</div>
-                <div class="text-subtitle-2">薪酬待遇: {{ val.payload?.content?.positionInfo?.payFrom }} - {{ val.payload?.content?.positionInfo?.payTo }}</div>
+                <div class="text-subtitle-2">薪酬待遇: {{ val.payload?.content?.positionInfo?.payFrom ? val.payload?.content?.positionInfo?.payFrom + ' - ' : '' }}{{ val.payload?.content?.positionInfo?.payTo }}</div>
                 <div>
                   <v-chip
                     color="secondary"
@@ -174,7 +174,7 @@
                       {{ val.payload?.content?.positionInfo?.data?.name }}
                     </div>
                     <div>
-                      {{ val.payload?.content?.positionInfo?.data?.payFrom }} - 
+                      {{ val.payload?.content?.positionInfo?.data?.payFrom ? val.payload?.content?.positionInfo?.data?.payFrom + ' - ' : '' }}
                       {{ val.payload?.content?.positionInfo?.data?.payTo }}
                     </div>
                   </div>

+ 1 - 1
src/views/recruit/components/message/index.vue

@@ -442,7 +442,7 @@ async function handleInvite (item) {
     const list = dealDictArrayData([], data)
     positionList.value = list.map(e => {
       return {
-        label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom}-${e.payTo}/${e.payName}`,
+        label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom ? e.payFrom + '-' : ''}${e.payTo}${e.payName ? '/' + e.payName : ''}`,
         value: e.id,
         data: e
       }

+ 1 - 1
src/views/recruit/enterprise/enterpriseCenter/components/positions.vue

@@ -54,7 +54,7 @@
           </div>
         </div>
         <div v-if="!val.active" class="text-right">
-          <p class="salary">{{ val.job.payFrom }}-{{ val.job.payTo }}/{{ val.job.payName }}</p>
+          <p class="salary">{{ val.job.payFrom ? val.job.payFrom + '-' : '' }}{{ val.job.payTo }}{{ val.job.payName ? '/' + val.job.payName : '' }}</p>
           <div class="update-time">{{ timesTampChange(val.job.updateTime) }} 刷新</div>
         </div>
         <div v-else class="account-info">

+ 1 - 1
src/views/recruit/enterprise/hirePosition/components/item.vue

@@ -15,7 +15,7 @@
             <span class="lines"></span>
             <span>{{ val.expName }}</span>
             <span class="lines"></span>
-            <span>{{ val.payFrom }}-{{ val.payTo }}/{{ val.payName }}</span>
+            <span>{{ val.payFrom ? val.payFrom + '-' : '' }}{{ val.payTo }}{{ val.payName ? '/' + val.payName : '' }}</span>
             <span class="lines"></span>
             <span>{{ val.positionName }}</span>
           </div>

+ 1 - 1
src/views/recruit/enterprise/interviewManagement/index.vue

@@ -157,7 +157,7 @@ const getPositionList = async () => {
   if (!data.length) return
   const list = dealDictArrayData([], data)
   positionItems.value = list.map(e => {
-    return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom}-${e.payTo}/${e.payName}`, value: e.id }
+    return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom ? e.payFrom + '-' : ''}${e.payTo}${e.payName ? '/' + e.payName : ''}`, value: e.id }
   })
 }
 getPositionList()

+ 1 - 1
src/views/recruit/enterprise/personnelManagement/components/invite.vue

@@ -72,7 +72,7 @@ const formItems = ref({
 
 if (Object.keys(props.itemData).length) {
   const obj = formItems.value.options.find(e => e.key === 'position')
-  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom}-${props.itemData?.job?.payTo}/${props.itemData?.job?.payName}`
+  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom ? props.itemData?.job?.payFrom + '-' : ''}${props.itemData?.job?.payTo}${props.itemData?.job?.payName ? '/' + props.itemData?.job?.payName : ''}`
   formItems.value.options.find(e => e.key === 'address').value = props.itemData.job?.address
 }
 

+ 1 - 1
src/views/recruit/enterprise/personnelManagement/components/screen.vue

@@ -87,7 +87,7 @@ list.value.forEach(k => {
       if (data.length) {
         const list = dealDictArrayData([], data)
         k.items = list.map(e => {
-          return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom}-${e.payTo}/${e.payName}`, value: e.id }
+          return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom ? e.payFrom + '-' : ''}${e.payTo}${e.payName ? '/' + e.payName : ''}`, value: e.id }
         })
       }
     })

+ 1 - 1
src/views/recruit/enterprise/personnelManagement/components/table.vue

@@ -75,7 +75,7 @@ const headers = ref([
   { title: '求职状态', key: 'person.jobStatusName', sortable: false },
   { title: '工作经验', key: 'person.expName', sortable: false },
   { title: '最高学历', key: 'person.eduName', sortable: false },
-  { title: '岗位薪资', key: 'job', value: item => `${item.job.payFrom}-${item.job.payTo}/${item.job.payName}`, sortable: false },
+  { title: '岗位薪资', key: 'job', value: item => `${item.job.payFrom ? item.job.payFrom + '-' : ''}${item.job.payTo}${item.job.payName ? '/' + item.job.payName : ''}`, sortable: false },
   { title: '状态', key: 'status', sortable: false, value: item => item.status ? props.statusList.find(i => i.value === item.status).label : '' },
   { title: '操作', value: 'actions', sortable: false }
 ])

+ 1 - 1
src/views/recruit/enterprise/positionManagement/components/item.vue

@@ -26,7 +26,7 @@
             <span class="lines"></span>
             <span>{{ val.expName }}</span>
             <span class="lines"></span>
-            <span>{{ val.payFrom }}-{{ val.payTo }}/{{ val.payName }}</span>
+            <span>{{ val.payFrom ? val.payFrom + '-' : '' }}{{ val.payTo }}{{ val.payName ? '/' + val.payName : '' }}</span>
             <span class="lines"></span>
             <span>{{ val.positionName }}</span>
           </div>

+ 1 - 1
src/views/recruit/enterprise/resumeManagement/elite/components/invite.vue

@@ -84,7 +84,7 @@ const formItems = ref({
 
 if (Object.keys(props.itemData).length) {
   const obj = formItems.value.options.find(e => e.key === 'position')
-  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom}-${props.itemData?.job?.payTo}/${props.itemData?.job?.payName}`
+  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom ? props.itemData?.job?.payFrom + '-' : ''}${props.itemData?.job?.payTo}${props.itemData?.job?.payName ? '/' + props.itemData?.job?.payName : ''}`
   formItems.value.options.find(e => e.key === 'address').value = props.itemData.job?.address
 
   const baseInfo = localStorage.getItem('entBaseInfo')

+ 1 - 1
src/views/recruit/enterprise/resumeManagement/elite/components/public.vue

@@ -83,7 +83,7 @@ const formItems = ref({
 
 if (Object.keys(props.itemData).length) {
   const obj = formItems.value.options.find(e => e.key === 'position')
-  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom}-${props.itemData?.job?.payTo}/${props.itemData?.job?.payName}`
+  obj.value = `${props.itemData?.job?.name}${props.itemData?.job?.areaName ? '_' + props.itemData?.job?.areaName : ''} ${props.itemData?.job?.payFrom ? props.itemData?.job?.payFrom + '-' : ''}${props.itemData?.job?.payTo}${props.itemData?.job?.payName ? '/' + props.itemData?.job?.payName : ''}`
   formItems.value.options.find(e => e.key === 'address').value = props.itemData.job?.address
 }
 

+ 1 - 1
src/views/recruit/enterprise/resumeManagement/elite/components/screen.vue

@@ -94,7 +94,7 @@ list.value.forEach(k => {
       if (data.length) {
         const list = dealDictArrayData([], data)
         k.items = list.map(e => {
-          return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom}-${e.payTo}/${e.payName}`, value: e.id }
+          return { label: `${e.name}${e.areaName ? '_' + e.areaName : ''} ${e.payFrom ? e.payFrom + '-' : ''}${e.payTo}${e.payName ? '/' + e.payName : ''}`, value: e.id }
         })
       }
     })

+ 1 - 1
src/views/recruit/enterprise/resumeManagement/elite/components/table.vue

@@ -87,7 +87,7 @@ const headers = ref([
   { title: '求职状态', key: 'person.jobStatusName', sortable: false },
   { title: '工作经验', key: 'person.expName', sortable: false },
   { title: '最高学历', key: 'person.eduName', sortable: false },
-  { title: '岗位薪资', key: 'job', value: item => `${item.job.payFrom}-${item.job.payTo}/${item.job.payName}`, sortable: false },
+  { title: '岗位薪资', key: 'job', value: item => `${item.job.payFrom ? item.job.payFrom + '-' : ''}${item.job.payTo}${item.job.payName ? '/' + item.job.payName : ''}`, sortable: false },
   { title: '状态', key: 'status', sortable: false },
   { title: '操作', value: 'actions', sortable: false }
 ])

+ 1 - 1
src/views/recruit/enterprise/resumeManagement/talentPool/components/details/jobIntention.vue

@@ -8,7 +8,7 @@
       <div class="d-flex">
         <div>{{ k.position }}</div>
         <div class="line">|</div>
-        <div>{{k.payFrom}}-{{k.payTo}}</div>
+        <div>{{k.payFrom ? k.payFrom + '-' : ''}}{{k.payTo}}</div>
         <div class="line">|</div>
         <div class="grey-text text-box">{{ k.industry?.map(e => e.nameCn).join('、') }}</div>
         <div class="line">|</div>

+ 1 - 1
src/views/recruit/personal/PersonalCenter/components/communication.vue

@@ -22,7 +22,7 @@
               <span>[{{ val.areaName }}]</span>
             </div>
             <div class="job-other">
-              <span class="salary">{{ val.payFrom }}-{{ val.payTo }}k</span>
+              <span class="salary">{{ val.payFrom ? val.payFrom + '-' : '' }}{{ val.payTo }}</span>
               <v-chip class="mx-3" color="primary" label size="small">{{ val.expName }}</v-chip>
               <v-chip color="primary" label size="small">{{ val.eduName }}</v-chip>
             </div>

+ 1 - 1
src/views/recruit/personal/PersonalCenter/components/interview/item.vue

@@ -26,7 +26,7 @@
         <div class="job-info color-666">
           <div class="job-name ellipsis" style="max-width: 410px;">
             <span class="mr-3 cursor-pointer position-name" @click="handleToPositionDetails(val)">{{ val.job.name }}</span>
-            <span>{{ val.job.payFrom }}-{{ val.job.payTo }}/{{ val.job.payName }}</span>
+            <span>{{ val.job.payFrom ? val.job.payFrom + '-' : '' }}{{ val.job.payTo }}{{ val.job.payName ? '/' + val.job.payName : '' }}</span>
           </div>
           <div class="job-other d-flex align-center">
             <div style="width: 30px;height: 30px;">

+ 3 - 3
src/views/recruit/personal/position/components/details.vue

@@ -4,7 +4,7 @@
       <div class="banner-title d-flex justify-space-between">
         <div class="d-flex align-center">
           <h1 class="ellipsis">{{ info.name }}</h1>
-          <span class="salary">{{ info.payFrom }}-{{ info.payTo }}/{{ positionInfo.payName }}</span>
+          <span class="salary">{{ info.payFrom ? item.payFrom + '-' : ''}}{{ info.payTo }}{{ positionInfo.payName ? '/' + positionInfo.payName : '' }}</span>
           <svg-icon v-if="info.hire" class="ml-5" name="pin" size="50"></svg-icon>
         </div>
         <span class="refresh-time">{{ timesTampChange(info.updateTime) }} {{ $t('common.refresh') }} <v-icon color="warning" size="20">mdi-alert-outline</v-icon></span>
@@ -65,7 +65,7 @@
               <h4>{{ $t('position.address') }}</h4>
               <div class="mt-1">
                 <v-icon size="25" color="primary">mdi-map-marker</v-icon>
-                <span style="color: var(--color-666);font-size: 15px;">{{ info.address }}</span>
+                <span style="color: var(--color-666);font-size: 15px;">{{ info.address ? info.address : '未知' }}</span>
               </div>
             </div>
             <div class="mt-3 text-center">
@@ -189,7 +189,7 @@ const generateAndDownloadImage = async () => {
 // 保存图片到本地
 const handleDownloadImage = () => {
   const { name, areaName, payFrom, payTo } = info.value
-  downloadBase64(previewSrc.value, `${name}${areaName ? '_' + areaName : ''}_${payFrom}-${payTo}-${positionInfo.value.payName}`)
+  downloadBase64(previewSrc.value, `${name}${areaName ? '_' + areaName : ''}${payFrom ? '_' + payFrom + '-' : ''}${payTo}-${positionInfo.value.payName}`)
 }
 
 // 快速登录

+ 1 - 1
src/views/recruit/personal/position/components/poster.vue

@@ -7,7 +7,7 @@
         <!-- 职位名称+薪资 -->
         <div class="d-flex justify-space-between mx-5">
           <h2 class="JobName ellipsis">{{ info.name }}</h2>
-          <span class="salary">{{ info.payFrom }}-{{ info.payTo }}/{{ positionInfo.payName }}</span>
+          <span class="salary">{{ info.payFrom ? info.payFrom + '-' : '' }}{{ info.payTo }}{{ positionInfo.payName ? '/' + positionInfo.payName : '' }}</span>
         </div>
         <!-- 地区、工作经验、学历 -->
         <div class="d-flex justify-space-between mx-5">

+ 1 - 1
src/views/recruit/personal/position/components/rightRecommend.vue

@@ -4,7 +4,7 @@
     <div v-if="items.length">
       <div v-for="(item, index) in items" :key="index" class="mb-2 cursor-pointer" @click="handlePosition(item)">
         <p class="recruit-name">{{ item.name }}</p>
-        <span class="recruit-salary">{{ item.payFrom }}-{{ item.payTo }}/{{ item.payName }}</span>
+        <span class="recruit-salary">{{ item.payFrom ? item.payFrom + '-' : '' }}{{ item.payTo }}{{ item.payName ? '/' + item.payName : '' }}</span>
         <div :class="['enterprise', {'border-bottom-dashed': index !== items.length - 1}]" @click="handleEnterprise(item)">
           <v-img class="float-left" :src="item.logoUrl || 'https://minio.citupro.com/dev/menduner/company-avatar.png'" :width="30" :height="30"></v-img>
           <span class="float-left enterprise-name">{{ item.anotherName }}</span>

+ 1 - 1
src/views/recruit/personal/remuse/components/jobIntention.vue

@@ -16,7 +16,7 @@
           <div class="d-flex">
             <div>{{ k.position }}</div>
             <div class="line">|</div>
-            <div>{{k.payFrom}}-{{k.payTo}}</div>
+            <div>{{k.payFrom ? k.payFrom + '-' : ''}}{{k.payTo}}</div>
             <div class="line">|</div>
             <div class="grey-text text-box">{{ k.industry && k.industry.length ? k.industry.map(e => e.nameCn).join('、') : '' }}</div>
             <div class="line" v-if="k.industry.length && k.jobTypeName">|</div>

+ 1 - 1
src/views/recruit/personal/shareJob/index.vue

@@ -10,7 +10,7 @@
       <div v-else>
         <div class="d-flex justify-space-between">
           <h2 class="JobName ellipsis">{{ info.name }}</h2>
-          <span class="salary">{{ info.payFrom }}-{{ info.payTo }}/{{ positionInfo.payName }}</span>
+          <span class="salary">{{ info.payFrom ? info.payFrom + '-' : '' }}{{ info.payTo }}{{ positionInfo.payName ? '/' + positionInfo.payName : '' }}</span>
         </div>
         <div class="d-flex justify-space-between mt-4">
           <div class="banner-tags">

+ 2 - 1
src/views/register/select.vue

@@ -3,7 +3,8 @@
     <div class="register-content">
       <h2 style="color: #666; font-weight: 400;">请选择您当前注册的身份</h2>
       <div class="d-flex mt-16">
-        <div style="width: 50%;" class="cursor-pointer item pa-3" @click="handleToRegister('/register/company')">
+        <!--  @click="handleToRegister('/register/company')" -->
+        <div style="width: 50%;" class="cursor-pointer item pa-3">
           <v-icon color="primary" size="100">mdi-home-city-outline</v-icon>
           <div class="color-primary" style="font-size: 24px">企业用户</div>
         </div>