|
|
@@ -739,7 +739,8 @@
|
|
|
})
|
|
|
that.directionList = prefer
|
|
|
})
|
|
|
- //获取经纬度后请求岗位接口,经纬度用于筛选距离
|
|
|
+
|
|
|
+
|
|
|
uni.getLocation({
|
|
|
type: 'wgs84', //wgs84 gcj02
|
|
|
success: function(res) {
|
|
|
@@ -1171,8 +1172,11 @@
|
|
|
this.$Request.get("/app/company/selectCompanyByUserId").then(res => {
|
|
|
if (res.code == 0 && res.data) {
|
|
|
this.companyStatus = res.data.status
|
|
|
+ this.companyId = res.data.companyId
|
|
|
this.companyName = res.data.companyAllName
|
|
|
uni.setStorageSync('companyStatus', this.companyStatus)
|
|
|
+ uni.setStorageSync('companyId', res.data.companyId)
|
|
|
+ this.companyId=this.companyId
|
|
|
if(this.companyStatus==1){
|
|
|
uni.showModal({
|
|
|
title: '提示',
|
|
|
@@ -1292,32 +1296,44 @@
|
|
|
|
|
|
}
|
|
|
this.$Request.postJson('/app/resumes/selectResumesList', data).then(res => {
|
|
|
- uni.stopPullDownRefresh()
|
|
|
- uni.hideLoading()
|
|
|
- if (res.code == 0 && res.data) {
|
|
|
- this.totalPage = res.data.totalPage
|
|
|
- // res.data.list.map(item => {
|
|
|
- // if (item.positionWelfare) {
|
|
|
- // item.positionWelfare = item.positionWelfare.split(',')
|
|
|
- // } else {
|
|
|
- // item.positionWelfare = []
|
|
|
- // }
|
|
|
- // })
|
|
|
-
|
|
|
- const list = res.data.records.map(item => {
|
|
|
- // 若技能字段为其他名称(如 skillTags),需映射为 skills
|
|
|
- item.skills = item.skillTags || '';
|
|
|
- return item;
|
|
|
- });
|
|
|
- if (this.page == 1) {
|
|
|
- this.datasList = list
|
|
|
- } else {
|
|
|
- this.datasList = [...this.datasList, ...list]
|
|
|
- }
|
|
|
- this.totlo = res.data.totalPage
|
|
|
- } else {
|
|
|
- this.datasList = []
|
|
|
- }
|
|
|
+ // 1. 停止下拉刷新和隐藏loading(无论请求结果如何都执行)
|
|
|
+ uni.stopPullDownRefresh()
|
|
|
+ uni.hideLoading()
|
|
|
+
|
|
|
+ // 2. 第一层校验:确保res、res.data、res.data.records都存在且为数组
|
|
|
+ if (res.code == 0 && res.data && Array.isArray(res.data.records)) {
|
|
|
+ this.totalPage = res.data.totalPage
|
|
|
+ this.totlo = res.data.totalPage // 注意:变量名疑似笔误(totlo → totalPage?)
|
|
|
+
|
|
|
+ // 3. 处理列表:过滤null/undefined元素 + 安全访问skillTags
|
|
|
+ const list = res.data.records
|
|
|
+ .filter(item => item !== null && item !== undefined) // 过滤空元素
|
|
|
+ .map(item => {
|
|
|
+ // 安全赋值:item存在时才访问skillTags,否则赋值为空字符串
|
|
|
+ item.skills = item?.skillTags || '';
|
|
|
+ return item;
|
|
|
+ });
|
|
|
+
|
|
|
+ // 4. 分页赋值(避免空数组覆盖)
|
|
|
+ if (this.page == 1) {
|
|
|
+ this.datasList = list
|
|
|
+ } else {
|
|
|
+ this.datasList = [...this.datasList, ...list]
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 5. 异常情况:仅第一页清空列表,避免翻页时丢失数据
|
|
|
+ if (this.page === 1) {
|
|
|
+ this.datasList = []
|
|
|
+ }
|
|
|
+ // 可选:提示用户无数据
|
|
|
+ // uni.showToast({ title: '暂无数据', icon: 'none' })
|
|
|
+ }
|
|
|
+ }).catch(err => {
|
|
|
+ // 6. 捕获请求异常(如网络错误、接口500)
|
|
|
+ uni.stopPullDownRefresh()
|
|
|
+ uni.hideLoading()
|
|
|
+ uni.showToast({ title: '请求失败,请重试', icon: 'none' })
|
|
|
+ console.error('简历列表请求失败:', err)
|
|
|
})
|
|
|
},
|
|
|
/**
|