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

View File

@ -8,23 +8,33 @@ import router from './router'
Vue.prototype.host = 'https://ypzy.emingren.com'
Vue.prototype.HOME = '/api'
// 添加请求拦截器具
axios.interceptors.request.use(config => {
if (config.url!="/api/api/user/login-by-Phone"&&config.url!="/api/api/common/send-sms-captcha") {
if (!localStorage.userData) {
router.replace('/login');
return config
}else{
config.headers.Authorization = "Bearer "+JSON.parse(localStorage.userData).token
}
}
return config
if (config.url != "/api/api/user/login-by-Phone" && config.url != "/api/api/common/send-sms-captcha") {
if (!localStorage.userData) {
router.replace('/login');
return config
} else {
config.headers.Authorization = "Bearer " + JSON.parse(localStorage.userData).token
}
}
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)
new Vue({
router,
render: h => h(App)
router,
render: h => h(App)
}).$mount('#app')

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

@ -62,6 +62,7 @@
created() {
this.isScroll = true;
window.addEventListener("scroll", this.eventScrollTop);
this.phoneData = this.$route.query.phone
const TIME_COUNT = 60;
if (!this.timer) {
@ -100,10 +101,15 @@
sms_code: this.value,
})
.then(function(res) {
console.log(res.data,252525)
localStorage.userData = JSON.stringify(res.data.data);
if (res.data.code == 0) {
that.getUserData();
that.goPages();
if(res.data.data.userType == 1){
that.$router.push('/consultant');
}else{
that.$router.push('/index');
}
} else {
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() {
this.$emit("input", this.value);
},

View File

@ -13,6 +13,12 @@
</div>
</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>
</template>
@ -23,6 +29,8 @@
return {
isScrollTop: false,
content: "",
isToast: false,
toastText: ''
};
},
created() {
@ -34,6 +42,11 @@
methods: {
btnFeedback() {
if (this.content == "") {
this.toastText = '反馈内容不能为空',
this.isToast = true,
setTimeout(()=> {
this.isToast = false
}, 1000)
return;
}
this.axios
@ -43,10 +56,15 @@
},
)
.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) {
console.log(error);
.catch(function(err) {
window.alert(err.data.msg)
});
},
//

View File

@ -24,6 +24,11 @@
</ul>
</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>
</template>
@ -35,7 +40,9 @@
isScrollTop: false,
myAvatar: '',
nickName:'',
userDataAll:[]
userDataAll:[],
isToast:false,
toastText:''
};
},
created() {
@ -81,8 +88,12 @@
})
.then(function(res) {
that.getUserData();
that.$router.push('/ucenter');
console.log(res)
that.toastText = res.data.msg,
that.isToast = true,
setTimeout(()=> {
that.isToast = false;
that.$router.push('/ucenter');
}, 1000)
});
},

View File

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

View File

@ -18,15 +18,15 @@
</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" />
<div class="receive-txt">
<span class="use-btn" v-if="isReceive == 1">使</span>
<span class="receive-btn" v-if="isReceive == 0"></span>
<p>有效期2022.2.1-2022.2.15</p>
<span class="use-btn" v-if="consult_amount == 1">使</span>
<span class="receive-btn" v-if="consult_amount == 0"></span>
<p v-if="consult_amount == 1">{{startTime}}-{{endTime}}</p>
</div>
</div>
<div class="line" v-if="isReceive == 1"></div>
<div class="line" v-if="consult_amount == 1"></div>
<ul class="student-information">
<li v-if="userData.mobile">
<span><img src="../../../assets/images/user/icon-phone.png" /></span>
@ -57,7 +57,7 @@
<p>我的报告</p>
<img src="../../../assets/images/home/expert/arrow-right.png" alt="" />
</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)">
<p>{{item.title}}</p>
<span>{{item.done_at}}</span>
@ -80,9 +80,10 @@
centerUserData: {
mobile: "",
},
isExpire: false, //
consult_amount: 0,
reportData: [],
isScrollTop: false,
isReceive: 1, //
isUse: 0, //使
isOpen: false,
userData: {
@ -108,6 +109,9 @@
update_time: "",
user_code: "",
},
student_first_complete:'' ,//
startTime: '', //
endTime: '', //
};
},
created() {
@ -115,8 +119,13 @@
window.addEventListener("scroll", this.eventScrollTop);
this.getUserData();
this.getevaluationList()
this.consult_amount = (JSON.parse(localStorage.getItem("centerUserData"))).consult_amount;
},
mounted() {
this.getDate();
},
methods: {
//
getevaluationList() {
let that = this
@ -132,9 +141,9 @@
//
toPage() {
if (this.isReceive == 1) {
if (this.consult_amount == 1) {
this.$router.push("/expert");
} else if (this.isReceive == 0) {
} else if (this.consult_amount == 0) {
this.$router.push("/information");
} else {
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(){
localStorage.clear();