<template> <view style="padding-bottom: 100px"> <view class="dtop"> <view class="title">{{ item.title || '' }}</view> <view class="price" v-if="item.type == 0">{{ item.salary == '面议' ? item.salary : item.salary + '/月' }}</view> <view class="price" v-if="item.type == 1">{{ item.salary }}¥</view> <view class="desc" v-if="item.title"> <text v-if="item.type == 0">{{ item.experience == '不限' ? '经验不限' : item.experience + '经验' }}</text> <text>{{ item.positionName || '' }}</text> <text>{{ item.type == 0 ? '全职' : '完工结算' }}</text> <view class="audit"> <text class="icon"></text> <text>已审核</text> </view> </view> </view> <view class="mbos"> <view class="ms" style="margin-top: 0px"> <view v-if="item.type == 1"> <view class="mtitle">兼职时间</view> <view class="desc mb15">{{ item.startDate }}至{{ item.endDate }},共计:{{ item.days }}天</view> <view class="mtitle">兼职地点</view> <view class="desc mb15">{{ item.address || '工作地点不限' }}</view> <view class="mtitle">结算方式</view> <view class="desc mb15">在规定时间内完工结算(平台打款)</view> </view> <view class="mtitle">{{ item.type == 0 ? '职位描述' : '兼职描述' }}</view> <u-parse :content="item.contents" class="item"></u-parse> <map :latitude="item.latitude" :longitude="item.longitude" :markers="covers" v-if="item.latitude && item.type == 1"></map> </view> <!--企业信息--> <view v-if="item.type == 0"> <view class="ms" @click="go('/pages/job/enterprise/detail?id=' + enterprise.id)"> <view class="icon gs"></view> <view class="con"> <view class="mti omit">{{ enterprise.name }}</view> <view class="address omit">{{ enterprise.address }}</view> </view> <text class="icon more"></text> </view> <map :latitude="item.latitude" :longitude="item.longitude" :markers="covers"></map> </view> </view> <view class="bz pl5"> <text class="icon"></text> <text>如有疑问或者需要帮助请联系我们客服</text> <button class="contact" open-type="contact"> <text class="icon"></text> <text>点我沟通</text> </button> </view> <view class="mfooter"> <view class="cn"> <button class="tob share" open-type="share"> <text class="icon"></text> <view class="mtt">分享</view> </button> <view class="tob" @click="add()" :class="{ active: flag }"> <text class="icon"></text> <view class="mtt">收藏</view> </view> <button class="btn" @click="send()"> <text class="icon"></text> <text>{{ item.type == 0 ? '投递简历' : '立即报名' }}</text> </button> </view> </view> <u-popup :show="show" round="15" mode="center" :closeable="true" :closeOnClickOverlay="false" :customStyle="{ width: '85%' }" @close="show = false"> <view class="popup"> <view class="xy mt10 mb15"> <u-checkbox-group class="checkbox" v-model="item.checked"> <u-checkbox size="15" shape="circle" label="我已阅读并同意" labelSize="14" name="true"></u-checkbox> </u-checkbox-group> <text class="a" @click="go('/pages/other/agreement?title=兼职协议')">《兼职协议》</text> </view> <button class="btn" @click="ok()">确定</button> </view> </u-popup> </view> </template> <script> export default { data() { return { item: {}, enterprise: {}, covers: [], flag: false, show: false }; }, onLoad(e) { this.http.request({ url: '/app/position/detail/' + e.id, success: (res) => { this.item = res.data.data.position; this.enterprise = res.data.data.enterprise; this.covers.push({ latitude: this.item.latitude, longitude: this.item.longitude }); this.item.days = this.util.days(this.item.startDate, this.item.endDate); } }); }, methods: { go(url) { uni.navigateTo({ url: url }); }, //收藏职位 add() { this.http.request({ url: '/app/favorite/add/' + this.item.id, success: (res) => { uni.showToast({ title: '收藏成功' }); this.flag = true; } }); }, //投递简历 send() { if (this.item.type == 1) { this.show = true; } else { this.ok(); } }, ok() { if (this.item.type == 1) { let rule = [{ name: 'checked', checkType: 'notnull', errorMsg: '请同意并勾选协议' }]; if (!this.verify.check(this.item, rule)) { uni.showModal({ content: this.verify.error, showCancel: false }); return false; } } this.show = false; this.http.request({ url: '/app/deliver/send/' + this.item.id, success: (res) => { //实名认证跳转 if (res.data.code == 7878) { uni.showModal({ title: '提示', content: res.data.msg, showCancel: false, success: (res) => { uni.navigateTo({ url: '/pages/user/auth' }); } }); return; } //完善简历跳转 if (res.data.code == 7979) { uni.showModal({ title: '提示', content: res.data.msg, showCancel: false, success: (res) => { uni.navigateTo({ url: '/pages/user/resume/index' }); } }); return; } let tmplIds = []; if (this.item.type == 0) { tmplIds = ['ll-qdaEgbDN4rEod0nJpsjUuSqHT9e12EniZfRPiNqM']; } if (this.item.type == 1) { tmplIds = ['yhFtY-hzXerPnIxXcYcRCAjQUf8CdLoYEQQi5nBgim0', '87jYTnpeZJnvdQ6gHcscZ96eQYlSXpfGeFU3g9deTeA']; } //通知模板订阅消息 uni.requestSubscribeMessage({ tmplIds: tmplIds, complete: (c) => { uni.showModal({ content: this.item.type == 0 ? '投递成功,等待企业回应' : '报名成功,等待雇主审核', showCancel: false }); } }); } }); } }, onShareAppMessage(res) { return { title: this.item.title, path: '/pages/job/detail?id=' + this.item.id, success: (res) => {}, fail: (res) => {} }; } }; </script> <style lang="scss"> .mfooter { background-color: white; bottom: 0px; border-top: 1px solid $line; .cn { padding: 10px 10px 15px 10px; overflow: hidden; .tob { margin-right: 15px; float: left; color: $font-c; &.active { color: $main-color; } .icon { font-size: 28px; } .mtt { font-size: 14px; } } .share { background-color: white; line-height: 22px; padding-top: 3px; } .btn { float: right; margin-top: 5px; } } } </style>