143 lines
3.1 KiB
Vue
143 lines
3.1 KiB
Vue
<template>
|
||
<view class="main">
|
||
<view class="content">
|
||
<textarea value="" placeholder="请输入评价内容" maxlength="100" v-model="evContent" />
|
||
</view>
|
||
<view class="grade">
|
||
<text>评分</text>
|
||
<uni-rate class="rate" @change='changeGrade' size="28" :value="grade"></uni-rate>
|
||
</view>
|
||
<view class="footer-btn">
|
||
<view class="btn" @click="submit()">提交</view>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
import uniRate from "@/components/uni-rate/uni-rate.vue";
|
||
import {submitEvaluate,saveHaircutComment} from '@/common/api.js';
|
||
import {callbackRequest,getStorage,alertTip,sureAlterTip} from '@/common/util.js';
|
||
export default {
|
||
components: {uniRate},
|
||
data() {
|
||
return {
|
||
type:null,//评价类型 1 订单,2 食堂,3 推荐菜 4理发 5洗车
|
||
typeId:null,//评价类型Id
|
||
spareId:'',//如果评价订单 id为食堂 , 如果评价食堂 id为订单
|
||
userInfo:getStorage('userInfo'),
|
||
evContent:'',//评价内容
|
||
grade:5,
|
||
};
|
||
},
|
||
onLoad(option){
|
||
this.type = option.type;
|
||
this.typeId = option.typeId;
|
||
this.spareId = option.spareId;
|
||
},
|
||
methods:{
|
||
changeGrade(e){
|
||
this.grade = e.value
|
||
},
|
||
submit(){
|
||
if(this.evContent == 0){
|
||
alertTip('请输入评价内容');
|
||
return false;
|
||
}
|
||
let data;
|
||
if(this.type == 4 || this.type == 5){
|
||
data = {
|
||
"method":saveHaircutComment,
|
||
data:{
|
||
detailId:this.typeId,
|
||
userId:this.userInfo.id,
|
||
commentContent:this.evContent,
|
||
satisfiedLevel:this.grade,
|
||
type:this.type == 4 ? 1 : 2
|
||
}
|
||
}
|
||
}else{
|
||
data = {
|
||
"method":submitEvaluate,
|
||
data:{
|
||
type:this.type,
|
||
typeId:this.typeId,
|
||
userId:this.userInfo.id,
|
||
evContent:this.evContent,
|
||
grade:this.grade,
|
||
bak1:this.spareId,
|
||
}
|
||
}
|
||
}
|
||
|
||
alertTip("提交成功");
|
||
setTimeout(r =>{
|
||
uni.redirectTo({
|
||
url:'/pages/newfoodComment/newfood-form'
|
||
})
|
||
}, 1500)
|
||
|
||
callbackRequest(data)
|
||
.then(res => {
|
||
|
||
|
||
/* if(res.data.returnCode == 1){
|
||
sureAlterTip('','评价成功',false)
|
||
.then(_ => {
|
||
if(this.type == 4){
|
||
uni.redirectTo({
|
||
url:'/pages/haircut/haircut?currentTabIndex=1'
|
||
})
|
||
}else if(this.type == 5){
|
||
uni.redirectTo({
|
||
url:'/pages/washCarReservation/washCarReservation?currentTabIndex=1'
|
||
})
|
||
}else {
|
||
// uni.redirectTo({
|
||
// url:'/pages/order-form/order-form'
|
||
// })
|
||
uni.navigateBack({
|
||
delta:1
|
||
})
|
||
}
|
||
})
|
||
}else {
|
||
alertTip(res.data.returnMsg)
|
||
} */
|
||
})
|
||
}
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss">
|
||
@import "@/static/css/common.scss";
|
||
.main {
|
||
min-height:100vh;
|
||
background: #f8f8f8;
|
||
}
|
||
.content {
|
||
padding:30rpx;
|
||
background: #fff;
|
||
textarea{
|
||
width:100%;
|
||
height:300rpx;
|
||
font-size:28rpx;
|
||
color:#666;
|
||
line-height:40rpx;
|
||
}
|
||
}
|
||
.grade {
|
||
font-size: 28upx;
|
||
padding:30rpx;
|
||
text{
|
||
font-size:28rpx;
|
||
color:#444;
|
||
font-weight:bold;
|
||
}
|
||
}
|
||
.grade .rate {
|
||
margin-left: 80upx;
|
||
margin-top: -18upx;
|
||
}
|
||
</style>
|