h5端完成

master
Lee-1203 2022-03-07 19:31:43 +08:00
parent 1d674009d2
commit 519f4a8687
12 changed files with 853 additions and 840 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@ -6,7 +6,18 @@
<style> <style>
/* 引入字体 */ /* 引入字体 */
@font-face {
font-family: 'PingFangSC';
src: url('./assets/css/common/PingFangSC-Semibold.otf');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Fzcs-Gbk';
src: url('./assets/css/common/Fzcs-Gbk.ttf');
font-weight: normal;
font-style: normal;
}
*{ *{
margin: 0; margin: 0;
padding: 0; padding: 0;
@ -911,16 +922,17 @@ textarea {
/* 弹窗 */ /* 弹窗 */
.my-confirm-bg{ .my-confirm-bg{
width: 100%; width: 100vw;
height: 100%; height: 100%;
background-color: rgba(0,0,0,.5); background-color: rgba(0,0,0,.5);
position: fixed; position: fixed;
top: 0; top: 0;
left: 0;
z-index: 998; z-index: 998;
} }
.my-confirm{ .my-confirm{
width: 5rem; width: 4rem;
padding: .4rem .5rem; padding: .4rem .3rem;
background-color: #FFFFFF; background-color: #FFFFFF;
border-radius: .3rem; border-radius: .3rem;
box-shadow: 0 0 .13rem rgba(29,47,67,.1); box-shadow: 0 0 .13rem rgba(29,47,67,.1);
@ -933,25 +945,26 @@ textarea {
.my-confirm>p{ .my-confirm>p{
font-size: .28rem; font-size: .28rem;
line-height: 1.5; line-height: 1.5;
text-align: justify; text-align: center;
} }
.confirm-btns{ .confirm-btns{
display: flex; display: flex;
justify-content: center; justify-content: space-between;
margin-top: .4rem; margin-top: .4rem;
} }
.confirm-btns>span{ .confirm-btns>span{
width: 1.4rem; width: 1.6rem;
line-height: .5rem; line-height: .5rem;
border-radius: .25rem; border-radius: .25rem;
background-color: #333fc9; border: .02rem solid #333fc9;
background-color: #FFFFFF;
font-size: .26rem; font-size: .26rem;
color: #FFFFFF; color: #333fc9;
text-align: center; text-align: center;
margin: 0 .15rem;
} }
.confirm-btns>span:first-child{ .confirm-btns>span:first-child{
background-color: #ff7716; background-color: #333fc9;
color: #FFFFFF;
} }
/* 咨询师详情页 */ /* 咨询师详情页 */
@ -1684,6 +1697,7 @@ textarea::-webkit-input-placeholder{
height: 0; height: 0;
padding: 0 .3rem; padding: 0 .3rem;
background-color: #FFFFFF; background-color: #FFFFFF;
margin-top: .02rem;
margin-bottom: .48rem; margin-bottom: .48rem;
overflow: hidden; overflow: hidden;
} }
@ -1693,6 +1707,12 @@ textarea::-webkit-input-placeholder{
align-items: center; align-items: center;
height: .7rem; height: .7rem;
} }
.report-list>li:first-child{
margin-top: .15rem;
}
.report-list>li:last-child{
margin-bottom: .15rem;
}
.report-list>li p{ .report-list>li p{
width: calc(100% - 2.2rem); width: calc(100% - 2.2rem);
font-size: .28rem; font-size: .28rem;
@ -1707,8 +1727,6 @@ textarea::-webkit-input-placeholder{
color: #999999; color: #999999;
} }
.report-list.open{ .report-list.open{
margin-top: .02rem;
padding: .15rem .3rem;
height: auto; height: auto;
} }
.feedback-btn{ .feedback-btn{
@ -2231,7 +2249,9 @@ textarea::-webkit-input-placeholder{
.edit-btn{ .edit-btn{
width: 1.5rem; width: 1.5rem;
height: .6rem; height: .6rem;
border: .02rem solid #3844ce;
background-color: #3844ce; background-color: #3844ce;
color: #FFFFFF;
font-size: .3rem; font-size: .3rem;
line-height: .6rem; line-height: .6rem;
border-radius: .1rem; border-radius: .1rem;
@ -2250,6 +2270,10 @@ textarea::-webkit-input-placeholder{
top: 0; top: 0;
z-index: 1; z-index: 1;
} }
.edit-btn-other{
background-color: #FFFFFF;
color: #3844ce;
}
.personal-item .left{ .personal-item .left{
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;
@ -2338,4 +2362,23 @@ textarea::-webkit-input-placeholder{
.bottom-box{ .bottom-box{
margin-bottom: 1.3rem; margin-bottom: 1.3rem;
} }
/* 提示框 */
.toast{
width: 3rem;
padding: .2rem .25rem;
background-color: rgba(255,255,255,.8);
color: #333333;
border-radius: .1rem;
font-size: .28rem;
line-height: 1.4;
text-align: center;
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
z-index: 999;
}
</style> </style>

View File

@ -8,21 +8,31 @@ import router from './router'
Vue.prototype.host = 'https://ypzy.emingren.com' Vue.prototype.host = 'https://ypzy.emingren.com'
Vue.prototype.HOME = '/api' Vue.prototype.HOME = '/api'
// 添加请求拦截器具
axios.interceptors.request.use(config => { axios.interceptors.request.use(config => {
if (config.url!="/api/api/user/login-by-Phone"&&config.url!="/api/api/common/send-sms-captcha") { if (config.url != "/api/api/user/login-by-Phone" && config.url != "/api/api/common/send-sms-captcha") {
if (!localStorage.userData) { if (!localStorage.userData) {
router.replace('/login'); router.replace('/login');
return config return config
}else{ } else {
config.headers.Authorization = "Bearer "+JSON.parse(localStorage.userData).token config.headers.Authorization = "Bearer " + JSON.parse(localStorage.userData).token
} }
} }
return config return config
}) })
// 添加响应拦截器
// axios.interceptors.response.use(response => {
// // console.log(response);
// let res = {}
// res.status = response.status
// res.data = response.data
// return res;
// }, function(err) {
// return Promise.reject(err)
// });
Vue.use(VueAxios, axios) Vue.use(VueAxios, axios)
new Vue({ new Vue({
router, router,

View File

@ -24,9 +24,7 @@
<div class="personal-photo"> <div class="personal-photo">
<img v-if="myAvatar" :src="host + myAvatar" /> <img v-if="myAvatar" :src="host + myAvatar" />
<img v-else-if="handImg" :src="host + handImg" /> <img v-else-if="handImg" :src="host + handImg" />
<span v-else <span v-else>使16:17400425</span>
>上传图片的区域照片必须使用固定的宽高比16:17比如宽400像素高425像素或其它同等比例</span
>
</div> </div>
<div class="edit-btn"> <div class="edit-btn">
<input class="inputB" @change="imgIny($event)" type="file" /> <input class="inputB" @change="imgIny($event)" type="file" />
@ -40,12 +38,13 @@
<div class="left"> <div class="left">
<div class="personal-txt"> <div class="personal-txt">
<!-- 文本显示 --> <!-- 文本显示 -->
<!-- <span>硕士</span> --> <span v-if="noClick1" @click="noClick1=!noClick1">{{Characteristics[0]}}</span>
<!-- 输入框 --> <!-- 输入框 -->
<input v-model="Characteristics[0]" class="personal-input" /> <input v-else v-model="Characteristics[0]" class="personal-input" />
</div> </div>
<!-- 按钮事件 --> <!-- 按钮事件 -->
<div @click="CharacteristicsFun()" class="edit-btn">确认</div> <div v-if="noClick1" @click="noClick1=!noClick1" class="edit-btn edit-btn-other"></div>
<div v-else @click="CharacteristicsFun(1)" class="edit-btn">确认</div>
</div> </div>
</div> </div>
<div class="personal-item"> <div class="personal-item">
@ -53,12 +52,13 @@
<div class="left"> <div class="left">
<div class="personal-txt"> <div class="personal-txt">
<!-- 文本显示 --> <!-- 文本显示 -->
<!-- <span>硕士</span> --> <span v-if="noClick2" @click="noClick2=!noClick2">{{Characteristics[1]}}</span>
<!-- 输入框 --> <!-- 输入框 -->
<input v-model="Characteristics[1]" class="personal-input" /> <input v-else v-model="Characteristics[1]" class="personal-input" />
</div> </div>
<!-- 按钮事件 --> <!-- 按钮事件 -->
<div @click="CharacteristicsFun()" class="edit-btn">确认</div> <div v-if="noClick2" @click="noClick2=!noClick2" class="edit-btn edit-btn-other"></div>
<div v-else @click="CharacteristicsFun(2)" class="edit-btn">确认</div>
</div> </div>
</div> </div>
<div class="personal-item"> <div class="personal-item">
@ -66,12 +66,13 @@
<div class="left"> <div class="left">
<div class="personal-txt"> <div class="personal-txt">
<!-- 文本显示 --> <!-- 文本显示 -->
<!-- <span>硕士</span> --> <span v-if="noClick3" @click="noClick3=!noClick3">{{Characteristics[3]}}</span>
<!-- 输入框 --> <!-- 输入框 -->
<input v-model="Characteristics[2]" class="personal-input" /> <input v-else v-model="Characteristics[2]" class="personal-input" />
</div> </div>
<!-- 按钮事件 --> <!-- 按钮事件 -->
<div @click="CharacteristicsFun()" class="edit-btn">确认</div> <div v-if="noClick3" @click="noClick3=!noClick3" class="edit-btn edit-btn-other"></div>
<div v-else @click="CharacteristicsFun(3)" class="edit-btn">确认</div>
</div> </div>
</div> </div>
<div class="personal-item"> <div class="personal-item">
@ -79,12 +80,13 @@
<div class="left"> <div class="left">
<div class="personal-txt"> <div class="personal-txt">
<!-- 文本显示 --> <!-- 文本显示 -->
<!-- <span>硕士</span> --> <span v-if="noClick4" @click="noClick4=!noClick4">{{Characteristics[3]}}</span>
<!-- 输入框 --> <!-- 输入框 -->
<input v-model="Characteristics[3]" class="personal-input" /> <input v-else v-model="Characteristics[3]" class="personal-input" />
</div> </div>
<!-- 按钮事件 --> <!-- 按钮事件 -->
<div @click="CharacteristicsFun()" class="edit-btn">确认</div> <div v-if="noClick4" @click="noClick4=!noClick4" class="edit-btn edit-btn-other"></div>
<div v-else @click="CharacteristicsFun(4)" class="edit-btn">确认</div>
</div> </div>
</div> </div>
<!-- 服务口号 --> <!-- 服务口号 -->
@ -92,11 +94,8 @@
<p>服务口号</p> <p>服务口号</p>
<div class="personal-txt"> <div class="personal-txt">
<div class="personal-top"> <div class="personal-top">
<textarea <!-- 输入框 -->
class="kh-input" <textarea class="kh-input" v-model="sloganData" placeholder="请输入服务口号"></textarea>
v-model="sloganData"
placeholder="请输入服务口号"
></textarea>
</div> </div>
<div @click="sloganDataFun()" class="edit-btn">确认</div> <div @click="sloganDataFun()" class="edit-btn">确认</div>
</div> </div>
@ -106,10 +105,8 @@
<p>个人简介</p> <p>个人简介</p>
<div class="personal-txt"> <div class="personal-txt">
<div class="personal-top"> <div class="personal-top">
<textarea <!-- 输入框 -->
v-model="bodyData" <textarea v-model="bodyData" placeholder="介绍您最闪光点不要少于200字不要多于300字"></textarea>
placeholder="介绍您最闪光点不要少于200字不要多于300字"
></textarea>
</div> </div>
<div @click="bodyDataFun()" class="edit-btn">确认</div> <div @click="bodyDataFun()" class="edit-btn">确认</div>
</div> </div>
@ -119,10 +116,7 @@
<p>服务范围补充说明</p> <p>服务范围补充说明</p>
<div class="personal-txt"> <div class="personal-txt">
<div class="personal-top"> <div class="personal-top">
<textarea <textarea v-model="explainData" placeholder="请填写补充说明"></textarea>
v-model="explainData"
placeholder="请填写补充说明"
></textarea>
</div> </div>
<div @click="explainDataFun()" class="edit-btn">确认</div> <div @click="explainDataFun()" class="edit-btn">确认</div>
</div> </div>
@ -134,30 +128,15 @@
<div class="personal-txt"> <div class="personal-txt">
<div class="city-item"> <div class="city-item">
<div>重点服务省域1</div> <div>重点服务省域1</div>
<input <input type="text" v-model="addRess[0].name" readonly="readonly" @click="openCity1()" />
type="text"
v-model="addRess[0].name"
readonly="readonly"
@click="openCity1()"
/>
</div> </div>
<div class="city-item"> <div class="city-item">
<div>重点服务省域2</div> <div>重点服务省域2</div>
<input <input type="text" v-model="addRess[1].name" readonly="readonly" @click="openCity2()" />
type="text"
v-model="addRess[1].name"
readonly="readonly"
@click="openCity2()"
/>
</div> </div>
<div class="city-item"> <div class="city-item">
<div>重点服务省域3</div> <div>重点服务省域3</div>
<input <input type="text" v-model="addRess[2].name" readonly="readonly" @click="openCity3()" />
type="text"
v-model="addRess[2].name"
readonly="readonly"
@click="openCity3()"
/>
</div> </div>
</div> </div>
</div> </div>
@ -167,39 +146,19 @@
<div class="personal-txt"> <div class="personal-txt">
<div class="price-item"> <div class="price-item">
<div>北京上海</div> <div>北京上海</div>
<input <input type="text" v-model="priceDataLstARR[0]" readonly="readonly" @click="openPrice1()" />
type="text"
v-model="priceDataLstARR[0]"
readonly="readonly"
@click="openPrice1()"
/>
</div> </div>
<div class="price-item"> <div class="price-item">
<div>天津重庆江苏浙江广东福建</div> <div>天津重庆江苏浙江广东福建</div>
<input <input type="text" v-model="priceDataLstARR[1]" readonly="readonly" @click="openPrice2()" />
type="text"
v-model="priceDataLstARR[1]"
readonly="readonly"
@click="openPrice2()"
/>
</div> </div>
<div class="price-item"> <div class="price-item">
<div>辽宁河北山东海南湖北湖南</div> <div>辽宁河北山东海南湖北湖南</div>
<input <input type="text" v-model="priceDataLstARR[2]" readonly="readonly" @click="openPrice3()" />
type="text"
v-model="priceDataLstARR[2]"
readonly="readonly"
@click="openPrice3()"
/>
</div> </div>
<div class="price-item"> <div class="price-item">
<div>其他省域(老高考)</div> <div>其他省域(老高考)</div>
<input <input type="text" v-model="priceDataLstARR[3]" readonly="readonly" @click="openPrice4()" />
type="text"
v-model="priceDataLstARR[3]"
readonly="readonly"
@click="openPrice4()"
/>
</div> </div>
<div @click="priceDataLstFun()" class="edit-btn">确认</div> <div @click="priceDataLstFun()" class="edit-btn">确认</div>
</div> </div>
@ -211,186 +170,109 @@
<span @click="navdetail()"></span> <span @click="navdetail()"></span>
</div> </div>
<!-- 地址弹出框1 --> <!-- 地址弹出框1 -->
<div <div class="addr-select-bg" v-show="isCity1" @click="isCity1 = !isCity1"></div>
class="addr-select-bg"
v-show="isCity1"
@click="isCity1 = !isCity1"
></div>
<div class="addr-select-item" v-show="isCity1"> <div class="addr-select-item" v-show="isCity1">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择城市</span> <span>请选择城市</span>
<span @click="isCity1 = !isCity1">取消</span> <span @click="isCity1 = !isCity1">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: addRess[0].name == item.name }" @click="getCityValue1(index, item)"
:class="{ checked: addRess[0].name == item.name }" v-for="(item, index) in provinceData" :key="index">
@click="getCityValue1(index, item)"
v-for="(item, index) in provinceData"
:key="index"
>
{{ item.name {{ item.name
}}<img }}<img v-show=" addRess[0].name == item.name " src="../../assets/images/home/expert/yes.png" />
v-show=" addRess[0].name == item.name "
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 地址弹出框2 --> <!-- 地址弹出框2 -->
<div <div class="addr-select-bg" v-show="isCity2" @click="isCity2 = !isCity2"></div>
class="addr-select-bg"
v-show="isCity2"
@click="isCity2 = !isCity2"
></div>
<div class="addr-select-item" v-show="isCity2"> <div class="addr-select-item" v-show="isCity2">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择城市</span> <span>请选择城市</span>
<span @click="isCity2 = !isCity2">取消</span> <span @click="isCity2 = !isCity2">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: addRess[1].name == item.name }" @click="getCityValue2(index, item)"
:class="{ checked: addRess[1].name == item.name }" v-for="(item, index) in provinceData" :key="index">
@click="getCityValue2(index, item)"
v-for="(item, index) in provinceData"
:key="index"
>
{{ item.name {{ item.name
}}<img }}<img v-show="addRess[1].name == item.name" src="../../assets/images/home/expert/yes.png" />
v-show="addRess[1].name == item.name"
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 地址弹出框3 --> <!-- 地址弹出框3 -->
<div <div class="addr-select-bg" v-show="isCity3" @click="isCity3 = !isCity3"></div>
class="addr-select-bg"
v-show="isCity3"
@click="isCity3 = !isCity3"
></div>
<div class="addr-select-item" v-show="isCity3"> <div class="addr-select-item" v-show="isCity3">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择城市</span> <span>请选择城市</span>
<span @click="isCity3 = !isCity3">取消</span> <span @click="isCity3 = !isCity3">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: addRess[2].name == item.name }" @click="getCityValue3(index, item)"
:class="{ checked: addRess[2].name == item.name }" v-for="(item, index) in provinceData" :key="index">
@click="getCityValue3(index, item)"
v-for="(item, index) in provinceData"
:key="index"
>
{{ item.name {{ item.name
}}<img }}<img v-show=" addRess[2].name == item.name " src="../../assets/images/home/expert/yes.png" />
v-show=" addRess[2].name == item.name "
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 价格弹出框1 --> <!-- 价格弹出框1 -->
<div <div class="addr-select-bg" v-show="isPrice1" @click="isPrice1 = !isPrice1"></div>
class="addr-select-bg"
v-show="isPrice1"
@click="isPrice1 = !isPrice1"
></div>
<div class="addr-select-item" v-show="isPrice1"> <div class="addr-select-item" v-show="isPrice1">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择价格</span> <span>请选择价格</span>
<span @click="isPrice1 = !isPrice1">取消</span> <span @click="isPrice1 = !isPrice1">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: priceDataLstARR[0] == item }" @click="getPriceValue1(index, item)"
:class="{ checked: priceDataLstARR[0] == item }" v-for="(item, index) in priceDataLst" :key="index">
@click="getPriceValue1(index, item)"
v-for="(item, index) in priceDataLst"
:key="index"
>
{{ item {{ item
}}<img }}<img v-show="priceDataLstARR[0] == item" src="../../assets/images/home/expert/yes.png" />
v-show="priceDataLstARR[0] == item"
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 价格弹出框2 --> <!-- 价格弹出框2 -->
<div <div class="addr-select-bg" v-show="isPrice2" @click="isPrice2 = !isPrice2"></div>
class="addr-select-bg"
v-show="isPrice2"
@click="isPrice2 = !isPrice2"
></div>
<div class="addr-select-item" v-show="isPrice2"> <div class="addr-select-item" v-show="isPrice2">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择价格</span> <span>请选择价格</span>
<span @click="isPrice2 = !isPrice2">取消</span> <span @click="isPrice2 = !isPrice2">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked:priceDataLstARR[1] == item }" @click="getPriceValue2(index, item)"
:class="{ checked:priceDataLstARR[1] == item }" v-for="(item, index) in priceDataLst" :key="index">
@click="getPriceValue2(index, item)"
v-for="(item, index) in priceDataLst"
:key="index"
>
{{ item {{ item
}}<img }}<img v-show="priceDataLstARR[1] == item" src="../../assets/images/home/expert/yes.png" />
v-show="priceDataLstARR[1] == item"
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 价格弹出框3 --> <!-- 价格弹出框3 -->
<div <div class="addr-select-bg" v-show="isPrice3" @click="isPrice3 = !isPrice3"></div>
class="addr-select-bg"
v-show="isPrice3"
@click="isPrice3 = !isPrice3"
></div>
<div class="addr-select-item" v-show="isPrice3"> <div class="addr-select-item" v-show="isPrice3">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择价格</span> <span>请选择价格</span>
<span @click="isPrice3 = !isPrice3">取消</span> <span @click="isPrice3 = !isPrice3">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: priceDataLstARR[2] == item }" @click="getPriceValue3(index, item)"
:class="{ checked: priceDataLstARR[2] == item }" v-for="(item, index) in priceDataLst" :key="index">
@click="getPriceValue3(index, item)"
v-for="(item, index) in priceDataLst"
:key="index"
>
{{ item {{ item
}}<img }}<img v-show=" priceDataLstARR[2] == item" src="../../assets/images/home/expert/yes.png" />
v-show=" priceDataLstARR[2] == item"
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
<!-- 价格弹出框4 --> <!-- 价格弹出框4 -->
<div <div class="addr-select-bg" v-show="isPrice4" @click="isPrice4 = !isPrice4"></div>
class="addr-select-bg"
v-show="isPrice4"
@click="isPrice4 = !isPrice4"
></div>
<div class="addr-select-item" v-show="isPrice4"> <div class="addr-select-item" v-show="isPrice4">
<div class="addr-btns"> <div class="addr-btns">
<span>请选择价格</span> <span>请选择价格</span>
<span @click="isPrice4 = !isPrice4">取消</span> <span @click="isPrice4 = !isPrice4">取消</span>
</div> </div>
<ul> <ul>
<li <li :class="{ checked: priceDataLstARR[3] == item }" @click="getPriceValue4(index, item)"
:class="{ checked: priceDataLstARR[3] == item }" v-for="(item, index) in priceDataLst" :key="index">
@click="getPriceValue4(index, item)"
v-for="(item, index) in priceDataLst"
:key="index"
>
{{ item {{ item
}}<img }}<img v-show=" priceDataLstARR[3] == item" src="../../assets/images/home/expert/yes.png" />
v-show=" priceDataLstARR[3] == item"
src="../../assets/images/home/expert/yes.png"
/>
</li> </li>
</ul> </ul>
</div> </div>
@ -398,18 +280,23 @@
</template> </template>
<script> <script>
export default { export default {
name: "edit", name: "edit",
data() { data() {
return { return {
isScrollTop: false, isScrollTop: false,
name: "",
noClick1:true, //
noClick2:true, //
noClick3:true, //
noClick4:true, //
tags_text: "", tags_text: "",
sloganData: "", sloganData: "",
Characteristics: [], Characteristics: [],
bodyData: "", bodyData: "",
explainData: "", explainData: "",
priceDataLstARR:[], priceDataLstARR: [],
editData: { editData: {
avatar: "", avatar: "",
keywords: "", keywords: "",
@ -440,26 +327,7 @@ export default {
addRess: [], addRess: [],
// //
priceDataLst: [], priceDataLst: [],
priceData: [ priceData: [],
{ title: "3980" },
{ title: "4980" },
{ title: "5980" },
{ title: "6980" },
{ title: "8980" },
{ title: "8980" },
{ title: "9980" },
{ title: "10980" },
{ title: "11980" },
{ title: "12980" },
{ title: "13980" },
{ title: "14980" },
{ title: "15980" },
{ title: "16980" },
{ title: "17980" },
{ title: "18980" },
{ title: "19980" },
{ title: "20980" },
],
isPrice1: false, // isPrice1: false, //
priceIndex1: 0, priceIndex1: 0,
priceValue1: "", // priceValue1: "", //
@ -514,7 +382,7 @@ export default {
} }
} }
console.log( this.editData.service_area_main ) console.log(this.editData.service_area_main)
this.editData.price_area_a = this.priceDataLstARR[0]; this.editData.price_area_a = this.priceDataLstARR[0];
this.editData.price_area_b = this.priceDataLstARR[1]; this.editData.price_area_b = this.priceDataLstARR[1];
this.editData.price_area_c = this.priceDataLstARR[2]; this.editData.price_area_c = this.priceDataLstARR[2];
@ -531,22 +399,35 @@ export default {
}, },
sloganDataFun() { sloganDataFun() {
this.editData.slogan = this.sloganData; this.editData.slogan = this.sloganData;
this.noClick5 = !this.noClick5;
this.editExpertInfo(); this.editExpertInfo();
}, },
CharacteristicsFun() { CharacteristicsFun(editIdex) {
console.log(this.Characteristics); console.log(this.Characteristics);
this.editData.keywords = ""; this.editData.keywords = "";
for (let index = 0; index < this.Characteristics.length; index++) { for (let index = 0; index < this.Characteristics.length; index++) {
this.editData.keywords += this.Characteristics[index] + ","; this.editData.keywords += this.Characteristics[index] + ",";
} }
this.editExpertInfo(); this.editExpertInfo();
console.log(this.editData.keywords, "123"); console.log(this.editData.keywords, "123");
if(editIdex == 1){
this.noClick1 = !this.noClick1
}else if(editIdex == 2){
this.noClick2 = !this.noClick2
}
else if(editIdex == 3){
this.noClick3 = !this.noClick3
}
else if(editIdex == 4){
this.noClick4 = !this.noClick4
}
}, },
ModifyData() { ModifyData() {
this.axios this.axios
.post(this.HOME + "/api/expert/edit-expert-info") .post(this.HOME + "/api/expert/edit-expert-info")
.then(function () {}) .then(function() {})
.catch(function (error) { .catch(function(error) {
console.log(error); console.log(error);
}); });
}, },
@ -556,7 +437,7 @@ export default {
.post(this.HOME + "/api/expert/service-price-list", { .post(this.HOME + "/api/expert/service-price-list", {
pcode: 86, pcode: 86,
}) })
.then(function (res) { .then(function(res) {
console.log(res.data.data, "------"); console.log(res.data.data, "------");
that.priceDataLst = res.data.data; that.priceDataLst = res.data.data;
}); });
@ -567,7 +448,7 @@ export default {
.post(this.HOME + "/api/area/index", { .post(this.HOME + "/api/area/index", {
pcode: 86, pcode: 86,
}) })
.then(function (res) { .then(function(res) {
console.log(res); console.log(res);
that.provinceData = res.data.data; that.provinceData = res.data.data;
console.log(that.provinceData); console.log(that.provinceData);
@ -601,12 +482,12 @@ export default {
"Content-Type": "multipart/form-data", "Content-Type": "multipart/form-data",
}, },
}) })
.then(function (res) { .then(function(res) {
that.editData.avatar = res.data.data.src; that.editData.avatar = res.data.data.src;
that.myAvatar = res.data.data.src; that.myAvatar = res.data.data.src;
that.editExpertInfo(); that.editExpertInfo();
}) })
.catch(function (error) { .catch(function(error) {
console.log(error); console.log(error);
}); });
}, },
@ -688,7 +569,7 @@ export default {
let that = this; let that = this;
this.axios this.axios
.post(this.HOME + "/api/user/center-info", {}) .post(this.HOME + "/api/user/center-info", {})
.then(function (res) { .then(function(res) {
console.log(res.data.data.expert); console.log(res.data.data.expert);
let newArray = res.data.data.expert; let newArray = res.data.data.expert;
that.id = newArray.id; that.id = newArray.id;
@ -716,10 +597,10 @@ export default {
that.Characteristics = res.data.data.expert.keywords.split(","); that.Characteristics = res.data.data.expert.keywords.split(",");
that.addressData = res.data.data.expert.service_area_main.split(","); that.addressData = res.data.data.expert.service_area_main.split(",");
that.priceDataLstARR[0]=newArray.price_area_a, that.priceDataLstARR[0] = newArray.price_area_a,
that.priceDataLstARR[1]=newArray.price_area_b, that.priceDataLstARR[1] = newArray.price_area_b,
that.priceDataLstARR[2]=newArray.price_area_c, that.priceDataLstARR[2] = newArray.price_area_c,
that.priceDataLstARR[3]=newArray.price_area_other, that.priceDataLstARR[3] = newArray.price_area_other,
that.addRess = res.data.data.expert.service_area_main_list; that.addRess = res.data.data.expert.service_area_main_list;
if (that.addRess.length < 3) { if (that.addRess.length < 3) {
@ -739,15 +620,17 @@ export default {
this.$router.push(path); this.$router.push(path);
}, },
//
editExpertInfo() { editExpertInfo() {
let that = this; let that = this;
this.axios this.axios
.post(this.HOME + "/api/expert/edit-expert-info", this.editData) .post(this.HOME + "/api/expert/edit-expert-info", this.editData)
.then(function (res) { .then(function(res) {
console.log(res); console.log(res);
that.checkExperInfo(); that.checkExperInfo();
this.$router.push('/consultant');
}) })
.catch(function (error) { .catch(function(error) {
console.log(error); console.log(error);
}); });
}, },
@ -780,7 +663,7 @@ export default {
deactivated() { deactivated() {
window.removeEventListener("scroll", this.eventScrollTop); window.removeEventListener("scroll", this.eventScrollTop);
}, },
}; };
</script> </script>
<style scoped> <style scoped>

View File

@ -256,9 +256,7 @@
</script> </script>
<style scoped> <style scoped>
.expert-list>li{ .expert-list{
} margin-top: 1.2rem;
.my-content{ }
padding-top: 1rem;
}
</style> </style>

View File

@ -150,6 +150,7 @@
this.isScroll = true; this.isScroll = true;
window.addEventListener("scroll", this.eventScrollTop); window.addEventListener("scroll", this.eventScrollTop);
this.consult_amount = (JSON.parse(localStorage.getItem("centerUserData"))).consult_amount; this.consult_amount = (JSON.parse(localStorage.getItem("centerUserData"))).consult_amount;
console.log(this.consult_amount,3636)
}, },
mounted() { mounted() {
this.getBanner(); this.getBanner();

View File

@ -70,8 +70,8 @@
<!-- 手机验证弹窗 --> <!-- 手机验证弹窗 -->
<div class="my-confirm-bg" v-show="openPhoneTips" @click="openPhoneTips = !openPhoneTips"></div> <div class="my-confirm-bg" v-show="openPhoneTips" @click="openPhoneTips = !openPhoneTips"></div>
<div class="my-confirm my-confirm2" v-show="openPhoneTips"> <div class="my-confirm my-confirm2" v-show="openPhoneTips">
<!-- <p>{{ tipsMsg }}</p> --> <p>{{ tipsMsg }}</p>
<div class="confirm-btns"> <div class="confirm-btns confirm-btns-one">
<span @click="openPhoneTips = false">确认</span> <span @click="openPhoneTips = false">确认</span>
</div> </div>
</div> </div>
@ -84,6 +84,7 @@
data() { data() {
return { return {
isScrollTop: false, isScrollTop: false,
tipsMsg: '',
mode: 1, // mode: 1, //
openAgreement: false, // openAgreement: false, //
isAgreement: true, // isAgreement: true, //
@ -128,14 +129,14 @@
// //
phoneLogin() { phoneLogin() {
let that = this; let that = this;
var reg_tel = var reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
if (this.phoneNumber == "") { if (this.phoneNumber == "") {
alert("请填写您的手机号码!"); this.openPhoneTips = true;
this.tipsMsg = '请填写您的手机号码!'
return false; return false;
} else if (!reg_tel.test(this.phoneNumber)) { } else if (!reg_tel.test(this.phoneNumber)) {
alert("请正确填写您的手机号码!"); this.openPhoneTips = true;
this.tipsMsg = '请正确填写您的手机号码!'
return false; return false;
} }
this.axios this.axios
@ -202,4 +203,7 @@
</script> </script>
<style scoped> <style scoped>
.confirm-btns-one{
justify-content: center;
}
</style> </style>

View File

@ -62,6 +62,7 @@
created() { created() {
this.isScroll = true; this.isScroll = true;
window.addEventListener("scroll", this.eventScrollTop); window.addEventListener("scroll", this.eventScrollTop);
this.phoneData = this.$route.query.phone this.phoneData = this.$route.query.phone
const TIME_COUNT = 60; const TIME_COUNT = 60;
if (!this.timer) { if (!this.timer) {
@ -100,10 +101,15 @@
sms_code: this.value, sms_code: this.value,
}) })
.then(function(res) { .then(function(res) {
console.log(res.data,252525)
localStorage.userData = JSON.stringify(res.data.data); localStorage.userData = JSON.stringify(res.data.data);
if (res.data.code == 0) { if (res.data.code == 0) {
that.getUserData(); that.getUserData();
that.goPages(); if(res.data.data.userType == 1){
that.$router.push('/consultant');
}else{
that.$router.push('/index');
}
} else { } else {
window.alert(res.msg); window.alert(res.msg);
} }
@ -113,21 +119,6 @@
}); });
}, },
//
goPages(){
this.userType = (JSON.parse(localStorage.getItem("centerUserData"))).type;
console.log(this.userType,2525)
if(this.userType == 1){
this.$router.push({
path: "/consultant",
});
}else{
this.$router.push({
path: "/index",
});
}
},
handleSubmit() { handleSubmit() {
this.$emit("input", this.value); this.$emit("input", this.value);
}, },

View File

@ -13,6 +13,12 @@
</div> </div>
</div> </div>
<div @click="btnFeedback()" class="bind-btn">提交</div> <div @click="btnFeedback()" class="bind-btn">提交</div>
<!-- 提示框 -->
<div class="addr-select-bg" v-show="isToast"></div>
<div class="toast" v-show="isToast">
<p>{{toastText}}</p>
</div>
</div> </div>
</template> </template>
@ -23,6 +29,8 @@
return { return {
isScrollTop: false, isScrollTop: false,
content: "", content: "",
isToast: false,
toastText: ''
}; };
}, },
created() { created() {
@ -34,6 +42,11 @@
methods: { methods: {
btnFeedback() { btnFeedback() {
if (this.content == "") { if (this.content == "") {
this.toastText = '反馈内容不能为空',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
return; return;
} }
this.axios this.axios
@ -43,10 +56,15 @@
}, },
) )
.then(function(res) { .then(function(res) {
window.alert(res.data.msg) this.toastText = res.data.msg,
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
this.$router.push('/ucenter');
}) })
.catch(function(error) { .catch(function(err) {
console.log(error); window.alert(err.data.msg)
}); });
}, },
// //

View File

@ -24,6 +24,11 @@
</ul> </ul>
</div> </div>
<div class="bind-btn" @click="setInfo()"></div> <div class="bind-btn" @click="setInfo()"></div>
<!-- 提示框 -->
<div class="addr-select-bg" v-show="isToast"></div>
<div class="toast" v-show="isToast">
<p>{{toastText}}</p>
</div>
</div> </div>
</template> </template>
@ -35,7 +40,9 @@
isScrollTop: false, isScrollTop: false,
myAvatar: '', myAvatar: '',
nickName:'', nickName:'',
userDataAll:[] userDataAll:[],
isToast:false,
toastText:''
}; };
}, },
created() { created() {
@ -81,8 +88,12 @@
}) })
.then(function(res) { .then(function(res) {
that.getUserData(); that.getUserData();
that.toastText = res.data.msg,
that.isToast = true,
setTimeout(()=> {
that.isToast = false;
that.$router.push('/ucenter'); that.$router.push('/ucenter');
console.log(res) }, 1000)
}); });
}, },

View File

@ -125,6 +125,12 @@
<img @click="goPage('/expert')" src="../../../assets/images/user/seekcard.png"> <img @click="goPage('/expert')" src="../../../assets/images/user/seekcard.png">
<img @click="closeEV()" src="../../../assets/images/user/close.png"> <img @click="closeEV()" src="../../../assets/images/user/close.png">
</div> </div>
<!-- 提示框 -->
<div class="addr-select-bg" v-show="isToast"></div>
<div class="toast" v-show="isToast">
<p>{{toastText}}</p>
</div>
</div> </div>
</template> </template>
@ -135,6 +141,9 @@
return { return {
isScrollTop: false, isScrollTop: false,
isToast: false, //
toastText:'', //
addrArray: [], // addrArray: [], //
addrData: [], // addrData: [], //
addrIndex: 0, addrIndex: 0,
@ -333,7 +342,11 @@
.subject_radio_group_list[0].indexOf(item) > -1) .subject_radio_group_list[0].indexOf(item) > -1)
if (limitSubid != -1 && date != -1) { if (limitSubid != -1 && date != -1) {
// idid // idid
console.log('选择科目冲突'); this.toastText = '选择科目冲突',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
} else { } else {
// idid // idid
this.subjectArray[index].isActive = !this.subjectArray[index].isActive; this.subjectArray[index].isActive = !this.subjectArray[index].isActive;
@ -355,12 +368,15 @@
this.temporaryCode.splice(existSubid, 1); this.temporaryCode.splice(existSubid, 1);
this.subjectArray[existsubIndex].isActive = false; this.subjectArray[existsubIndex].isActive = false;
} else { } else {
console.log('提示框xxxx'); this.toastText = '最多选择'+this.addrData[this.addrIndex].subject_max+'科',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
} }
} }
} else { } else {
// //
// //
this.temporaryCode = []; this.temporaryCode = [];
// //
@ -383,8 +399,18 @@
// //
setStudentInfo() { setStudentInfo() {
let that = this; let that = this;
if (that.temporaryCode.length != that.addrData[that.addrIndex].subject_max) { if(that.studentName == ''){
console.log('弹框提示,必须选择多少个科目'); this.toastText = '姓名不能为空',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
}else if (that.temporaryCode.length != that.addrData[that.addrIndex].subject_max) {
this.toastText = '必须选择'+this.addrData[this.addrIndex].subject_max+'科',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
} else { } else {
let that = this; let that = this;
this.axios this.axios

View File

@ -18,15 +18,15 @@
</div> </div>
</div> </div>
<!-- 免费咨询卡 --> <!-- 免费咨询卡 -->
<div class="user-receive" @click="toPage()" v-if="isUse == 0"> <div class="user-receive" @click="toPage()" v-if="!isExpire">
<img src="../../../assets/images/user/card.png" /> <img src="../../../assets/images/user/card.png" />
<div class="receive-txt"> <div class="receive-txt">
<span class="use-btn" v-if="isReceive == 1">使</span> <span class="use-btn" v-if="consult_amount == 1">使</span>
<span class="receive-btn" v-if="isReceive == 0"></span> <span class="receive-btn" v-if="consult_amount == 0"></span>
<p>有效期2022.2.1-2022.2.15</p> <p v-if="consult_amount == 1">{{startTime}}-{{endTime}}</p>
</div> </div>
</div> </div>
<div class="line" v-if="isReceive == 1"></div> <div class="line" v-if="consult_amount == 1"></div>
<ul class="student-information"> <ul class="student-information">
<li v-if="userData.mobile"> <li v-if="userData.mobile">
<span><img src="../../../assets/images/user/icon-phone.png" /></span> <span><img src="../../../assets/images/user/icon-phone.png" /></span>
@ -57,7 +57,7 @@
<p>我的报告</p> <p>我的报告</p>
<img src="../../../assets/images/home/expert/arrow-right.png" alt="" /> <img src="../../../assets/images/home/expert/arrow-right.png" alt="" />
</div> </div>
<ul :class="{ 'report-list': true, 'open': isOpen }"> <ul :class="{'report-list': true, 'open': isOpen}">
<li v-for="(item,index) in reportData" :key="index" @click="goReport(item.id)"> <li v-for="(item,index) in reportData" :key="index" @click="goReport(item.id)">
<p>{{item.title}}</p> <p>{{item.title}}</p>
<span>{{item.done_at}}</span> <span>{{item.done_at}}</span>
@ -80,9 +80,10 @@
centerUserData: { centerUserData: {
mobile: "", mobile: "",
}, },
isExpire: false, //
consult_amount: 0,
reportData: [], reportData: [],
isScrollTop: false, isScrollTop: false,
isReceive: 1, //
isUse: 0, //使 isUse: 0, //使
isOpen: false, isOpen: false,
userData: { userData: {
@ -108,6 +109,9 @@
update_time: "", update_time: "",
user_code: "", user_code: "",
}, },
student_first_complete:'' ,//
startTime: '', //
endTime: '', //
}; };
}, },
created() { created() {
@ -115,8 +119,13 @@
window.addEventListener("scroll", this.eventScrollTop); window.addEventListener("scroll", this.eventScrollTop);
this.getUserData(); this.getUserData();
this.getevaluationList() this.getevaluationList()
this.consult_amount = (JSON.parse(localStorage.getItem("centerUserData"))).consult_amount;
},
mounted() {
this.getDate();
}, },
methods: { methods: {
// //
getevaluationList() { getevaluationList() {
let that = this let that = this
@ -132,9 +141,9 @@
// //
toPage() { toPage() {
if (this.isReceive == 1) { if (this.consult_amount == 1) {
this.$router.push("/expert"); this.$router.push("/expert");
} else if (this.isReceive == 0) { } else if (this.consult_amount == 0) {
this.$router.push("/information"); this.$router.push("/information");
} else { } else {
return false; return false;
@ -165,6 +174,25 @@
}); });
}, },
//
getDate() {
let starTime = (JSON.parse(localStorage.getItem("centerUserData"))).student.student_first_complete;
let date = new Date(starTime.replace(/-/g, '/'));
this.startTime = date.getFullYear()+"."+(date.getMonth()+1)+"."+date.getDate(); //
let date1 = new Date(starTime.replace(/-/g, '/'));
date1.setDate(date.getDate()+7);
this.endTime = date1.getFullYear()+"."+(date1.getMonth()+1)+"."+date1.getDate(); //
//
let date2 = new Date();
if(date1.setDate(date.getDate()+7) <= date2.setDate(date.getDate())){
this.isExpire = true;
}
},
// 退 // 退
outLogin(){ outLogin(){
localStorage.clear(); localStorage.clear();