-
2common/css/app.scss
-
78pages.json
-
79pages/indexEntry/consult/consult.vue
-
322pages/indexEntry/consult/pubComplaint/pubComplaint.vue
-
225pages/indexEntry/consult/pubConsult/pubConsult.vue
-
142pages/indexEntry/consult/record/comp/complaintItem.vue
-
91pages/indexEntry/consult/record/comp/consultItem.vue
-
118pages/indexEntry/consult/record/record.vue
-
23pages/indexEntry/findShcool/coachComment/coachComment.vue
-
2pages/indexEntry/findShcool/findShcool.vue
-
87pages/indexEntry/findShcool/screen/screen.vue
-
15pages/indexEntry/findShcool/shcoolComment/shcoolComment.vue
-
19pages/indexEntry/findShcool/shcoolDetail/comp/tab3.vue
-
2pages/indexEntry/findShcool/shcoolDetail/shcoolDetail.vue
-
45pages/indexEntry/publicVideo/comp/videoItem.vue
-
45pages/indexEntry/publicVideo/publicVideo.vue
-
134pages/indexEntry/publicVideo/videoDetail/videoDetail.vue
-
17pages/indexEntry/theory/theory.vue
-
6pages/tabbar/index/index.vue
-
9site.config.js
-
BINstatic/images/index/btn_bofang.png
-
BINstatic/images/index/btn_tupian.png
-
BINstatic/images/index/dianzan_cli.png
-
BINstatic/images/index/dianzan_nor.png
-
BINstatic/images/index/edit.png
-
BINstatic/images/index/fenxiang_nor.png
-
BINstatic/images/index/ic_jilu.png
-
BINstatic/images/index/ic_tousu.png
-
BINstatic/images/index/ic_zixun.png
-
BINstatic/images/index/radio_cli.png
-
BINstatic/images/index/radio_nor.png
-
BINstatic/images/index/shoucang_cli.png
-
BINstatic/images/index/shoucang_nor.png
-
BINstatic/images/index/我的@2x.png
-
BINstatic/images/index/找考场_slices.zip
-
BINstatic/images/index/报名@2x.png
-
BINstatic/images/index/首页@2x.png
@ -0,0 +1,79 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<topNavbar title="咨询投诉"></topNavbar> |
|||
<view class="pad"> |
|||
<view class="card"> |
|||
<view class="tabBox"> |
|||
<view class="tab" v-for="(item,index) in tabArr" :key="index" @click="$goPage(item.url)"> |
|||
<view class="icon"> |
|||
<image :src="item.icon" mode=""></image> |
|||
</view> |
|||
<view class="text">{{item.text}}</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
<view class="question"> |
|||
<view class="h1">常风问题</view> |
|||
<view class="card que"> |
|||
<u-collapse :body-style="itemStyle" :border="false"> |
|||
<u-collapse-item :title="item.head" v-for="(item, index) in itemList" :key="index" style="border-bottom: 1rpx solid #E8E9EC;"> |
|||
{{item.body}} |
|||
</u-collapse-item> |
|||
</u-collapse> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
data() { |
|||
return { |
|||
itemStyle: { |
|||
marginLeft:'20rpx', |
|||
}, |
|||
itemList: [ |
|||
{head: '画沙', body: '用手中的流沙画一个你呀,用手中的流沙画一个你呀,用手中的流沙画一个你呀,'} |
|||
], |
|||
tabArr: [ |
|||
{text: '我要咨询', icon: require('../../../static/images/index/ic_zixun.png'), url:'/pages/indexEntry/consult/pubConsult/pubConsult', id: 1}, |
|||
{text: '我要投诉', icon: require('../../../static/images/index/ic_tousu.png'), url: '/pages/indexEntry/consult/pubComplaint/pubComplaint', id: 2,}, |
|||
{text: '查看记录', icon: require('../../../static/images/index/ic_jilu.png'), url: '/pages/indexEntry/consult/record/record', id: 3}, |
|||
] |
|||
} |
|||
}, |
|||
methods: { |
|||
|
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.tabBox { |
|||
display: flex; |
|||
margin-top: 20rpx; |
|||
height: 192rpx; |
|||
.tab { |
|||
flex: 1; |
|||
display: flex; |
|||
flex-direction: column; |
|||
align-items: center; |
|||
justify-content: center; |
|||
.icon { |
|||
width: 72rpx; |
|||
height: 72rpx; |
|||
} |
|||
.text { |
|||
font-size: 28rpx; |
|||
margin-top: 18rpx; |
|||
} |
|||
} |
|||
} |
|||
.h1 { |
|||
line-height: 100rpx; |
|||
} |
|||
.que { |
|||
padding: 28rpx; |
|||
} |
|||
</style> |
@ -0,0 +1,322 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<topNavbar title="我要咨询"></topNavbar> |
|||
<view class="pad"> |
|||
<!-- 投诉类别 --> |
|||
<view class="card"> |
|||
<view class="row"> |
|||
<view class="label">投诉类别</view> |
|||
<view class="rightSelect"> |
|||
<u-radio-group |
|||
v-model="form.radiovalue1" |
|||
> |
|||
<u-radio |
|||
:customStyle="{marginRight: '24rpx'}" |
|||
v-for="(item, index) in radiolist1" |
|||
:key="index" |
|||
:label="item.name" |
|||
:name="item.name" |
|||
> |
|||
</u-radio> |
|||
</u-radio-group> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
<!-- 驾校名称 教练名称 --> |
|||
<view class="card"> |
|||
<view class="row"> |
|||
<view class="label">驾校名称</view> |
|||
<view @click="showShoolName=true" class="select_row my" > |
|||
<input v-model="form.classModel" placeholder="请选择" @click="showShoolName=true" disabled/></input> |
|||
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon> |
|||
</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="label">教练名称</view> |
|||
<view @click="showShoolName=true" class="select_row" > |
|||
<input v-model="form.classModel" placeholder="请选择" @click="showShoolName=true" disabled/></input> |
|||
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
<!-- 投诉类型 --> |
|||
<view class="card"> |
|||
<view class="row"> |
|||
<view class="label">投诉类型</view> |
|||
<view @click="showShoolName=true" class="select_row" > |
|||
<input v-model="form.classModel" placeholder="请选择" @click="showShoolName=true" disabled/></input> |
|||
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
<!-- 咨询内容 --> |
|||
<view class="card" style="padding: 0 24rpx 24rpx 24rpx ;"> |
|||
<view class="h2">咨询内容</view> |
|||
<view class="textareaBg"> |
|||
<view class="flex"> |
|||
<view class="icon"> |
|||
<image src="@/static/images/index/edit.png" mode=""></image> |
|||
</view> |
|||
<view class="inputBox"> |
|||
<u-textarea v-model="value" ref="textarea" placeholder="详细说明问题,以便获得更好的回答~"></u-textarea> |
|||
</view> |
|||
</view> |
|||
<view class="phoneBox"> |
|||
<view class="imgBox"> |
|||
<view class="img"> |
|||
<view class="minusCircle"> |
|||
<u-icon name="close-circle-fill" size="20" color="#b9061d"></u-icon> |
|||
</view> |
|||
<image src="../../../../static/logo.png" mode=""></image> |
|||
</view> |
|||
</view> |
|||
<view class="phone" @click="chooseImages"> |
|||
<view class="phoneIcon"> |
|||
<image src="@/static/images/index/btn_tupian.png" mode=""></image> |
|||
</view> |
|||
<view class="lab">添加图片</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="card"> |
|||
<view class="phone_row"> |
|||
<view class="label">联系电话</view> |
|||
<view class="uInput my"> |
|||
<u--input placeholder="输入手机号码,以便我们回复您!" v-model="value" border="none" type="number" fontSize="14"></u--input> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="btn active">提交</view> |
|||
</view> |
|||
<u-picker :show="showShoolName" :columns="shoolArr" keyName="lab" @confirm="confirmSex" @cancel="showShoolName=false"></u-picker> |
|||
<!-- <u-picker :show="show" :columns="shoolArr" keyName="lab"></u-picker> --> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import { APP_API, APP_HOST } from '@/site.config.js'; |
|||
const _url = APP_HOST + APP_API + '/util/manage/uploadFile.do'; |
|||
export default { |
|||
data() { |
|||
return { |
|||
value: '', |
|||
imgArr: [], |
|||
showShoolName: false, |
|||
shoolArr: [ |
|||
[ |
|||
{lab: '翔力驾校',id: 1} |
|||
] |
|||
], |
|||
form: { |
|||
value: '投诉驾校' |
|||
}, |
|||
radiolist1: [{ |
|||
name: '投诉驾校', |
|||
disabled: false |
|||
}, |
|||
{ |
|||
name: '投诉教练', |
|||
disabled: false |
|||
}, |
|||
], |
|||
} |
|||
}, |
|||
methods: { |
|||
// 选择驾校 |
|||
confirmSex(val) { |
|||
console.log(val) |
|||
this.showShoolName = false |
|||
}, |
|||
//选择图片 |
|||
chooseImages(type) { |
|||
let imgNum = 3 - (this.imgArr.length) |
|||
uni.chooseImage({ |
|||
count: imgNum, //允许选择的数量 |
|||
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有 |
|||
sourceType: ['album', 'camera'], //从相册选择 |
|||
success: res => { |
|||
uni.showLoading({ |
|||
title: '图片上传中...' |
|||
}); |
|||
res.tempFilePaths.forEach( (item,index)=>{ |
|||
this.uploadImgApi(item) |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
uploadImgApi(filePath) { |
|||
console.log(filePath) |
|||
let _this = this |
|||
// 上传图片到服务器 |
|||
uni.uploadFile({ |
|||
url: _url,//接口 |
|||
filePath: filePath,//要上传的图片的本地路径 |
|||
name: 'file', |
|||
|
|||
formData: { |
|||
fileType: 1, |
|||
fileSuffix: "png" |
|||
}, |
|||
header: { |
|||
token: uni.getStorageSync("Authorization") || '', |
|||
}, |
|||
success(res) { |
|||
console.log('上传成功') |
|||
let res2 = JSON.parse(res.data) |
|||
_this.imgArr.push(res2.data) |
|||
console.log(res2) |
|||
uni.hideLoading(); |
|||
}, |
|||
complete: ()=> {} |
|||
}) |
|||
}, |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
|
|||
.pageBgImg { |
|||
.pad {} |
|||
.card { |
|||
margin-top: 20rpx; |
|||
.h2 { |
|||
font-size: 28rpx; |
|||
font-weight: 600; |
|||
line-height: 96rpx; |
|||
} |
|||
|
|||
.textareaBg { |
|||
min-height: 364rpx; |
|||
background: #F8F8F8; |
|||
border-radius: 16rpx; |
|||
border: 2rpx solid #E8E9EC; |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: space-between; |
|||
.flex { |
|||
padding: 20rpx; |
|||
align-items: flex-start; |
|||
.icon { |
|||
width: 24rpx; |
|||
height: 24rpx; |
|||
margin: 0 14rpx 0 24rpx; |
|||
} |
|||
|
|||
.inputBox { |
|||
flex: 1; |
|||
|
|||
} |
|||
/deep/ .inputBox .u-textarea { |
|||
padding: 0 !important; |
|||
border: none !important; |
|||
background: none !important; |
|||
} |
|||
} |
|||
|
|||
.phoneBox { |
|||
display: flex; |
|||
padding: 0 10rpx 20rpx 20rpx; |
|||
.imgBox { |
|||
display: flex; |
|||
.img { |
|||
margin-right: 14rpx; |
|||
position: relative; |
|||
width: 160rpx; |
|||
height: 160rpx; |
|||
image { |
|||
width: 160rpx; |
|||
height: 160rpx; |
|||
border-radius: 8rpx; |
|||
overflow: hidden; |
|||
} |
|||
.minusCircle { |
|||
position: absolute; |
|||
right: -14rpx; |
|||
top: -20rpx; |
|||
z-index: 9; |
|||
|
|||
} |
|||
} |
|||
} |
|||
|
|||
.phone { |
|||
border: 2rpx dashed #CDCED0; |
|||
width: 160rpx; |
|||
height: 160rpx; |
|||
background: #F8F8F8; |
|||
border-radius: 8rpx; |
|||
overflow: hidden; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: center; |
|||
flex-direction: column; |
|||
.phoneIcon { |
|||
width: 60rpx; |
|||
height: 60rpx; |
|||
} |
|||
|
|||
.lab { |
|||
font-size: 20rpx; |
|||
color: #686B73; |
|||
margin-top: 8rpx; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
.phone_row { |
|||
display: flex; |
|||
height: 104rpx; |
|||
padding: 0 28rpx; |
|||
line-height: 104rpx; |
|||
.label { |
|||
font-size: 28rpx; |
|||
font-weight: 600; |
|||
margin-right: 50rpx; |
|||
} |
|||
.uInput { |
|||
flex: 1; |
|||
} |
|||
} |
|||
.btn { |
|||
width: 396rpx; |
|||
height: 72rpx; |
|||
background: #D1E7FE; |
|||
border-radius: 8rpx; |
|||
font-size: 28rpx; |
|||
text-align: center; |
|||
line-height: 72rpx; |
|||
margin: 100rpx auto 114rpx auto; |
|||
color: #fff; |
|||
&.active { |
|||
background: $themC; |
|||
} |
|||
} |
|||
} |
|||
.row { |
|||
height: 120rpx; |
|||
display: flex; |
|||
align-items: center; |
|||
padding-right: 30rpx; |
|||
.label { |
|||
font-size: 28rpx; |
|||
font-weight: 600; |
|||
width: 184rpx; |
|||
text-align: center; |
|||
} |
|||
.select_row { |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: space-between; |
|||
flex: 1; |
|||
input { |
|||
font-size: 28rpx; |
|||
color: #333; |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,225 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<topNavbar title="我要咨询"></topNavbar> |
|||
<view class="pad"> |
|||
<view class="card"> |
|||
<view class="h2">咨询内容</view> |
|||
<view class="textareaBg"> |
|||
<view class="flex"> |
|||
<view class="icon"> |
|||
<image src="@/static/images/index/edit.png" mode=""></image> |
|||
</view> |
|||
<view class="inputBox"> |
|||
<u-textarea v-model="value" ref="textarea" placeholder="详细说明问题,以便获得更好的回答~"></u-textarea> |
|||
</view> |
|||
</view> |
|||
<view class="phoneBox"> |
|||
<view class="imgBox"> |
|||
<view class="img"> |
|||
<view class="minusCircle"> |
|||
<u-icon name="close-circle-fill" size="20" color="#b9061d"></u-icon> |
|||
</view> |
|||
<image src="../../../../static/logo.png" mode=""></image> |
|||
</view> |
|||
</view> |
|||
<view class="phone" @click="chooseImages"> |
|||
<view class="phoneIcon"> |
|||
<image src="@/static/images/index/btn_tupian.png" mode=""></image> |
|||
</view> |
|||
<view class="lab">添加图片</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="card" style="padding-bottom: 0;"> |
|||
<view class="phone_row"> |
|||
<view class="label">联系电话</view> |
|||
<view class="uInput my"> |
|||
<u--input placeholder="输入手机号码,以便我们回复您!" v-model="value" border="none" type="number" fontSize="14"></u--input> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="btn active">提交</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import { APP_API, APP_HOST } from '@/site.config.js'; |
|||
const _url = APP_HOST + APP_API + '/util/manage/uploadFile.do'; |
|||
export default { |
|||
data() { |
|||
return { |
|||
value: '', |
|||
imgArr: [], |
|||
} |
|||
}, |
|||
methods: { |
|||
//选择图片 |
|||
chooseImages(type) { |
|||
let imgNum = 3 - (this.imgArr.length) |
|||
uni.chooseImage({ |
|||
count: imgNum, //允许选择的数量 |
|||
sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有 |
|||
sourceType: ['album', 'camera'], //从相册选择 |
|||
success: res => { |
|||
uni.showLoading({ |
|||
title: '图片上传中...' |
|||
}); |
|||
res.tempFilePaths.forEach( (item,index)=>{ |
|||
this.uploadImgApi(item) |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
uploadImgApi(filePath) { |
|||
console.log(filePath) |
|||
let _this = this |
|||
// 上传图片到服务器 |
|||
uni.uploadFile({ |
|||
url: _url,//接口 |
|||
filePath: filePath,//要上传的图片的本地路径 |
|||
name: 'file', |
|||
|
|||
formData: { |
|||
fileType: 1, |
|||
fileSuffix: "png" |
|||
}, |
|||
header: { |
|||
token: uni.getStorageSync("Authorization") || '', |
|||
}, |
|||
success(res) { |
|||
console.log('上传成功') |
|||
let res2 = JSON.parse(res.data) |
|||
_this.imgArr.push(res2.data) |
|||
console.log(res2) |
|||
uni.hideLoading(); |
|||
}, |
|||
complete: ()=> {} |
|||
}) |
|||
}, |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.pageBgImg { |
|||
.pad {} |
|||
.card { |
|||
padding: 0 24rpx 24rpx 24rpx ; margin-top: 20rpx; |
|||
.h2 { |
|||
font-size: 32rpx; |
|||
font-weight: 600; |
|||
line-height: 96rpx; |
|||
} |
|||
|
|||
.textareaBg { |
|||
min-height: 364rpx; |
|||
background: #F8F8F8; |
|||
border-radius: 16rpx; |
|||
border: 2rpx solid #E8E9EC; |
|||
display: flex; |
|||
flex-direction: column; |
|||
justify-content: space-between; |
|||
.flex { |
|||
padding: 20rpx; |
|||
align-items: flex-start; |
|||
.icon { |
|||
width: 24rpx; |
|||
height: 24rpx; |
|||
margin: 0 14rpx 0 24rpx; |
|||
} |
|||
|
|||
.inputBox { |
|||
flex: 1; |
|||
|
|||
} |
|||
/deep/ .inputBox .u-textarea { |
|||
padding: 0 !important; |
|||
border: none !important; |
|||
background: none !important; |
|||
font-size: 24rpx |
|||
} |
|||
} |
|||
|
|||
.phoneBox { |
|||
display: flex; |
|||
padding: 0 10rpx 20rpx 20rpx; |
|||
.imgBox { |
|||
display: flex; |
|||
.img { |
|||
margin-right: 14rpx; |
|||
position: relative; |
|||
image { |
|||
width: 160rpx; |
|||
height: 160rpx; |
|||
border-radius: 8rpx; |
|||
overflow: hidden; |
|||
} |
|||
.minusCircle { |
|||
position: absolute; |
|||
right: -14rpx; |
|||
top: -20rpx; |
|||
z-index: 9; |
|||
|
|||
} |
|||
} |
|||
} |
|||
|
|||
.phone { |
|||
border: 2rpx dashed #CDCED0; |
|||
width: 160rpx; |
|||
height: 160rpx; |
|||
background: #F8F8F8; |
|||
border-radius: 8rpx; |
|||
overflow: hidden; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: center; |
|||
flex-direction: column; |
|||
.phoneIcon { |
|||
width: 60rpx; |
|||
height: 60rpx; |
|||
} |
|||
|
|||
.lab { |
|||
font-size: 20rpx; |
|||
color: #686B73; |
|||
margin-top: 8rpx; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
.phone_row { |
|||
display: flex; |
|||
height: 104rpx; |
|||
padding: 0 28rpx; |
|||
line-height: 104rpx; |
|||
.label { |
|||
font-size: 32rpx; |
|||
font-weight: 600; |
|||
margin-right: 50rpx; |
|||
} |
|||
.uInput { |
|||
flex: 1; |
|||
} |
|||
} |
|||
.btn { |
|||
width: 396rpx; |
|||
height: 72rpx; |
|||
background: #D1E7FE; |
|||
border-radius: 8rpx; |
|||
font-size: 28rpx; |
|||
text-align: center; |
|||
line-height: 72rpx; |
|||
margin: 100rpx auto 114rpx auto; |
|||
color: #fff; |
|||
&.active { |
|||
background: $themC; |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,142 @@ |
|||
<template> |
|||
<view class="consultItem"> |
|||
<view class="top_row"> |
|||
<view class="flex"> |
|||
<view class="tag">投诉教练</view> |
|||
<view class="tag">服务态度</view> |
|||
</view> |
|||
<view class="status">待处理</view> |
|||
</view> |
|||
<view class="target"> |
|||
<view class="row"> |
|||
<view class="leftLab"> |
|||
<view class="icon"> |
|||
<image src="@/static/images/index/edit.png" mode=""></image> |
|||
</view> |
|||
<view class="lab">驾校名称</view> |
|||
</view> |
|||
<view class="name">翔力驾校</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="leftLab"> |
|||
<view class="icon"> |
|||
<image src="@/static/images/index/edit.png" mode=""></image> |
|||
</view> |
|||
<view class="lab">教练名称</view> |
|||
</view> |
|||
<view class="name">翔力驾校</view> |
|||
</view> |
|||
</view> |
|||
<view class="content"> |
|||
<view class="lab">问题描述</view> |
|||
<view class="text">能退学费吗?</view> |
|||
</view> |
|||
<view class="border_bottom"> |
|||
<view class="dateBox"> |
|||
<view class="date">创建时间:2022-01-04</view> |
|||
<!-- <view class="date">处理时间:2022-01-04</view> --> |
|||
</view> |
|||
<view class="close_btn">关闭</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.consultItem { |
|||
width: 100%; |
|||
.target { |
|||
border-bottom: 2rpx dashed #E8E9EC; |
|||
} |
|||
.row { |
|||
display: flex; |
|||
justify-content: space-between; |
|||
padding: 24rpx 0; |
|||
.leftLab { |
|||
display: flex; |
|||
align-items: center; |
|||
.icon { |
|||
width: 30rpx; |
|||
height: 30rpx; |
|||
} |
|||
|
|||
.lab { |
|||
margin-left: 10rpx; |
|||
font-size: 28rpx; |
|||
color: #ADADAD; |
|||
} |
|||
} |
|||
|
|||
.name { |
|||
font-size: 28rpx; |
|||
color: #333; |
|||
} |
|||
} |
|||
.top_row { |
|||
display: flex; |
|||
width: 100%; |
|||
height: 116rpx; |
|||
border-bottom: 2rpx dashed #E8E9EC; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
.tag { |
|||
width: 176rpx; |
|||
height: 60rpx; |
|||
background: rgba(38,144,12,0.1); |
|||
border-radius: 8rpx; |
|||
text-align: center; |
|||
line-height: 60rpx; |
|||
font-size: 28rpx; |
|||
color: #0D9269; |
|||
margin-right: 24rpx; |
|||
} |
|||
|
|||
.status { |
|||
font-size: 28rpx; |
|||
color: $themC; |
|||
} |
|||
} |
|||
|
|||
.content { |
|||
padding: 24rpx 0 50rpx 0; |
|||
font-size: 28rpx; |
|||
.lab { |
|||
color: #ADADAD; |
|||
margin-bottom: 4rpx; |
|||
} |
|||
|
|||
.text { |
|||
|
|||
} |
|||
} |
|||
|
|||
.border_bottom { |
|||
border-top: 2rpx dashed #E8E9EC; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: space-between; |
|||
padding: 30rpx 0 16rpx 0; |
|||
.dateBox { |
|||
.date { |
|||
font-size: 28rpx; |
|||
color: #ADADAD; |
|||
margin-bottom: 16rpx; |
|||
} |
|||
} |
|||
|
|||
.close_btn { |
|||
width: 140rpx; |
|||
height: 60rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 8rpx; |
|||
border: 2rpx solid #E8E9EC; |
|||
text-align: center; |
|||
line-height: 60rpx; |
|||
color: #ADADAD; |
|||
font-size: 28rpx; |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,91 @@ |
|||
<template> |
|||
<view class="consultItem"> |
|||
<view class="top_row"> |
|||
<view class="tag">咨询</view> |
|||
<view class="status">待处理</view> |
|||
</view> |
|||
<view class="content"> |
|||
<view class="lab">问题描述</view> |
|||
<view class="text">能退学费吗?</view> |
|||
</view> |
|||
<view class="border_bottom"> |
|||
<view class="dateBox"> |
|||
<view class="date">创建时间:2022-01-04</view> |
|||
<!-- <view class="date">处理时间:2022-01-04</view> --> |
|||
</view> |
|||
<view class="close_btn">关闭</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.consultItem { |
|||
width: 100%; |
|||
.top_row { |
|||
display: flex; |
|||
width: 100%; |
|||
height: 116rpx; |
|||
border-bottom: 2rpx dashed #E8E9EC; |
|||
justify-content: space-between; |
|||
align-items: center; |
|||
.tag { |
|||
width: 120rpx; |
|||
height: 60rpx; |
|||
background: rgba(250,149,25,0.1); |
|||
border-radius: 8rpx; |
|||
text-align: center; |
|||
line-height: 60rpx; |
|||
font-size: 28rpx; |
|||
color: #FA7919; |
|||
} |
|||
|
|||
.status { |
|||
font-size: 28rpx; |
|||
color: $themC; |
|||
} |
|||
} |
|||
|
|||
.content { |
|||
padding: 24rpx 0 50rpx 0; |
|||
font-size: 28rpx; |
|||
.lab { |
|||
color: #ADADAD; |
|||
margin-bottom: 4rpx; |
|||
} |
|||
|
|||
.text { |
|||
|
|||
} |
|||
} |
|||
|
|||
.border_bottom { |
|||
border-top: 2rpx dashed #E8E9EC; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: space-between; |
|||
padding: 30rpx 0 10rpx 0; |
|||
.dateBox { |
|||
.date { |
|||
font-size: 28rpx; |
|||
color: #ADADAD; |
|||
margin-bottom: 16rpx; |
|||
} |
|||
} |
|||
|
|||
.close_btn { |
|||
width: 140rpx; |
|||
height: 60rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 8rpx; |
|||
border: 2rpx solid #E8E9EC; |
|||
text-align: center; |
|||
line-height: 60rpx; |
|||
color: #ADADAD; |
|||
font-size: 28rpx; |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,118 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<topNavbar title="投诉咨询记录"></topNavbar> |
|||
<view class="pad"> |
|||
<view class="tabs"> |
|||
<view class="tab" v-for="(item,index) in tabList" :key="index" :class="{active: currentTab==item.id}" @click="changeTab(item)">{{ item.text }}</view> |
|||
</view> |
|||
<view class="navs"> |
|||
<view class="nav" v-for="(item,index) in navList" :key="index" :class="{active: currentNav==item.id}" @click="changeNav(item)">{{ item.text }}</view> |
|||
</view> |
|||
<view class="recordTotal">100条记录</view> |
|||
|
|||
<view class="tabCon" v-if="currentTab==1"> |
|||
<view class="card" v-for="(item,index) in 10" :key="index"> |
|||
<consultItem></consultItem> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="tabCon" v-if="currentTab==2"> |
|||
<view class="card" v-for="(item,index) in 10" :key="index"> |
|||
<complaintItem></complaintItem> |
|||
</view> |
|||
</view> |
|||
|
|||
</view> |
|||
|
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import consultItem from './comp/consultItem' |
|||
import complaintItem from './comp/complaintItem' |
|||
export default { |
|||
components: { consultItem, complaintItem }, |
|||
data() { |
|||
return { |
|||
tabList: [ |
|||
{text: '我的咨询',id: 1}, |
|||
{text: '我的投诉',id: 2}, |
|||
], |
|||
navList: [ |
|||
{text: '全部', id: 0}, |
|||
{text: '待处理', id: 1}, |
|||
{text: '已处理', id: 2}, |
|||
{text: '已关闭', id: 3}, |
|||
], |
|||
currentTab: 1, |
|||
currentNav: 0, |
|||
} |
|||
}, |
|||
methods: { |
|||
changeTab(item) { |
|||
this.currentTab = item.id |
|||
}, |
|||
changeNav(item) { |
|||
this.currentNav = item.id |
|||
}, |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.card { |
|||
padding: 0 24rpx; |
|||
margin-bottom: 20rpx; |
|||
} |
|||
.tabs { |
|||
display: flex; |
|||
width: 100%; |
|||
height: 72rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 16rpx; |
|||
margin-top: 20rpx; |
|||
.tab { |
|||
flex: 1; |
|||
text-align: center; |
|||
line-height: 72rpx; |
|||
color: #ADADAD; |
|||
&.active { |
|||
background: rgba(25,137,250,0.1); |
|||
border-radius: 16rpx; |
|||
border: 2rpx solid #1989FA; |
|||
color: $themC; |
|||
font-weight: 600; |
|||
} |
|||
} |
|||
} |
|||
.navs { |
|||
display: flex; |
|||
justify-content: space-between; |
|||
color: #fff; |
|||
font-size: 28rpx; |
|||
padding: 24rpx 0 40rpx 0; |
|||
color: #fff; |
|||
.nav { |
|||
&.active { |
|||
font-weight: 500; |
|||
position: relative; |
|||
&::before { |
|||
position: absolute; |
|||
left: 50%; |
|||
transform: translateX(-50%); |
|||
bottom: -20rpx; |
|||
content: ''; |
|||
width: 56rpx; |
|||
height: 6rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 3rpx; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
.recordTotal { |
|||
font-size: 24rpx; |
|||
padding: 0rpx 0 28rpx 0; |
|||
text-align: right; |
|||
} |
|||
</style> |
@ -0,0 +1,23 @@ |
|||
<template> |
|||
<view class="pageBg"> |
|||
<view class="infoBox pad"> |
|||
<info :showSign="true"></info> |
|||
</view> |
|||
<comments></comments> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import comments from '../comments/comments.vue' |
|||
import info from '../shcoolDetail/comp/tab3.vue' |
|||
export default { |
|||
components: { comments, info } |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.infoBox { |
|||
background: #F6F6F6; |
|||
overflow: hidden; |
|||
} |
|||
</style> |
@ -0,0 +1,87 @@ |
|||
<template> |
|||
<view class="pageBg"> |
|||
<view class="pad"> |
|||
<view class="type"> |
|||
<view class="h1">驾照类型</view> |
|||
<view class="tagFlex"> |
|||
<view class="tab" v-for="(item,index) in tagList" :class="{active: index==1}">{{ item.text }}</view> |
|||
</view> |
|||
</view> |
|||
|
|||
<view class="region"> |
|||
<view class="h1">区域</view> |
|||
</view> |
|||
|
|||
<view class="btn_row"> |
|||
<view class="btn border">重置</view> |
|||
<view class="btn">确定</view> |
|||
</view> |
|||
</view> |
|||
|
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
data() { |
|||
return { |
|||
tagList: [ |
|||
{text: '名称', id: 1}, |
|||
{text: '名称', id: 1}, |
|||
{text: '名称', id: 1}, |
|||
{text: '名称', id: 1}, |
|||
] |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.h1 { |
|||
line-height: 100rpx; |
|||
} |
|||
.btn_row { |
|||
position: fixed; |
|||
bottom: 50rpx; |
|||
left: 0; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
width: 100%; |
|||
padding: 0 28rpx; |
|||
.btn { |
|||
width: 48.8%; |
|||
height: 72rpx; |
|||
background: #1989FA; |
|||
border-radius: 8rpx; |
|||
font-size: 28rpx; |
|||
color: #fff; |
|||
text-align: center; |
|||
line-height: 72rpx; |
|||
&.border { |
|||
background: rgba(25,137,250,0.1); |
|||
border: 2rpx solid #1989FA; |
|||
color: $themC; |
|||
} |
|||
} |
|||
} |
|||
.tagFlex { |
|||
display: flex; |
|||
flex-wrap: wrap; |
|||
.tab { |
|||
padding: 10rpx 24rpx; |
|||
margin: 12rpx 20rpx; |
|||
height: 60rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 8rpx; |
|||
font-size: 28rpx; |
|||
color: #686B73; |
|||
&.active { |
|||
background: rgba(25,137,250,0.1); |
|||
border-radius: 8rpx; |
|||
border: 2rpx solid #1989FA; |
|||
font-size: 28rpx; |
|||
color: $themC; |
|||
} |
|||
} |
|||
} |
|||
</style> |
@ -0,0 +1,15 @@ |
|||
<template> |
|||
<view class="main"> |
|||
<comments></comments> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import comments from '../comments/comments.vue' |
|||
export default { |
|||
components: { comments } |
|||
} |
|||
</script> |
|||
|
|||
<style> |
|||
</style> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<view class="vdo"> |
|||
<view class="coverBox"> |
|||
<view class="start"> |
|||
<image src="@/static/images/index/btn_bofang.png" mode=""></image> |
|||
</view> |
|||
<view class="cover"> |
|||
<image src="@/static/images/logo.png" mode=""></image> |
|||
</view> |
|||
</view> |
|||
<view class="text oneRowText">公益短片之“车速决定命运”</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.coverBox { |
|||
width: 100%; |
|||
height: 168rpx; |
|||
background: $themC; |
|||
border-radius: 12rpx; |
|||
position: relative; |
|||
.start { |
|||
position: absolute; |
|||
left: 50%; |
|||
top: 50%; |
|||
transform: translate(-50%,-50%); |
|||
width: 50rpx; |
|||
height: 50rpx; |
|||
z-index: 2; |
|||
} |
|||
|
|||
.cover { |
|||
width: 100%; |
|||
height: 100%; |
|||
} |
|||
} |
|||
|
|||
.text { |
|||
font-size: 24rpx; |
|||
padding: 20rpx 0 6rpx 0; |
|||
} |
|||
</style> |
@ -0,0 +1,45 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<topNavbar title="安全驾驶"></topNavbar> |
|||
<view class="pad"> |
|||
<view class="searcBox"> |
|||
<searchRow placeholder="搜索视频名称"/> |
|||
</view> |
|||
<view class="ul"> |
|||
<view class="li" v-for="(item,index) in 10" :key="index" @click="$goPage('/pages/indexEntry/publicVideo/videoDetail/videoDetail')"> |
|||
<videoItem></videoItem> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import videoItem from './comp/videoItem' |
|||
export default { |
|||
components: { videoItem } |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.ul { |
|||
width: 100%; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
flex-wrap: wrap; |
|||
.li { |
|||
width: 100%; |
|||
width: 48%; |
|||
height: 260rpx; |
|||
background: #FFFFFF; |
|||
box-shadow: 0px 8rpx 20rpx 0px rgba(0,0,0,0.04), 2rpx 2rpx 8rpx 0px rgba(0,0,0,0.06); |
|||
border-radius: 16rpx; |
|||
margin-bottom: 24rpx; |
|||
padding: 16rpx; |
|||
|
|||
} |
|||
} |
|||
.searcBox { |
|||
padding: 20rpx 0 32rpx 0; |
|||
} |
|||
</style> |
@ -0,0 +1,134 @@ |
|||
<template> |
|||
<view class="pageBgImg"> |
|||
<view class="videoBox"> |
|||
<view class="back"> |
|||
<topNavbar title=""></topNavbar> |
|||
</view> |
|||
<video src="http://vjs.zencdn.net/v/oceans.mp4"></video> |
|||
</view> |
|||
<view class="pad"> |
|||
<view class="card" style="margin: 28rpx 0 24rpx 0;"> |
|||
<view class="info"> |
|||
<view class="name">视频名字</view> |
|||
<view class="date">2023/08/08</view> |
|||
</view> |
|||
</view> |
|||
<view class="operate"> |
|||
<view class="operateItem"> |
|||
<view class="icon"> |
|||
<image src="/static/images/index/dianzan_nor.png" mode=""></image> |
|||
<!-- <image src="/static/images/index/dianzan_cli.png" mode=""></image> --> |
|||
</view> |
|||
<view class="txt">点赞</view> |
|||
</view> |
|||
<view class="operateItem"> |
|||
<view class="icon"> |
|||
<image src="/static/images/index/shoucang_nor.png" mode=""></image> |
|||
<!-- <image src="/static/images/index/shoucang_cli.png" mode=""></image> --> |
|||
</view> |
|||
<view class="txt">收藏</view> |
|||
</view> |
|||
<view class="operateItem"> |
|||
<view class="icon"> |
|||
<image src="/static/images/index/fenxiang_nor.png" mode=""></image> |
|||
|
|||
</view> |
|||
<view class="txt">分享</view> |
|||
</view> |
|||
</view> |
|||
<view class="videolist"> |
|||
<view class="flex-b"> |
|||
<view class="h1">相关推荐</view> |
|||
<moreRight text="更多"></moreRight> |
|||
</view> |
|||
<view class="ul"> |
|||
<view class="li" v-for="(item,index) in 10" :key="index" @click="$goPage('/pages/indexEntry/publicVideo/videoDetail/videoDetail')"> |
|||
<videoItem></videoItem> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import videoItem from '../comp/videoItem' |
|||
export default { |
|||
components: { videoItem } |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.h1 { |
|||
line-height: 100rpx; |
|||
} |
|||
.info { |
|||
padding: 28rpx; |
|||
.name { |
|||
font-size: 34rpx; |
|||
color: #363A44; |
|||
font-weight: 500; |
|||
} |
|||
.date { |
|||
font-size: 28rpx; |
|||
color: #686B73; |
|||
margin-top: 4rpx; |
|||
} |
|||
} |
|||
.operate { |
|||
display: flex; |
|||
justify-content: space-between; |
|||
.operateItem { |
|||
width: 188rpx; |
|||
height: 132rpx; |
|||
background: #FFFFFF; |
|||
border-radius: 16rpx; |
|||
display: flex; |
|||
flex-direction: column; |
|||
align-items: center; |
|||
justify-content: center; |
|||
.icon { |
|||
width: 48rpx; |
|||
height: 48rpx; |
|||
} |
|||
|
|||
.txt { |
|||
font-size: 24rpx; |
|||
color: #333; |
|||
font-weight: 500; |
|||
} |
|||
} |
|||
} |
|||
.videoBox { |
|||
width: 100%; |
|||
height: 492rpx; |
|||
position: relative; |
|||
.back { |
|||
position: absolute; |
|||
left: 0; |
|||
top: 0; |
|||
} |
|||
video { |
|||
width: 100%; |
|||
height: 100%; |
|||
display: block; |
|||
} |
|||
} |
|||
.ul { |
|||
width: 100%; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
flex-wrap: wrap; |
|||
.li { |
|||
width: 100%; |
|||
width: 48%; |
|||
height: 260rpx; |
|||
background: #FFFFFF; |
|||
box-shadow: 0px 8rpx 20rpx 0px rgba(0,0,0,0.04), 2rpx 2rpx 8rpx 0px rgba(0,0,0,0.06); |
|||
border-radius: 16rpx; |
|||
margin-bottom: 24rpx; |
|||
padding: 16rpx; |
|||
|
|||
} |
|||
} |
|||
</style> |
@ -1,12 +1,7 @@ |
|||
const VUE_APP_PLATFORM = process.env.VUE_APP_PLATFORM; |
|||
module.exports = { |
|||
APP_API: VUE_APP_PLATFORM === 'h5' ? 'http://121.41.97.244:8090' : '', |
|||
APP_API: VUE_APP_PLATFORM === 'h5' ? '/api' : 'http://121.41.97.244:8090', |
|||
APP_HOST: VUE_APP_PLATFORM === 'h5' ? '' : 'https://www.jaxc.cn/api', |
|||
TEMP_HOST: VUE_APP_PLATFORM === 'h5' ? '' : 'http://121.41.97.244:8090 https://www.jaxc.cn/api', |
|||
ADD_API: VUE_APP_PLATFORM === 'h5' ? '/addApi': 'http://121.41.97.244:48084', //http://121.41.97.244:48084
|
|||
APP_NAME: '', |
|||
VERSION: '1.0.0', |
|||
gaodeMapUrl: 'https://webapi.amap.com/maps?v=1.4.15&key=4545202996c625152b7f2c1aa0ffb8ea&plugin=AMap.DistrictSearch,AMap.CustomLayer,AMap.MarkerClusterer', |
|||
locationIcon: 'http://3dtest.hzhuishi.cn/images/location.png', |
|||
AThreeFace : true, //是否启用人脸识别
|
|||
//是否启用人脸识别
|
|||
}; |
After Width: 60 | Height: 60 | Size: 1.5 KiB |
After Width: 60 | Height: 62 | Size: 2.2 KiB |
After Width: 48 | Height: 48 | Size: 928 B |
After Width: 48 | Height: 48 | Size: 1.3 KiB |
After Width: 24 | Height: 24 | Size: 607 B |
After Width: 48 | Height: 48 | Size: 1.6 KiB |
After Width: 72 | Height: 72 | Size: 2.0 KiB |
After Width: 72 | Height: 72 | Size: 3.3 KiB |
After Width: 72 | Height: 72 | Size: 3.3 KiB |
After Width: 32 | Height: 32 | Size: 1.1 KiB |
After Width: 32 | Height: 32 | Size: 919 B |
After Width: 48 | Height: 48 | Size: 1.2 KiB |
After Width: 48 | Height: 48 | Size: 1.7 KiB |
Before Width: 56 | Height: 56 | Size: 981 B |
Before Width: 56 | Height: 56 | Size: 1.3 KiB |
Before Width: 56 | Height: 56 | Size: 1.2 KiB |