lifanagju_citu 11 mēneši atpakaļ
vecāks
revīzija
2cdee29d94

+ 1 - 1
src/views/recruit/position/components/conditionFilter.vue

@@ -3,7 +3,7 @@
     <companyIndustry @inputChange="val => inputChange('industryIds', val)"></companyIndustry>
     <positionType @inputChange="val => inputChange('positionId', val)"></positionType>
     <JobType positionIndexPage @inputChange="val => inputChange('jobType', val)"></JobType>
-    <expType :isSingle="false" @inputChange="val => inputChange('expType', val)"></expType>
+    <expType positionIndexPage @inputChange="val => inputChange('expType', val)"></expType>
     <payScope @inputChange="val => inputChange('payType', val)"></payScope>
     <educationType :isSingle="false" @inputChange="val => inputChange('eduType', val)"></educationType>
     <scale @inputChange="val => inputChange('scale', val)"></scale>

+ 16 - 9
src/views/recruit/position/components/conditionFilter/expType.vue

@@ -21,19 +21,23 @@ import { getDict } from '@/hooks/web/useDictionaries'
 import { ref, defineEmits, inject } from 'vue';
 
 defineOptions({name: 'conditionFilter-expType'})
+const emits = defineEmits(['inputChange'])
+const query = inject('routeQuery')
 const props = defineProps({
   isSingle: {
     type: Boolean,
     default: false
+  },
+  positionIndexPage: { // 职位检索
+    type: Boolean,
+    default: false
   }
 })
-
-const show = ref(false)
-const query = inject('routeQuery')
 const title = ref('工作经验')
-const emits = defineEmits(['inputChange'])
+const show = ref(false)
 let items = ref()
 const selectedItems = ref([])
+
 getDict('menduner_exp_type').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
@@ -41,9 +45,9 @@ getDict('menduner_exp_type').then(({ data }) => {
     const str = query.expType.split(',')[0]
     const arr = str.split('_')
     if (arr?.length) {
-      title.value = `工作经验(${arr.length})`
       selectedItems.value = arr
-      emits('inputChange', { values: selectedItems.value, isEmit: true })
+      title.value = selectedItems.value.length ? `工作经验(${selectedItems.value.length})` : '工作经验'
+      if (!props.positionIndexPage) emits('inputChange', { values: selectedItems.value, isEmit: true })
     }
   }
   show.value = true
@@ -53,7 +57,7 @@ const handle = (val) => {
   if (props.isSingle) {
     // 单选
     selectedItems.value = obj ? [] : [val]
-    title.value = (obj || val === '2') ? '工作经验' : '工作经验(1)'
+    // title.value = (obj || val === '2') ? '工作经验' : '工作经验(1)'
   } else {
     // 多选 
     if (obj) {
@@ -66,9 +70,12 @@ const handle = (val) => {
       // 当经验不限已存在时还选中其它项,把经验不限给清掉
       if (val !== '2' && selectedItems.value.find(k => k === '2')) selectedItems.value = selectedItems.value.filter(i => i !== '2')
     }
-    title.value = val === '2' ? '工作经验' : (selectedItems.value.length ? `工作经验(${selectedItems.value.length})` : '工作经验')
+    // title.value = val === '2' ? '工作经验' : (selectedItems.value.length ? `工作经验(${selectedItems.value.length})` : '工作经验')
+    title.value = selectedItems.value.length ? `工作经验(${selectedItems.value.length})` : '工作经验'
+
   }
-  emits('inputChange', { values: selectedItems.value, isEmit: true })
+  if (props.positionIndexPage) emits('inputChange', selectedItems.value)
+  else emits('inputChange', { values: selectedItems.value, isEmit: true })
 }
 </script>