shuziren/job-seeker/miniprogram-2/homeSub/pages/jobExpect/jobExpect.js

212 lines
6.1 KiB
JavaScript

// homeSub/pages/jobExpect/jobExpect.js
const salaryRange = {
最低薪资: ['1k', '2k', '3k', '4k', '5k', '6k', '7k', '8k', '9k', '10k', '11k', '12k', '13k', '14k', '15k', '16k'],
最高薪资: ['1k', '2k', '3k', '4k', '5k', '6k', '7k', '8k', '9k', '10k', '11k', '12k', '13k', '14k', '15k', '16k', '17k', '18k', '19k', '20k', '21k', '22k', '23k', '24k', '25k', '26k', '27k', '28k', '29k',
'30k', '31k', '32k', '33k', '34k', '35k', '36k', '37k', '38k', '39k', '40k', '41k', '42k', '43k', '44k', '45k', '46k', '47k', '48k', '49k', '50k'
]
};
Page({
/**
* 页面的初始数据
*/
data: {
index: -1,
userid: -1,
min: Number,
max: Number,
salary: "请选择",
isChangeSalary: false,
isCreate: true,
jobExpectItem: {
jobName: String,
expectType: "1",
position: String,
minSalary: String,
maxSalary: String
},
popSalarySelect: false,
salaryPicker: [{
values: salaryRange['最低薪资'],
className: 'column1',
},
{
values: salaryRange['最高薪资'],
className: 'column2',
},
],
ruleList: {
jobRule: [{
required: true,
message: '请填写岗位名称',
trigger: 'blur'
}],
positionRule: [{
required: true,
message: '请填写工作地点',
trigger: 'blur'
}],
salaryRule: {
required: true,
message: '请选择薪资范围',
trigger: 'blur'
}
}
},
onChangeSalary(e) {
const value = e.detail.value;
const minSalaryIndex = value[0];
const maxSalaryIndex = value[1];
var numericPart1 = minSalaryIndex.slice(0, -1); // 移除 "k" 后缀
var salaryNumber1 = parseFloat(numericPart1); // 将字符串转换为浮点数或整数
var numericPart2 = maxSalaryIndex.slice(0, -1); // 移除 "k" 后缀
var salaryNumber2 = parseFloat(numericPart2); // 将字符串转换为浮点数或整数
// 检查最低薪资是否大于最高薪资,如果是,则自动调整
if (salaryNumber1 >= salaryNumber2) {
this.setData({
'salaryPicker[1].values': salaryRange['最高薪资'].slice(numericPart1),
});
}
},
gotoSetPosition(e) {
this.setData({
popPositionSelect: true,
})
},
onConfirmSalary(e) {
const {
picker,
value,
index
} = e.detail;
this.setData({
'jobExpectItem.minSalary': value[0],
'jobExpectItem.maxSalary': value[1]
})
this.setData({
salary: value[0] + "-" + value[1],
popSalarySelect: false,
isChangeSalary: true
})
},
submit(e) {
// console.log(this.data.jobExpectItem.expectType)
const dataToPass = {
expectType: this.data.jobExpectItem.expectType,
jobName: e.detail.values.jobName,
position: e.detail.values.position,
minSalary: this.data.jobExpectItem.minSalary.slice(0, -1),
maxSalary: this.data.jobExpectItem.maxSalary.slice(0, -1)
};
if (this.data.isChangeSalary == false) {
dataToPass.minSalary = this.data.min
dataToPass.maxSalary = this.data.max
}
// wx.redirectTo({
// url: '/homeSub/pages/writeResume/writeResume?jobExpectItem=' + JSON.stringify(dataToPass) + "&isCreate=" + this.data.isCreate + "&index=" + this.data.index,
// });
let pages = getCurrentPages(); // 当前页的数据,
let prevPage = pages[pages.length - 2]; // 上一页的数据
prevPage.setData({
jobExpectItem: JSON.stringify(dataToPass),
isCreate:this.data.isCreate,
index:this.data.index,
projectexperienceItem:null,
jobexperienceItem:null,
educationItem:null,
})
wx.navigateBack({
delta: 1
})
},
onChange(event) {
this.setData({
"jobExpectItem.expectType": event.detail,
});
},
onCancelSalary(e) {
this.setData({
popSalarySelect: false
})
},
gotoSetSalary(e) {
this.setData({
popSalarySelect: true
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
// let pages = getCurrentPages();
// let prevPage = pages[pages.length - 2];
// console.log(prevPage)
if (options.job) {
let item = JSON.parse(options.job)
this.setData({
index: options.index,
jobExpectItem: item,
isCreate: false,
salary: item.minSalary + "k-" + item.maxSalary + "k",
min: item.minSalary,
max: item.maxSalary
})
}
this.setData({
userid: options.userid
})
wx.lin.initValidateForm(this)
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
const picker = this.selectComponent('.picker1') //获取组件实例
picker.setIndexes([this.data.jobExpectItem.minSalary - 1, this.data.jobExpectItem.maxSalary - 1]) //setIndexes()中的参数是一个数组
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
// var pages = getCurrentPages();
// console.log(pages)
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})