Browse Source

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner into dev

Xiao_123 1 year ago
parent
commit
5f4f315531

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

@@ -21,7 +21,7 @@ defineOptions({name: 'conditionFilter-JobType'})
 const emits = defineEmits(['selectedItems'])
 let items = ref()
 const selectedItems = ref([])
-getDict('menduner_job_type').then(({ data }) => { // 求职类型
+getDict('menduner_job_type').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })

+ 20 - 4
src/views/recruit/position/components/conditionFilter/educationType.vue

@@ -1,19 +1,35 @@
 <template>
-  <commonStyle btnTitle="学历要求">
-    <div></div>
+  <commonStyle btnTitle="学历要求" :close-on-content-click="false">
+    <v-list>
+      <v-list-item
+        color="primary"
+        :active="selectedItems.includes(item.value)"
+        v-for="item in items" :key="item.id" :value="item.value"
+        @click="handle(item.value)"
+      >
+        <v-list-item-title>{{ item.label }}</v-list-item-title>
+      </v-list-item>
+    </v-list>
   </commonStyle>
 </template>
 <script setup>
 import commonStyle from './commonStyle.vue'
 import { getDict } from '@/hooks/web/useDictionaries'
-import { ref } from 'vue';
+import { ref, defineEmits } from 'vue';
 
 defineOptions({name: 'conditionFilter-educationType'})
+const emits = defineEmits(['selectedItems'])
 let items = ref()
-getDict('menduner_education_type').then(({ data }) => { // 学历要求
+const selectedItems = ref([])
+getDict('menduner_education_type').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })
+const handle = (val) => {
+  if (selectedItems.value.includes(val)) selectedItems.value = selectedItems.value.filter(i => i !== val)
+  else selectedItems.value.push(val)
+  emits('selectedItems', selectedItems.value)
+}
 </script>
 <style lang="scss" scoped>
 </style>

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

@@ -21,7 +21,7 @@ defineOptions({name: 'conditionFilter-expType'})
 const emits = defineEmits(['selectedItems'])
 let items = ref()
 const selectedItems = ref([])
-getDict('menduner_exp_type').then(({ data }) => { // 工作经验
+getDict('menduner_exp_type').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })

+ 20 - 4
src/views/recruit/position/components/conditionFilter/financingStatus.vue

@@ -1,19 +1,35 @@
 <template>
-  <commonStyle btnTitle="融资阶段">
-    <div></div>
+  <commonStyle btnTitle="融资阶段" :close-on-content-click="false">
+    <v-list>
+      <v-list-item
+        color="primary"
+        :active="selectedItems.includes(item.value)"
+        v-for="item in items" :key="item.id" :value="item.value"
+        @click="handle(item.value)"
+      >
+        <v-list-item-title>{{ item.label }}</v-list-item-title>
+      </v-list-item>
+    </v-list>
   </commonStyle>
 </template>
 <script setup>
 import commonStyle from './commonStyle.vue'
 import { getDict } from '@/hooks/web/useDictionaries'
-import { ref } from 'vue';
+import { ref, defineEmits } from 'vue';
 
 defineOptions({name: 'conditionFilter-financingStatus'})
+const emits = defineEmits(['selectedItems'])
 let items = ref()
-getDict('menduner_financing_status').then(({ data }) => { // 融资阶段
+const selectedItems = ref([])
+getDict('menduner_financing_status').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })
+const handle = (val) => {
+  if (selectedItems.value.includes(val)) selectedItems.value = selectedItems.value.filter(i => i !== val)
+  else selectedItems.value.push(val)
+  emits('selectedItems', selectedItems.value)
+}
 </script>
 <style lang="scss" scoped>
 </style>

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

@@ -21,7 +21,7 @@ defineOptions({name: 'conditionFilter-payScope'})
 const emits = defineEmits(['selectedItems'])
 let items = ref()
 let selectedItems = ref([])
-getDict('menduner_pay_scope').then(({ data }) => { // 求职类型
+getDict('menduner_pay_scope').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })

+ 20 - 4
src/views/recruit/position/components/conditionFilter/scale.vue

@@ -1,19 +1,35 @@
 <template>
-  <commonStyle btnTitle="公司规模">
-    <div></div>
+  <commonStyle btnTitle="公司规模" :close-on-content-click="false">
+    <v-list>
+      <v-list-item
+        color="primary"
+        :active="selectedItems.includes(item.value)"
+        v-for="item in items" :key="item.id" :value="item.value"
+        @click="handle(item.value)"
+      >
+        <v-list-item-title>{{ item.label }}</v-list-item-title>
+      </v-list-item>
+    </v-list>
   </commonStyle>
 </template>
 <script setup>
 import commonStyle from './commonStyle.vue'
 import { getDict } from '@/hooks/web/useDictionaries'
-import { ref } from 'vue';
+import { ref, defineEmits } from 'vue';
 
 defineOptions({name: 'conditionFilter-scale'})
+const emits = defineEmits(['selectedItems'])
 let items = ref()
-getDict('menduner_scale').then(({ data }) => { // 公司规模
+const selectedItems = ref([])
+getDict('menduner_scale').then(({ data }) => {
   data = data?.length && data || []
   items.value = data
 })
+const handle = (val) => {
+  if (selectedItems.value.includes(val)) selectedItems.value = selectedItems.value.filter(i => i !== val)
+  else selectedItems.value.push(val)
+  emits('selectedItems', selectedItems.value)
+}
 </script>
 <style lang="scss" scoped>
 </style>