Browse Source

企业-精益储备筛选条件

Xiao_123 1 month ago
parent
commit
e1983035df
1 changed files with 49 additions and 118 deletions
  1. 49 118
      src/views/recruit/enterprise/talentPool/components/filter.vue

+ 49 - 118
src/views/recruit/enterprise/talentPool/components/filter.vue

@@ -1,8 +1,6 @@
 <template>
 <template>
   <div class="px-5 pt-1 py-15" style="position: relative;">
   <div class="px-5 pt-1 py-15" style="position: relative;">
-    <h3 class="my-3" style="color: var(--v-primary-base);">条件筛选</h3>
-    <!-- <v-divider class="my-3"></v-divider>
-    <div class="text-right reset-text cursor-pointer" @click="handleReset">重置筛选</div> -->
+    <h3 class="my-3 color-primary">条件筛选</h3>
     <CtForm ref="CtFormRef" :items="formItems" style="width: 100%;">
     <CtForm ref="CtFormRef" :items="formItems" style="width: 100%;">
       <!-- 期望岗位 -->
       <!-- 期望岗位 -->
       <template #positionId="{ item }">
       <template #positionId="{ item }">
@@ -35,13 +33,14 @@
 
 
 <script setup>
 <script setup>
 defineOptions({ name: 'talent-pool-filter'})
 defineOptions({ name: 'talent-pool-filter'})
-import { getRocketLabelList } from '@/api/recruit/enterprise/resumeManagement/talentMap'
+// import { getRocketLabelList } from '@/api/recruit/enterprise/resumeManagement/talentMap'
 
 
 import jobTypeCard from '@/components/jobTypeCard'
 import jobTypeCard from '@/components/jobTypeCard'
 import textUI from '@/components/FormUI/TextInput'
 import textUI from '@/components/FormUI/TextInput'
 import { getDict } from '@/hooks/web/useDictionaries'
 import { getDict } from '@/hooks/web/useDictionaries'
 import Snackbar from '@/plugins/snackbar'
 import Snackbar from '@/plugins/snackbar'
 import { ref } from 'vue'
 import { ref } from 'vue'
+
 const emit = defineEmits(['cancel', 'confirm'])
 const emit = defineEmits(['cancel', 'confirm'])
 
 
 const CtFormRef = ref()
 const CtFormRef = ref()
@@ -51,8 +50,7 @@ const formItems = ref({
       type: 'text',
       type: 'text',
       key: 'name',
       key: 'name',
       value: '',
       value: '',
-      label: '姓名 ',
-      col: 12
+      label: '姓名 '
     },
     },
     {
     {
       type: 'autocomplete',
       type: 'autocomplete',
@@ -66,35 +64,6 @@ const formItems = ref({
       dictTypeName: 'menduner_sex',
       dictTypeName: 'menduner_sex',
       items: []
       items: []
     },
     },
-    // {
-    //   type: 'ifRadio',
-    //   key: 'sex',
-    //   value: '0',
-    //   default: 0,
-    //   label: '人才分类',
-    //   width: 90,
-    //   items: [
-    //     { label: '不限', value: '0' },
-    //     { label: '默认分类', value: '1' }
-    //   ]
-    // },
-    // {
-    //   type: 'ifRadio',
-    //   key: 'type',
-    //   value: '0',
-    //   default: 0,
-    //   label: '简历状态',
-    //   width: 120,
-    //   items: [
-    //     { label: '不限', value: '0' },
-    //     { label: '已查看', value: '1' },
-    //     { label: '未查看', value: '2' },
-    //     { label: '已导出', value: '3' },
-    //     { label: '已邀请', value: '4' },
-    //     { label: '已回复', value: '5' },
-    //     { label: '有评语', value: '6' }
-    //   ],
-    // },
     {
     {
       type: 'text',
       type: 'text',
       key: 'email',
       key: 'email',
@@ -107,75 +76,6 @@ const formItems = ref({
       value: '',
       value: '',
       label: '联系手机号 ',
       label: '联系手机号 ',
     },
     },
-    {
-      type: 'text',
-      key: 'wxCode',
-      value: '',
-      label: '微信号 ',
-    },
-    // {
-    //   type: 'text',
-    //   key: 'birthday',
-    //   value: '',
-    //   label: '出生日期 ',
-    // },
-    // {
-    //   type: 'autocomplete',
-    //   key: 'labels',
-    //   value: null,
-    //   label: '人员标签 ',
-    //   multiple: true,
-    //   outlined: true,
-    //   itemText: 'label',
-    //   itemValue: 'value',
-    //   items: [
-    //     { label: '标签', value: '0' },
-    //   ]
-    // },
-    // {
-    //   type: 'number',
-    //   key: 'age1',
-    //   value: null,
-    //   label: '年龄区间:起始',
-    // },
-    // {
-    //   type: 'number',
-    //   key: 'age2',
-    //   value: null,
-    //   label: '年龄区间:结束',
-    // },
-    // {
-    //   type: 'number',
-    //   key: 'pay1',
-    //   value: null,
-    //   suffix: '元',
-    //   label: '期望薪资:起始',
-    // },
-    // {
-    //   type: 'number',
-    //   key: 'pay2',
-    //   value: null,
-    //   suffix: '元',
-    //   label: '期望薪资:结束',
-    // },
-    {
-      type: 'areaSelect',
-      key: 'areaIds',
-      value: '',
-      // label: ' ',
-      placeholder: '所在城市', // 暂时只能使用placeholder
-      readonly: true,
-      limit: 1,
-    },
-    {
-      type: 'areaSelect',
-      key: 'regIds',
-      value: '',
-      // label: ' ',
-      placeholder: '户籍所在地', // 暂时只能使用placeholder
-      readonly: true,
-      limit: 1,
-    },
     {
     {
       type: 'autocomplete',
       type: 'autocomplete',
       key: 'eduType',
       key: 'eduType',
@@ -249,6 +149,30 @@ const formItems = ref({
       dictTypeName: 'menduner_marital_status',
       dictTypeName: 'menduner_marital_status',
       items: []
       items: []
     },
     },
+    {
+      type: 'cascade',
+      key: 'areaIds',
+      value: null,
+      default: null,
+      label: '所在城市',
+      itemText: 'name',
+      itemValue: 'id',
+      checkStrictly: true,
+      clearable: true,
+      items: [],
+    },
+    {
+      type: 'cascade',
+      key: 'regIds',
+      value: null,
+      default: null,
+      label: '户籍所在地',
+      itemText: 'name',
+      itemValue: 'id',
+      checkStrictly: true,
+      clearable: true,
+      items: [],
+    },
   ]
   ]
 })
 })
 
 
@@ -260,15 +184,22 @@ const getDictData = async (item) => {
   }
   }
 }
 }
 
 
-const getLabelData = async () => {
-  const res = await getRocketLabelList({ current: 1, size:9999, type: 'person' }) //type: job  enterprise person
-  const labels = res?.records || []
-  const labelsItem = formItems.value.options.find(f => f.key === 'labels')
-  if (labelsItem) {
-    labelsItem.items = labels.map(e => ({ label: e, value: e }))
-  }
-}
-getLabelData()
+getDict('areaTreeData', null, 'areaTreeData').then(({ data }) => {
+  data = data?.length && data || []
+  if (!data?.length) return console.error('areaTreeData获取失败!')
+  formItems.value.options.find(e => e.key === 'areaIds').items = data ?? []
+  formItems.value.options.find(e => e.key === 'regIds').items = data ?? []
+})
+
+// const getLabelData = async () => {
+//   const res = await getRocketLabelList({ current: 1, size:9999, type: 'person' }) //type: job  enterprise person
+//   const labels = res?.records || []
+//   const labelsItem = formItems.value.options.find(f => f.key === 'labels')
+//   if (labelsItem) {
+//     labelsItem.items = labels.map(e => ({ label: e, value: e }))
+//   }
+// }
+// getLabelData()
 
 
 let flexStyle = false
 let flexStyle = false
 formItems.value.options.forEach(e => {
 formItems.value.options.forEach(e => {
@@ -316,13 +247,13 @@ const confirm = () => {
       }
       }
     } else if (e.value !== null && e.value !== '' && e.value !== undefined) obj[e.key] = e.value
     } else if (e.value !== null && e.value !== '' && e.value !== undefined) obj[e.key] = e.value
   })
   })
-  if (obj.age1 > obj.age2) return Snackbar.warning('年龄区间异常,前者不能大于后者!')
-  if (obj.pay2 > obj.pay1) return Snackbar.warning('期望薪资异常,前者不能大于后者!')
+  // if (obj.age1 > obj.age2) return Snackbar.warning('年龄区间异常,前者不能大于后者!')
+  // if (obj.pay2 > obj.pay1) return Snackbar.warning('期望薪资异常,前者不能大于后者!')
   //
   //
-  if (obj.age1 || obj.age2) obj.age = [obj.age1 || null, obj.age2 || null].filter(Boolean)
-  if (obj.pay1 || obj.pay2) obj.pay = [obj.pay1 || null, obj.pay2 || null].filter(Boolean)
+  // if (obj.age1 || obj.age2) obj.age = [obj.age1 || null, obj.age2 || null].filter(Boolean)
+  // if (obj.pay1 || obj.pay2) obj.pay = [obj.pay1 || null, obj.pay2 || null].filter(Boolean)
   //
   //
-  if (!obj.labels?.length) delete obj.labels
+  // if (!obj.labels?.length) delete obj.labels
   emit('confirm', obj)
   emit('confirm', obj)
 }
 }