From 98e0d5d83395bbc97e01383bdc0e2544c773732b Mon Sep 17 00:00:00 2001 From: xuchao <1151716571@qq.com> Date: Wed, 21 Jan 2026 18:44:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=9B=E8=81=98=E4=BC=9A=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9C=B0=E5=8C=BA=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/careerfair/careerfair.vue | 282 +++++++++++++++++++++++++++++++- 1 file changed, 278 insertions(+), 4 deletions(-) diff --git a/pages/careerfair/careerfair.vue b/pages/careerfair/careerfair.vue index c9eae87..32d3274 100644 --- a/pages/careerfair/careerfair.vue +++ b/pages/careerfair/careerfair.vue @@ -22,9 +22,65 @@ @click="getFair('refresh')"> + 筛选 + + + + + + + + + + + {{ item.label }} + + + + + + + + + + 重置 + 确认 + + + @@ -151,10 +207,57 @@ onShow(() => { // 更新自定义tabbar选中状态 tabbarManager.updateSelected(1); + getoptions(); });// - - - + //筛选 + const filterOptions = ref([]); + const activeTab = ref(''); + const selectFilterModel = ref(null); + const selectedValues = ref(null); + function openFilter() { + selectFilterModel.value?.open(); + } + const scrollTo = (key) => { + activeTab.value = key; + }; + + const handleSelect = (e) => { + selectedValues.value = e.detail.value + }; + function cleanup(){ + selectedValues.value = null + confirm() + } + function confirm(){ + getFair("refresh"); + selectFilterModel.value?.close(); + } + function getoptions() { + let headers = { + 'Content-Type': 'application/x-www-form-urlencoded', + } + let params = { + dictType:'administrative_division', + dictParentValue:'653100000000', + childFlag:'1', + } + filterOptions.value = [{ + label: '所在区域', + key: 'area', + options: [] + }]; + $api.myRequest('/system/public/dict/data/getByParentValue',params,'POST',9100,headers).then(res=>{ + if (res.code == 200) { + filterOptions.value[0].options = res.data.map(item=>{ + return { + label: item.dictLabel, + value: item.dictValue, + } + }) + } + }) + activeTab.value = 'area'; + } async function thirdLogin(needToast){ let form={} if (uni.getStorageSync('userInfo') && (uni.getStorageSync('userInfo').isCompanyUser=='1' || uni.getStorageSync('userInfo').isCompanyUser=='2')) { @@ -420,6 +523,7 @@ pageSize: pageState.pageSize, jobFairTitle: pageState.jobFairTitle, jobFairType: state.current, + dictValue: selectedValues.value, }; if (isLogin.value) { if (userInfo.value.userType == "ent") { @@ -577,7 +681,168 @@ return dates; } +