Files
sgy-web/pages/recruit/referto 三联动/referto三联动.js
2023-11-27 13:07:01 +08:00

159 lines
4.0 KiB
JavaScript

// pages/recruit/referto/referto.js
Page({
/**
* 页面的初始数据
*/
data: {
notice : '', //地区提示
areaData : '', //地区数据
paySuccess : false,
experienceId: '',
typesArr : [],
typesIndex : 0,
refertoStatus: false,
checkStatus : false,
region : [],
regionsVal: "",
// 市级选择
cityArr : [],
cityId : 0,
cityIndex : 0,
// 区域选择
regiArr : [],
regiId : 0,
regiIndex : 0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.setData({
experienceId: options.id
})
// 获取申请前置接口
this.recruitInfo(options.id);
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {},
// 省市区三联动
bindRegionChange (e) {
// console.log(e)
let { value, postcode } = e.detail
this.setData({
regions : value,
regionsVal: value[0] + "-" + value[1] + "-" + value[2]
})
},
/**
* 申请前置接口
*/
recruitInfo(id) {
wx.$api.recruit.Enroll(id, {
experience_area_id: getApp().globalData.experienceAreaId
}).then(res => {
// console.log(res)
// let areas = [
// {
// city: "请选择城市",
// city_id: null,
// experience_area_id: null,
// surplus: null
// }
// ]
this.setData({
areaData : res.data.areas,
notice : res.data.experience_notice,
typesArr : [{experience_type_id: null, name: "请选择体验内容"}, ...res.data.types],
// cityArr : [...areas, ...res.data.areas],
paySuccess : false
})
// 获取区级列表
// this.regilist(res.data.areas[this.data.cityIndex].city_id)
}).catch(err => {})
},
/**
* 体验内容筛选
*/
tasteDrop(e) {
let newIndex = e.detail.value
this.setData({
typesIndex : newIndex
})
},
/**
* 提交表单
*/
siteform(e) {
let value = e.detail.value
let errMsg = ''
// let newRegions= this.data.regions.join('')
if(this.data.regionsVal === '') {
errMsg = "请选择省市区"
}
if(this.data.typesArr[this.data.typesIndex].experience_type_id === null) errMsg = "请选择体验内容"
if(errMsg != ''){
wx.showToast({
title: errMsg,
icon : 'none'
})
return
}
let data = {
name : value.name,
address : value.address,
region_names : this.data.regions,
experience_id : this.data.experienceId,
experience_area_id : this.data.areaData.experience_area_id,
experience_type_id : this.data.typesArr[this.data.typesIndex].experience_type_id,
invite : getApp().globalData.inviteText
}
this.setData({
disabled: true
})
wx.$api.recruit.recruitAdd(data).then(res => {
this.setData({
checkStatus: true,
disabled: false
})
}).catch(() =>{
this.setData({
disabled: false
})
})
},
/**
* 关闭弹框,跳转首页
*/
refertoTap() {
this.setData({
refertoStatus: false
})
wx.switchTab({
url: '/pages/recruit/index'
})
},
/**
* 申请体验官成功后,弹出
*/
checkTap() {
this.setData({
refertoStatus: true,
checkStatus: false
})
}
})