@@ -100,7 +100,8 @@ | |||||
"userProtocol/userProtocol", | "userProtocol/userProtocol", | ||||
"exchangeCard/exchangeCard", | "exchangeCard/exchangeCard", | ||||
"exchange/exchange", | "exchange/exchange", | ||||
"complaint/complaint" | |||||
"complaint/complaint", | |||||
"resume/resume" | |||||
] | ] | ||||
} | } | ||||
], | ], | ||||
@@ -435,6 +435,9 @@ var config = { | |||||
dynamicId: "/couponOrder/dynamicId", | dynamicId: "/couponOrder/dynamicId", | ||||
// 获取卡详情 | // 获取卡详情 | ||||
getCardDetail: "/couponPassword/getCardDetail", | getCardDetail: "/couponPassword/getCardDetail", | ||||
resumeAdd: "/resume/add", | |||||
resumeDetail: "/resume/myResume", | |||||
resumeFileUpload: "/upload/awsFileUpload", | |||||
}, | }, | ||||
weapp: { | weapp: { | ||||
AppId: weappId | AppId: weappId | ||||
@@ -2,45 +2,35 @@ | |||||
"ext": { | "ext": { | ||||
"attr": { | "attr": { | ||||
"car": { | "car": { | ||||
"tjd": { | |||||
"payPath": "", | |||||
"tjdAppId": "wx6945d1bda68d7993" | |||||
}, | |||||
"etcp": { | "etcp": { | ||||
"payPath": "pages/pay/order-pay-open/main", | |||||
"etcpAppId": "wxc07f9d67923d676d", | |||||
"etcpCallbackUrl": "https://admin.malls.iformall.com/api/carCallback/etcpPaidCallback" | |||||
}, | |||||
"bolink": { | |||||
"payPath": "pages/park/park", | |||||
"bolinkAppId": "wxbd08b4baa10fcc1d" | |||||
}, | |||||
"version": "release" | |||||
"etcpAppId": "wx192b7d2e8dcbefd0", | |||||
"etcpVersion": "release", | |||||
"etcpCallbackUrl": "https://admintest.malls.iformall.com/api/carCallback/etcpPaidCallback" | |||||
} | |||||
}, | }, | ||||
"mchId": "1698320008", | |||||
"mchId": "1604439800", | |||||
"imgProxy": [ | "imgProxy": [ | ||||
{ | { | ||||
"newUrl": "https://c.malls.iformall.com/img", | |||||
"newUrl": "https://ctest.malls.iformall.com/img", | |||||
"orgUrl": "https://iformall-net.formall.oss-accelerate.aliyuncs.com" | "orgUrl": "https://iformall-net.formall.oss-accelerate.aliyuncs.com" | ||||
}, | }, | ||||
{ | { | ||||
"newUrl": "https://c.malls.iformall.com/img1", | |||||
"newUrl": "https://ctest.malls.iformall.com/img1", | |||||
"orgUrl": "https://formall.oss-accelerate.aliyuncs.com" | "orgUrl": "https://formall.oss-accelerate.aliyuncs.com" | ||||
}, | }, | ||||
{ | { | ||||
"newUrl": "https://c.malls.iformall.com/img2", | |||||
"newUrl": "https://ctest.malls.iformall.com/img2", | |||||
"orgUrl": "https://wx.qlogo.cn" | "orgUrl": "https://wx.qlogo.cn" | ||||
} | } | ||||
], | ], | ||||
"mchIdOld": "1698320008", | |||||
"configUrl": "https://c.malls.iformall.com/C/api", | |||||
"ifStoreApp": "0", | |||||
"configUrl": "https://ctest.malls.iformall.com/C/api", | |||||
"businessSwitch": "1", | |||||
"ifHaveWebSocket": "0", | "ifHaveWebSocket": "0", | ||||
"ifHaveCarModular": "1" | "ifHaveCarModular": "1" | ||||
}, | }, | ||||
"name": "株洲东都国际广场", | |||||
"weappId": "wxdcaa5b92ea7de725", | |||||
"appVersion": "C.5.1.1" | |||||
"name": "金泸商务", | |||||
"weappId": "wx649b3be73c1afe47", | |||||
"appVersion": "C.test.5.2.0" | |||||
}, | }, | ||||
"debug": false, | "debug": false, | ||||
"tabBar": { | "tabBar": { | ||||
@@ -76,7 +66,8 @@ | |||||
"selectedIconPath": "assets/images/user-a.png" | "selectedIconPath": "assets/images/user-a.png" | ||||
} | } | ||||
], | ], | ||||
"custom": true | |||||
"color": "#abb1be", | |||||
"selectedColor": "#b2743d" | |||||
}, | }, | ||||
"window": { | "window": { | ||||
"backgroundTextStyle": "dark", | "backgroundTextStyle": "dark", | ||||
@@ -84,7 +75,17 @@ | |||||
"navigationBarTitleText": "", | "navigationBarTitleText": "", | ||||
"navigationBarBackgroundColor": "#FFFFFF" | "navigationBarBackgroundColor": "#FFFFFF" | ||||
}, | }, | ||||
"extAppid": "wxdcaa5b92ea7de725", | |||||
"plugins": { | |||||
"auto-points-plugin": { | |||||
"version": "1.3.0", | |||||
"provider": "wxfab2bf944bfc4da6" | |||||
}, | |||||
"live-player-plugin": { | |||||
"version": "1.3.4", | |||||
"provider": "wx2b03c6e691cd7370" | |||||
} | |||||
}, | |||||
"extAppid": "wx649b3be73c1afe47", | |||||
"extEnable": true, | "extEnable": true, | ||||
"permission": { | "permission": { | ||||
"scope.userLocation": { | "scope.userLocation": { | ||||
@@ -96,5 +97,8 @@ | |||||
"request": 30000, | "request": 30000, | ||||
"downloadFile": 10000 | "downloadFile": 10000 | ||||
}, | }, | ||||
"privacy_api_not_use": true | |||||
"requiredPrivateInfos": [ | |||||
"chooseLocation", | |||||
"getLocation" | |||||
] | |||||
} | } |
@@ -77,7 +77,7 @@ Page({ | |||||
options.id = this.data.newArr[2]; | options.id = this.data.newArr[2]; | ||||
} else if (options.type == 'ts') { | } else if (options.type == 'ts') { | ||||
options.id = this.data.newArr[2]; | options.id = this.data.newArr[2]; | ||||
} else if (options.type == 'ts') { | |||||
} else if (options.type == 'rm') { | |||||
options.id = this.data.newArr[2]; | options.id = this.data.newArr[2]; | ||||
} | } | ||||
} | } | ||||
@@ -87,10 +87,8 @@ Page({ | |||||
wx.setStorageSync('imgurl', imgurl); | wx.setStorageSync('imgurl', imgurl); | ||||
if (app.globalData.token) { | if (app.globalData.token) { | ||||
this.updateUserInfo(); | this.updateUserInfo(); | ||||
if (options.couponChannelId || options.orderId || options.id) { | |||||
if (options.couponChannelId || options.orderId || options.id || options.type === "rm") { | |||||
that.userStatus(options); | that.userStatus(options); | ||||
} else { | } else { | ||||
that.userStatus(); | that.userStatus(); | ||||
@@ -100,7 +98,7 @@ Page({ | |||||
// 所以此处加入 callback 以防止这种情况 | // 所以此处加入 callback 以防止这种情况 | ||||
app.tokenCallback = token => { | app.tokenCallback = token => { | ||||
this.updateUserInfo(); | this.updateUserInfo(); | ||||
if (options.couponChannelId || options.orderId || options.id) { | |||||
if (options.couponChannelId || options.orderId || options.id || options.type === "rm") { | |||||
that.userStatus(options); | that.userStatus(options); | ||||
} else { | } else { | ||||
that.userStatus(); | that.userStatus(); | ||||
@@ -113,9 +111,9 @@ Page({ | |||||
* 检查用户的状态 | * 检查用户的状态 | ||||
*/ | */ | ||||
userStatus: function (options) { | userStatus: function (options) { | ||||
console.log(options, 'options'); | |||||
var that = this; | var that = this; | ||||
if (options && (options.couponChannelId || options.orderId || options.id)) { | |||||
if (options && (options.couponChannelId || options.orderId || options.id || options.type === "rm")) { | |||||
that.checkuserstatus(options); | that.checkuserstatus(options); | ||||
} else { | } else { | ||||
that.checkuserstatus(); | that.checkuserstatus(); | ||||
@@ -388,6 +386,10 @@ Page({ | |||||
wx.redirectTo({ | wx.redirectTo({ | ||||
url: `/pages/index/searchbar/detail/index?id=${options.id}` | url: `/pages/index/searchbar/detail/index?id=${options.id}` | ||||
}); | }); | ||||
} else if (options && app.globalData.type == 'rm') { | |||||
wx.navigateTo({ | |||||
url: '/pages3/resume/resume', | |||||
}) | |||||
} else { | } else { | ||||
// 主页 | // 主页 | ||||
wx.switchTab({ | wx.switchTab({ | ||||
@@ -560,6 +562,10 @@ Page({ | |||||
wx.switchTab({ | wx.switchTab({ | ||||
url: '/index/searchbar' | url: '/index/searchbar' | ||||
}) | }) | ||||
} else if (options && app.globalData.type == 'rm') { | |||||
wx.navigateTo({ | |||||
url: '/pages3/resume/resume', | |||||
}) | |||||
} else { | } else { | ||||
wx.switchTab({ | wx.switchTab({ | ||||
url: app.globalData.goHomeUrl, | url: app.globalData.goHomeUrl, | ||||
@@ -0,0 +1,292 @@ | |||||
let app = getApp(); | |||||
const Http = require("../../utils/HttpBasics"); | |||||
const util = require("../../utils/util.js"); | |||||
const config = require("../../config/config"); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
userName: '', | |||||
content: '', | |||||
phone: '', | |||||
date: '2000-01-01', | |||||
dateEnd: '', | |||||
dateFlag: 1, | |||||
gender: '', | |||||
sexArry: ['男', '女'], | |||||
sexFlag: 1, | |||||
fileName: '', | |||||
filePath: '', | |||||
currentID: '' | |||||
}, | |||||
bindDateChange(e) { | |||||
this.setData({ | |||||
date: e.detail.value, | |||||
dateFlag: 2 | |||||
}) | |||||
}, | |||||
bindGenderChange(e) { | |||||
this.setData({ | |||||
gender: e.detail.value, | |||||
sexFlag: 2 | |||||
}) | |||||
}, | |||||
showPhoneMsg() { | |||||
wx.showToast({ | |||||
title: '手机号无法更改', | |||||
icon: "error" | |||||
}) | |||||
}, | |||||
uploadFile() { | |||||
wx.chooseMessageFile({ | |||||
count: 1, // 选择一个文件 | |||||
type: 'file', // 文件类型,可以是 image、video、file | |||||
success: (res) => { | |||||
console.log(res, 'res'); | |||||
wx.showLoading({ | |||||
title: '上传中', | |||||
}) | |||||
const fileName = res.tempFiles[0].name; | |||||
const tempFilePath = res.tempFiles[0].path; | |||||
this.goUpload(fileName, tempFilePath); | |||||
}, | |||||
}); | |||||
}, | |||||
goUpload(fileName, filePath) { | |||||
const that = this | |||||
wx.uploadFile({ | |||||
url: config.url + config.api.resumeFileUpload, | |||||
filePath, | |||||
name: 'file', | |||||
header: { | |||||
'token': app.globalData.token | |||||
}, | |||||
success: (res) => { | |||||
const response = JSON.parse(res.data) | |||||
console.log(response, 'response') | |||||
wx.hideLoading() | |||||
wx.showToast({ | |||||
title: '上传成功', | |||||
icon: 'success' | |||||
}); | |||||
that.setData({ | |||||
fileName, | |||||
filePath: response.data.url | |||||
}) | |||||
}, | |||||
fail: (err) => { | |||||
wx.hideLoading() | |||||
wx.showToast({ | |||||
title: '上传失败', | |||||
icon: 'error' | |||||
}); | |||||
console.error(err); | |||||
}, | |||||
}); | |||||
}, | |||||
cancelUpload() { | |||||
wx.showModal({ | |||||
title: '提示', | |||||
content: '删除文件后需要重新上传', | |||||
success(res) { | |||||
if (res.confirm) { | |||||
this.setData({ | |||||
fileName: "", | |||||
filePath: "" | |||||
}) | |||||
} else if (res.cancel) { | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
formSubmit(e) { | |||||
const that = this | |||||
const data = { | |||||
userName: e.detail.value.userName, | |||||
sex: 1 * that.data.gender + 1, | |||||
birthDay: that.data.date + " 00:00:00", | |||||
content: e.detail.value.content, | |||||
} | |||||
console.log(data, 'data'); | |||||
if (!data.userName) { | |||||
wx.showToast({ | |||||
title: '请输入真实姓名', | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
return | |||||
} | |||||
if (data.sex == 0) { | |||||
wx.showToast({ | |||||
title: '请选择性别', | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
return | |||||
} | |||||
if (!data.content) { | |||||
wx.showToast({ | |||||
title: '请输入求职内容', | |||||
icon: 'error', | |||||
duration: 2000 | |||||
}) | |||||
return | |||||
} | |||||
if (that.data.fileName) data.fileName = that.data.fileName | |||||
if (that.data.filePath) data.filePath = that.data.filePath | |||||
if (that.data.currentID) data.id = that.data.currentID | |||||
Http.post({ | |||||
url: config.api.resumeAdd, | |||||
data, | |||||
}).then(res => { | |||||
if (res.code == 200) { | |||||
wx.showToast({ | |||||
title: "提交成功!", | |||||
icon: 'success', | |||||
duration: 1500, | |||||
}) | |||||
} else { | |||||
wx.showToast({ | |||||
title: "提交出错!", | |||||
icon: 'error', | |||||
duration: 1500, | |||||
}) | |||||
} | |||||
}).catch(err => { | |||||
console.log(err); | |||||
}) | |||||
}, | |||||
getUserPhone() { | |||||
const that = this | |||||
Http.get({ | |||||
url: config.api.getScore, | |||||
data: {} | |||||
}).then(res => { | |||||
console.log(res.data); | |||||
if (res.data.phone) { | |||||
that.setData({ | |||||
phone: res.data.phone | |||||
}) | |||||
} | |||||
}) | |||||
.catch(err => { | |||||
wx.showModal({ | |||||
title: '提示', | |||||
content: err.errMsg, | |||||
showCancel: false | |||||
}) | |||||
}) | |||||
}, | |||||
getResumeDetail() { | |||||
const that = this | |||||
Http.get({ | |||||
url: config.api.resumeDetail, | |||||
}).then(res => { | |||||
const data = res.data | |||||
that.setData({ | |||||
userName: data.userName, | |||||
sexFlag: 2, | |||||
gender: data.sex - 1, | |||||
dateFlag: 2, | |||||
date: data.birthDayStr, | |||||
content: data.content, | |||||
}) | |||||
if (data.id) { | |||||
that.setData({ | |||||
currentID: data.id | |||||
}) | |||||
} | |||||
if (data.fileName) { | |||||
that.setData({ | |||||
fileName: data.fileName | |||||
}) | |||||
} | |||||
if (data.filePath) { | |||||
that.setData({ | |||||
filePath: data.filePath | |||||
}) | |||||
} | |||||
}).catch(err => { | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
this.getUserPhone() | |||||
this.getResumeDetail() | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
// onShareAppMessage() { | |||||
// }, | |||||
}) |
@@ -0,0 +1,9 @@ | |||||
{ | |||||
"navigationBarTitleText": "求职简历", | |||||
"enablePullDownRefresh": true, | |||||
"navigationBarBackgroundColor": "#F4F5F9", | |||||
"navigationBarTextStyle": "black", | |||||
"usingComponents": { | |||||
"navbar": "../../components/navbar/navbar" | |||||
} | |||||
} |
@@ -0,0 +1,70 @@ | |||||
<view> | |||||
<navbar home text="求职简历" background='#fff'></navbar> | |||||
<view class="container"> | |||||
<form bindsubmit="formSubmit" class="form"> | |||||
<view class="item"> | |||||
<text>姓名<text class="red">*</text></text> | |||||
<view class="right"> | |||||
<input name='userName' class="input" placeholder="请输入姓名" value='{{userName}}' /> | |||||
</view> | |||||
</view> | |||||
<view class="item"> | |||||
<text>手机号</text> | |||||
<view class="right"> | |||||
<input class="phone_disabled" placeholder="请输入姓名" value='{{phone}}' disabled bindtap="showPhoneMsg" /> | |||||
</view> | |||||
</view> | |||||
<view class="item"> | |||||
<text>性别<text class="red">*</text></text> | |||||
<view class="right"> | |||||
<picker range="{{sexArry}}" value="{{gender}}" bindchange="bindGenderChange"> | |||||
<view wx:if="{{sexFlag==1}}" class="input greyFont"> | |||||
请选择性别 | |||||
</view> | |||||
<view wx:if="{{sexFlag==2}}" class="input"> | |||||
{{sexArry[gender]}} | |||||
</view> | |||||
</picker> | |||||
<image class="next" src="/assets/images/next.png"></image> | |||||
</view> | |||||
</view> | |||||
<view class="item"> | |||||
<text>出生年月<text class="red">*</text></text> | |||||
<view class="right"> | |||||
<picker mode="date" value="{{date}}" start="1930-09-01" end="{{dateEnd}}" bindchange="bindDateChange"> | |||||
<input wx:if="{{dateFlag==1}}" class='input' placeholder='请选择' disabled /> | |||||
<view wx:if="{{dateFlag==2}}" class="input">{{date}}</view> | |||||
</picker> | |||||
<image class="next" src="/assets/images/next.png"></image> | |||||
</view> | |||||
</view> | |||||
<view class="itemTextarea"> | |||||
<text>求职内容<text class="red">*</text></text> | |||||
<view class="right"> | |||||
<textarea name='content' class="textarea" placeholder="请输入求职内容" value='{{content}}' /> | |||||
</view> | |||||
</view> | |||||
<view class="item"> | |||||
<text>上传附件</text> | |||||
<view class="right"> | |||||
<button class="upload" type="primary" bindtap="uploadFile">上传</button> | |||||
</view> | |||||
</view> | |||||
<view class="item" wx:if="{{fileName}}"> | |||||
<text>上传成功</text> | |||||
<view class="right"> | |||||
<input class="phone_disabled" value='{{fileName}}' disabled /> | |||||
<button class="upload multi" type="warn" bindtap="cancelUpload">删除</button> | |||||
</view> | |||||
</view> | |||||
<button class="submit" type="primary" form-type='submit'>提交</button> | |||||
</form> | |||||
</view> | |||||
</view> |
@@ -0,0 +1,122 @@ | |||||
@import "../../app.wxss"; | |||||
.container { | |||||
margin-top: 210rpx; | |||||
padding: 0 40rpx 0 40rpx; | |||||
} | |||||
.next { | |||||
float: right; | |||||
width: 35rpx; | |||||
height: 35rpx; | |||||
margin-left: 5rpx; | |||||
} | |||||
.avatar { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
margin-bottom: 50rpx; | |||||
} | |||||
.right { | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.avatarBtn { | |||||
width: 100rpx; | |||||
height: 100rpx; | |||||
border: 1px #b6b6b6 solid; | |||||
border-radius: 50%; | |||||
margin: 0; | |||||
padding: 0; | |||||
} | |||||
.avatarCover { | |||||
width: 100%; | |||||
height: 100%; | |||||
} | |||||
.item { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
height: 35rpx; | |||||
margin-bottom: 40rpx; | |||||
padding-bottom: 20rpx; | |||||
border-bottom: solid 1px #dddddd; | |||||
} | |||||
.itemTextarea { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: flex-start; | |||||
height: 290rpx; | |||||
margin-bottom: 40rpx; | |||||
padding-bottom: 20rpx; | |||||
border-bottom: solid 1px #dddddd; | |||||
} | |||||
.item .red { | |||||
color: red; | |||||
} | |||||
.itemTextarea .red { | |||||
color: red; | |||||
} | |||||
.itemAdress { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
margin-bottom: 40rpx; | |||||
padding-bottom: 20rpx; | |||||
border-bottom: solid 1px #dddddd; | |||||
} | |||||
.input { | |||||
text-align: right; | |||||
padding-left: 20rpx; | |||||
width: 400rpx; | |||||
overflow: hidden; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
} | |||||
.phone_disabled { | |||||
text-align: right; | |||||
padding-left: 20rpx; | |||||
width: 400rpx; | |||||
color: #888888; | |||||
overflow: hidden; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; | |||||
} | |||||
.textarea { | |||||
display: inline-block; | |||||
text-align: right; | |||||
padding-left: 20rpx; | |||||
width: 455rpx; | |||||
/* overflow: hidden; | |||||
white-space: nowrap; | |||||
text-overflow: ellipsis; */ | |||||
} | |||||
.upload { | |||||
font-size: 22rpx; | |||||
padding: 0 25rpx; | |||||
} | |||||
.upload.multi { | |||||
margin-left: 20rpx; | |||||
} | |||||
.greyFont { | |||||
color: #888888; | |||||
} | |||||
.submit { | |||||
margin-top: 50rpx; | |||||
} |
@@ -35,7 +35,7 @@ | |||||
}, | }, | ||||
"compileType": "miniprogram", | "compileType": "miniprogram", | ||||
"libVersion": "2.11.2", | "libVersion": "2.11.2", | ||||
"appid": "wx453ae0d37f3550d0", | |||||
"appid": "wxfa336cad86ed598d", | |||||
"projectname": "C", | "projectname": "C", | ||||
"simulatorType": "wechat", | "simulatorType": "wechat", | ||||
"simulatorPluginLibVersion": {}, | "simulatorPluginLibVersion": {}, | ||||