-
{{dataSource.factoryName || '默认工厂'}}
+
+
+
{{dataSource.factoryName || '默认工厂'}}
+
+
+
+
+
+
@@ -22,8 +29,8 @@
{{dataSource.workTime || '8:00-20:00'}}
{{dataSource.gender}}
- {{dataSource.jobName || '主营汽车线束'}}
- {{`距你${Math.round(dataSource.distanceMeters)}米`}}
+ {{dataSource.jobName || '主营汽车线束'}}
+ {{`距你${Math.round(dataSource.distanceMeters)}米`}}
{{item.tagName}}
@@ -45,7 +52,9 @@
-
\ No newline at end of file
diff --git a/pages/positionDetail/positionDetail.vue b/pages/positionDetail/positionDetail.vue
index 0faa0e0..0285267 100644
--- a/pages/positionDetail/positionDetail.vue
+++ b/pages/positionDetail/positionDetail.vue
@@ -1,419 +1,690 @@
-
-
-
-
-
-
-
-
-
- 8:00-20:00 两班倒
- 主营汽车线束
-
-
-
-
-
- 小时工
- 工资: 20+1元/小时(含1元满勤)+绩效奖金高达500,月薪6500-7500
-
-
-
- 正式工
- 工资2490元/月+夜班补贴10元/晚+"表现佳有绩效+超产奖金" 平时加班1.5倍,双休日2倍,国假日3倍等,月收入5700-6800/月
-
-
-
-
-
- 转正满2个月体检费196元企业报销(凭发票)
- 有部分为显微镜工作,显微镜工作额外有0-300的岗位补贴(具体以厂区发放为准抱拳)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 工作岗位:{{positionData.jobName}}
+ 工作时间:{{positionData.workTime}}
+ 时薪:{{positionData.hourlyWage}}/时
+ 年龄要求:{{positionData.ageRange}}
+ 包饭:{{positionData.mealPlan}}餐
+ 住宿环境:{{positionData.dorm}}人间
+ {{item.tagName}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/searchPositions/searchPositions.vue b/pages/searchPositions/searchPositions.vue
index 99f77c3..6f6135f 100644
--- a/pages/searchPositions/searchPositions.vue
+++ b/pages/searchPositions/searchPositions.vue
@@ -8,17 +8,13 @@
- 长白班
- 高工资
- 包吃住
- 日结
- 大龄工
+ {{ item.tagName || '标签' }}
-
+
@@ -35,7 +31,7 @@
onLoad
} from '@dcloudio/uni-app'
import {
- getAppJobVO
+ getAppJobVO, tagGetListPage
} from '../../api';
import {
ref
@@ -50,6 +46,8 @@
const loadingMore = ref(false)
const noMoreData = ref(false)
const pageSize = ref(10)
+ const tagList = ref([])
+ const activeTag = ref([])
let userLatLng = {
lat: null,
lng: null
@@ -69,7 +67,7 @@
if (currentPage === 1) {
// 刷新或首次加载
- list.value = res.data
+ list.value = res.data.records
} else {
// 加载更多
@@ -82,10 +80,26 @@
}
}
-
+
+ const handleGetTag = async () => {
+ const { data } = await tagGetListPage()
+ tagList.value = data
+ }
+
+ const onTagClick = (tagId) => {
+ // 实现多选逻辑:如果已选中则移除,未选中则添加
+ const index = activeTag.value.indexOf(tagId);
+ if (index > -1) {
+ activeTag.value.splice(index, 1);
+ } else {
+ activeTag.value.push(tagId);
+ }
+ onSearch()
+ }
onLoad(() => {
currentPage = 1
hanleGetJobList()
+ handleGetTag()
})
@@ -108,23 +122,6 @@
} finally {
refreshing.value = false
}
- /* refreshing.value = true
- currentPage.value = 1
- noMoreData.value = false
- try {
- await hanleGetJobList()
- uni.showToast({
- title: '刷新成功',
- icon: 'success'
- })
- } catch (error) {
- uni.showToast({
- title: '刷新失败',
- icon: 'none'
- })
- } finally {
- refreshing.value = false
- } */
}
const onLoadMore = async () => {
@@ -152,39 +149,14 @@
const onSearch = () => {
console.log(searchKeyword.value)
const params = {
- keyword: searchKeyword.value
+ keyword: searchKeyword.value,
+ tagIds: activeTag.value // 直接传递数组,get方法会自动处理
}
// 搜索时重置到第一页
currentPage = 1
noMoreData.value = false
hanleGetJobList(params)
}
- /* // 导入recruitment组件
- import recruitment from '@/components/recruitment/recruitment.vue';
- export default {
- // 注册组件
- components: {
- recruitment
- },
- data() {
- return {
- searchKeyword: '',
- activeTag: ''
- }
- },
- methods: {
- // 搜索方法
- onSearch() {
- // 实现搜索逻辑
- console.log('搜索关键词:', this.searchKeyword);
- },
- // 标签点击方法
- onTagClick(tag) {
- this.activeTag = this.activeTag === tag ? '' : tag;
- console.log('点击标签:', tag);
- }
- }
- } */