You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

267 lines
8.2 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<template>
<view class="page" v-if="showPage">
<view class="pageMain">
<view class="padding-top-10 flex align-center border-bottom-ed">
<view class="text-30 text-bold">姓名</view>
<view class="flex-one margin-left-30">
<input placeholder="请填写" placeholder-class="text-aa" v-model="userNmae" maxlength="8"
class="width-100p text-right text-30 line-height-100" />
</view>
</view>
<view class="padding-top-40 ">
<view class="text-30 text-bold margin-bottom-25">
一句话简介
</view>
<view class="areaBox">
<textarea placeholder="请输入您擅长的专业方向、建筑类型、主要成就" placeholder-class="text-aa"
class="text-26 line-40 introBox" maxlength="200" v-model="brief" /></textarea>
</view>
</view>
<view class="padding-top-40 ">
<view class="text-30 text-bold margin-bottom-20">
专家介绍
</view>
<view class="areaBox">
<textarea placeholder="请输入学历、就职单位、工作年限等描述" placeholder-class="text-aa"
class="text-26 line-40 introBox" v-model="intro" maxlength="500"></textarea>
</view>
</view>
<view class="margin-top-10 border-bottom-ed flex align-center">
<view class="text-30 text-bold">
分类
</view>
<view class="flex-one margin-let-30">
<picker :range="cates" range-key="name" :value="cateIndex" @change="changeCate" class="width-100p">
<view class="flex line-height-100 align-center justify-end">
<view class="text-30" :class="cateIndex == null ? 'text-aa' : ''">
{{cateIndex == null ? '请选择分类' : cates[cateIndex].name}}
</view>
<view class="tyIcon-huaban text-aa text-24 margin-left-5"></view>
</view>
</picker>
</view>
</view>
<view class="padding-top-40 ">
<view class="line-40 margin-bottom-15">
<text class="text-30 text-33 text-bold">身份证照片</text>
<text class="text-24 text-aa">(正面)</text>
</view>
<view class="margin-bottom-25">
<ty-image-images-upload :count="1" :video-count="0" @imageChange="idCard1Change"
:image_list="idCard1"></ty-image-images-upload>
</view>
<view class="line-40 margin-bottom-15">
<text class="text-30 text-33 text-bold">身份证照片</text>
<text class="text-24 text-aa">(反面)</text>
</view>
<view class="margin-bottom-25">
<ty-image-images-upload :count="1" :video-count="0" @imageChange="idCard2Change"
:image_list="idCard2"></ty-image-images-upload>
</view>
<view class="line-40 margin-bottom-15">
<text class="text-30 text-33 text-bold">资质证书</text>
<text class="text-24 text-aa">最多5个</text>
</view>
<view class="margin-bottom-25">
<ty-image-images-upload :count="5" :video-count="0" @imageChange="qualityImgsChange"
:image_list="qualityImgs"></ty-image-images-upload>
</view>
<view class="line-40 margin-bottom-25">
<text class="text-30 text-33 text-bold">主要业绩</text>
</view>
<view class="width-100p areaBox">
<textarea placeholder="请输入" placeholder-class="text-aa" class="text-26 line-40 introBox"
v-model="achievement" maxlength="500" /></textarea>
</view>
</view>
<view class="margin-top-10 border-bottom-ed flex align-center">
<view class="text-30 text-bold">在线咨询收费金额(元)</view>
<view class="flex-one margin-left-30">
<input class="width-100p text-right line-height-100 text-30" type="digit" placeholder="请输入"
placeholder-class="text-aa" v-model="price" />
</view>
</view>
<view class="margin-top-40">
<view class="flex align-center text-77 margin-bottom-10">
<view class="icon-icon-tishi iconfont text-28 margin-right-5"></view>
<view class="text-26 text-bold">入驻说明</view>
</view>
<view class="text-26 text-77 ">
{{notice}}
</view>
</view>
<view class="margin-top-130 flex align-center justify-center" @click="isAgree = !isAgree">
<view class="tyIcon-xuanzhong1 text-2f9 text-30 margin-right-10" v-if="isAgree"></view>
<view class="tyIcon-quan text-cc text-30 margin-right-10" v-else></view>
<view class="text-24 text-98">我已阅读、理解并同意遵守</view>
<view class="text-24 text-4b8" @click.stop="go('/pages/member/settleAgreement?type=1')">《入驻协议》</view>
</view>
</view>
<view class="bottomBox">
<view class="bg-2f9 line-height-100 radius-50 text-center text-fe text-32 text-bold" @click="tapSub">
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
userNmae: '',
brief: '', //简介
intro: '', //专家介绍
cates: [],
cateIndex: null,
idCard1: [], //身份证正面
idCard2: [], //身份证反面
qualityImgs: [], //资质证书
achievement: '', //业绩
price: '', //金额
isAgree:false,
notice:'',//入驻说明
showPage:false,
}
},
onLoad(options) {
this.getPageData()
},
methods: {
getPageData(){
this.rq.getData('fire/api/Fire/getExpertJoinData').then(res=>{
this.cates = res.data.category;
this.notice = res.data.join_explain;
if(res.data.expert_data){
this.userNmae = res.data.expert_data.name;
this.brief = res.data.expert_data.brief;
this.intro = res.data.expert_data.introduce;
this.cates.forEach((item,index)=>{
if(item.id == res.data.expert_data.category_id){
this.cateIndex = index
}
})
this.idCard1.push(res.data.expert_data.id_front_img);
this.idCard2.push(res.data.expert_data.id_back_img);
this.qualityImgs = res.data.expert_data.certificate_img;
this.achievement = res.data.expert_data.achievement;
this.price = res.data.expert_data.price;
}
this.showPage = true;
})
},
changeCate(e) {
this.cateIndex = e.detail.value;
},
idCard1Change(e) {
this.idCard1 = e.image_list;
},
idCard2Change(e) {
this.idCard2 = e.image_list;
},
qualityImgsChange(e) {
this.qualityImgs = e.image_list;
},
tapSub(){
if(this.userNmae == ''){
this.cn.alert('请填写姓名');
return;
}
if(this.brief == ''){
this.cn.alert('请填写简介');
return;
}
if(this.intro == ''){
this.cn.alert('请填写介绍');
return;
}
if(this.cateIndex == null){
this.cn.alert('请选择分类');
return;
}
if(this.idCard1.length == 0){
this.cn.alert('请上传身份证正面');
return;
}
if(this.idCard2.length == 0){
this.cn.alert('请上传身份证反面');
return;
}
if(this.price == ''){
this.cn.alert('请填写收费金额');
return;
}
if(this.price <= 0){
this.cn.alert('收费金额应大于0');
return;
}
var regPrice = /^([0-9]|[1-9]\d+)(\.\d{1,2})?$/;
if(!regPrice.test(this.price)){
this.cn.alert('收费金额格式不正确');
return;
}
if(!this.isAgree){
this.cn.alert('请阅读、理解并同意遵守《入驻协议》');
return;
}
this.rq.getData('fire/api/Fire/submitExpertJoin',{
name :this.userNmae,
brief : this.brief,
introduce :this.intro,
category_id : this.cates[this.cateIndex].id,
id_front_img : this.idCard1.join(','),
id_back_img : this.idCard2.join(','),
price : this.price,
certificate_img : this.qualityImgs,
achievement: this.achievement
}).then(res=>{
if(res.code == 0){
this.cn.alert('提交成功,请等待平台审核').then(()=>{
uni.redirectTo({
url:'/pages/expertCenter/index'
})
})
}
})
}
}
}
</script>
<style scoped>
.pageMain {
width: 100vw;
min-height: 100vh;
background: #fff;
padding-bottom: calc(150rpx + env(safe-area-inset-bottom));
padding-left: 30rpx;
padding-right: 30rpx;
box-sizing: border-box;
}
.introBox {
width: 100%;
height: 100%;
}
.areaBox{
width: 100%;
padding: 20rpx 25rpx;
box-sizing: border-box;
border-radius: 10rpx;
border: 1rpx solid #DDDDDD;
height: 200rpx;
}
.bottomBox {
width: 100vw;
background: #fff;
position: fixed;
left: 0;
bottom: 0;
padding: 10rpx 30rpx calc(10rpx + env(safe-area-inset-bottom));
box-sizing: border-box;
}
</style>