Browse Source

报名流程

master
unknown 1 year ago
parent
commit
aea68af91a
  1. 1
      App.vue
  2. 28
      common/css/app.scss
  3. 63
      pages.json
  4. 127
      pages/indexEntry/enroll/enroll.vue
  5. 95
      pages/indexEntry/enroll/payment/payment.vue
  6. 95
      pages/indexEntry/enroll/registInfo/comp/comfigPopup.vue
  7. 364
      pages/indexEntry/enroll/registInfo/registInfo.vue
  8. 29
      pages/indexEntry/enroll/signContract/signContract.vue
  9. 114
      pages/indexEntry/enroll/uploadAvatar/uploadAvatar.vue
  10. 128
      pages/mineEntry/carLearProgress/carLearProgress.vue
  11. 98
      pages/mineEntry/carLearnHours/carLearnHours.vue
  12. 1
      pages/tabbar/index/index.vue
  13. 5
      pages/tabbar/mine/index.vue
  14. BIN
      static/images/index/wxicon.png

1
App.vue

@ -18,3 +18,4 @@
@import '@/uni_modules/uview-ui/index.scss'; @import '@/uni_modules/uview-ui/index.scss';
@import 'common/css/app.scss' @import 'common/css/app.scss'
</style> </style>

28
common/css/app.scss

@ -116,4 +116,30 @@ image {
font-size: 28rpx; font-size: 28rpx;
color:$themC; color:$themC;
border: 2rpx solid #1989FA; border: 2rpx solid #1989FA;
}
}
/* 通用 */
::-webkit-input-placeholder { color:#ADADAD; }
::-moz-placeholder { color:#ADADAD; } /* firefox 19+ */
:-ms-input-placeholder { color:#ADADAD; } /* ie */
input:-moz-placeholder { color:#ADADAD; }
input::-webkit-input-placeholder {
color: #CDCDCD !important;
}
input::-moz-input-placeholder {
color: #CDCDCD !important;
}
input::-ms-input-placeholder {
color: #CDCDCD !important;
}
// /* webkit专用 */
.input1::-webkit-input-placeholder { color:#00f; }
// #input2::-webkit-input-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
// #input3::-webkit-input-placeholder { font-style:italic; text-decoration:overline; color:#999; }
// /* mozilla专用 */
// #input1::-moz-placeholder { color:#00f; }
// #input2::-moz-placeholder { color:#090; background:lightgreen; text-transform:uppercase; }
// #input3::-moz-placeholder { font-style:italic; text-decoration:overline; color:#999; }

63
pages.json

@ -33,6 +33,51 @@
"root": "pages/indexEntry", "root": "pages/indexEntry",
"pages": [ "pages": [
{ {
"path": "enroll/enroll",
"style": {
"navigationBarTitleText": "学员报名",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "enroll/uploadAvatar/uploadAvatar",
"style": {
"navigationBarTitleText": "上传头像",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "enroll/registInfo/registInfo",
"style": {
"navigationBarTitleText": "报名信息确认",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "enroll/payment/payment",
"style": {
"navigationBarTitleText": "报名信息确认",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "enroll/signContract/signContract",
"style": {
"navigationBarTitleText": "上传头像",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "findShcool/findShcool", "path": "findShcool/findShcool",
"style": { "style": {
"navigationBarTitleText": "找驾校", "navigationBarTitleText": "找驾校",
@ -266,6 +311,24 @@
} }
}, },
{ {
"path": "carLearProgress/carLearProgress",
"style": {
"navigationBarTitleText": "学车进度",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "carLearnHours/carLearnHours",
"style": {
"navigationBarTitleText": "学车进度",
"navigationStyle": "custom",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}
},
{
"path": "carData/carData", "path": "carData/carData",
"style": { "style": {
"navigationBarTitleText": "我的数据", "navigationBarTitleText": "我的数据",

127
pages/indexEntry/enroll/enroll.vue

@ -0,0 +1,127 @@
<template>
<view class="pageBgImg">
<topNavbar title="学员报名"></topNavbar>
<view class="pad">
<view class="card">
<view class="row">
<view class="lab">证件类型</view>
<view class="rightCon">
<view class="val">
<input v-model="form.typeName" placeholder="请选择" class="input1" @click="showType=true" disabled/></input>
</view>
<view class="icon">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
<view class="row" v-if="form.type==2">
<view class="lab">国籍</view>
<view class="rightCon">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showType=true" disabled/></input>
</view>
<view class="icon">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
<view class="row" v-if="form.type==2||form.type==3">
<view class="lab">证件号码</view>
<view class="rightCon">
<view class="val">
<input v-model="form.a" placeholder="请输入" /></input>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">实名认证</view>
<view class="rightCon">
<view class="val">待认证</view>
</view>
</view>
</view>
<view class="btnBg" @click="$goPage('/pages/indexEntry/enroll/uploadAvatar/uploadAvatar')">下一步</view>
</view>
<u-picker :show="showType" :columns="typeArr" keyName="lab" @confirm="confirmType" @cancel="showType=false"></u-picker>
</view>
</template>
<script>
export default {
data() {
return {
form: {
type: 1,
typeName: ''
},
showType: false,
typeArr: [
[
{lab: '居民身份证',id: 1},
{lab: '外国人永久居留身份证',id: 2},
{lab: '军官证',id: 3},
]
],
}
},
methods: {
confirmType(val) {
let item = val.value[0]
this.form.type = item.id
this.form.typeName = item.lab
this.showType = false
}
}
}
</script>
<style>
.input1::placeholder {
color: red !important;
}
</style>
<style lang="scss" scoped>
.card {
padding: 10rpx 46rpx 10rpx 32rpx;
margin-bottom: 20rpx;
.row {
height: 100rpx;
display: flex;
align-items: center;
.lab {
width: 152rpx;
}
.rightCon {
flex: 1;
width: 0;
display: flex;
.val {
flex: 1;
width: 0;
input {
font-size: 28rpx;
}
}
.icon {
width: 30rpx;
height: 30rpx;
u-icon {
}
}
}
}
}
.btnBg {
width: 396rpx;
margin: 100rpx auto 0 auto;
}
</style>

95
pages/indexEntry/enroll/payment/payment.vue

@ -0,0 +1,95 @@
<template>
<view class="pageBgImg">
<topNavbar title="支付订单"></topNavbar>
<view class="pad">
<view class="card">
<view class="orderInfo">
<view class="schoolName">翔力驾校</view>
<view class="price">
<text class="uint"></text>1000.13
</view>
<view class="num">交易单号65465879312</view>
</view>
</view>
<view class="card">
<view class="pay">
<view class="h2">选择支付方式</view>
<view class="row">
<view class="wxIcon">
<image src="@/static/images/index/wxicon.png" mode=""></image>
</view>
<view class="text">微信支付</view>
<view class="icon">
<u-icon name="arrow-right" size="14" color="#686B73" ></u-icon>
</view>
</view>
</view>
</view>
<view class="btnBg">确认支付</view>
</view>
</view>
</template>
<script>
</script>
<style lang="scss" scoped>
.card {
width: 100%;
margin-bottom: 20rpx;
.orderInfo {
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 306rpx;
.schoolName {
font-size: 24rpx;
color: #333;
}
.price {
font-size: 72rpx;
font-weight: 600;
padding: 30rpx 0 30rpx 0;
text.uint {
font-size: 44rpx;
font-weight: 600;
}
}
.num {
font-size: 24rpx;
color: #ADADAD;
}
}
}
.pay {
padding: 40rpx 48rpx;
.h2 {
font-size: 32rpx;
font-weight: 500;
margin-bottom: 24rpx;
}
.row {
display: flex;
justify-content: space-between;
align-items: center;
.wxIcon {
width: 48rpx;
height: 48rpx;
}
.text {
margin-left: 20rpx;
flex: 1;
text-align: left;
}
}
}
.btnBg {
margin: 100rpx auto;
width: 396rpx;
}
</style>

95
pages/indexEntry/enroll/registInfo/comp/comfigPopup.vue

@ -0,0 +1,95 @@
<template>
<view class="box">
<view class="h3">再次确认报名信息</view>
<view class="li">
<view class="lab">选择驾校</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">选择车型</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">选择班型</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">选择教练</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">业务类型</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">是否异地转入</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">合计</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">支付形式</view>
<view class="val">xxx</view>
</view>
<view class="li">
<view class="lab">待支付金额</view>
<view class="val">xxx</view>
</view>
<view class="btn_row">
<view class="btnBorder btn" @click="comfigClick(0)">返回修改</view>
<view class="btnBg btn" @click="comfigClick(1)">确认</view>
</view>
</view>
</template>
<script>
export default {
props: ['info'],
methods: {
comfigClick(val) {
this.$emit('comfigClick', val)
}
}
}
</script>
<style lang="scss" scoped>
.box {
padding: 34rpx 32rpx 46rpx 50rpx;
font-size: 28rpx;
width: 638rpx;
.li {
display: flex;
padding: 22rpx 0;
.lab {
color: #686B73;
width: 230rpx;
}
.val {
font-weight: 500;
}
}
}
.h3 {
font-size: 36rpx;
font-weight: 600;
margin-bottom: 32rpx;
text-align: center;
}
.li {
padding: 20rpx 0;
}
.btn_row {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 80rpx;
width: 100%;
.btn {
width: 48%;
}
}
</style>

364
pages/indexEntry/enroll/registInfo/registInfo.vue

@ -0,0 +1,364 @@
<template>
<view class="pageBgImg">
<topNavbar title="报名信息确认"></topNavbar>
<view class="pad">
<view class="card">
<view class="row">
<view class="lab">扫描教练二维码</view>
<view class="rightCon">
<view class="scan">扫一扫</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">选择驾校</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">选择车型</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">选择班型</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">选择教练</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">业务类型</view>
<view class="rightCon">
<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.id"
>
</u-radio>
</u-radio-group>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">是否异地转入</view>
<view class="rightCon" style="margin-left: 40rpx;">
<u-radio-group
v-model="form.radiovalue2"
@change="changeVal"
>
<u-radio
:customStyle="{marginRight: '24rpx'}"
v-for="(item, index) in radiolist2"
:key="item.id"
:label="item.name"
:name="item.id"
>
</u-radio>
</u-radio-group>
</view>
</view>
</view>
<view class="card" v-if="form.radiovalue1==2">
<view class="row">
<view class="lab">原驾驶证号</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">驾驶证初领日期</view>
<view class="rightCon" style="margin-left: 56rpx;">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">原准驾车型</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
</view>
<view class="card" v-if="form.radiovalue2==2">
<view class="row">
<view class="lab">来源城市</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">已过科目</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">待学科目</view>
<view class="rightCon">
<view class="row">
<view class="val">
<input v-model="form.classModel" placeholder="请选择" @click="showSchool=true" disabled/></input>
</view>
<view class="arrow">
<u-icon name="arrow-right" size="14" color="#686B73" style="margin-left: 12rpx;" ></u-icon>
</view>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">学费</view>
<view class="rightCon">
<view class="row">
<view class="val">100</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">代收费</view>
<view class="rightCon">
<view class="row">
<view class="val">100</view>
</view>
</view>
</view>
<view class="row">
<view class="lab">合计</view>
<view class="rightCon">
<view class="row">
<view class="val blue">100</view>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">支付形式</view>
<view class="rightCon">
<u-radio-group
v-model="form.radiovalue3"
>
<u-radio
:customStyle="{marginRight: '24rpx'}"
v-for="(item, index) in radiolist3"
:key="index"
:label="item.name"
:name="item.name"
>
</u-radio>
</u-radio-group>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">优惠券</view>
<view class="rightCon">
<view class="row">
<view class="val red">-1000</view>
</view>
</view>
</view>
</view>
<view class="card">
<view class="row">
<view class="lab">待支付金额</view>
<view class="rightCon">
<view class="row">
<view class="val blue">100</view>
</view>
</view>
</view>
</view>
<view class="btnBg" @click="confirmClick">确认</view>
</view>
<u-popup :show="showPopup" mode="center" :round="8" >
<comfigPopup @comfigClick="comfigClick"/>
</u-popup>
</view>
</template>
<script>
import comfigPopup from './comp/comfigPopup'
export default {
components: { comfigPopup },
data() {
return {
showPopup: false,
form: {
radiovalue2: 1,
radiovalue1: 1,
},
showSchool: false,
radiolist1: [ {name: '初领', id: 1}, {name: '增驾', id: 2}],
radiolist2: [ {name: '是', id: 1}, {name: '否', id: 2}],
radiolist3: [ {name: '全款', id: 1}, {name: '预付款', id: 2}]
}
},
methods: {
changeVal(val) {
console.log(val)
},
//
confirmClick() {
this.showPopup = true
},
comfigClick(val) {
console.log(val)
this.showPopup = false
if(val) {
this.$goPage('/pages/indexEntry/enroll/signContract/signContract')
}
}
}
}
</script>
<style lang="scss" scoped>
.pad {
padding-bottom: 66rpx;
}
.card {
padding: 10rpx 40rpx 10rpx 32rpx;
margin-bottom: 20rpx;
.row {
height: 100rpx;
display: flex;
align-items: center;
width: 100%;
.lab {
width: 152rpx;
line-height: 100rpx;
white-space: nowrap;
}
.scan {
margin-left: auto;
width: 130rpx;
height: 60rpx;
background: rgba(25,137,250,0.1);
border-radius: 8rpx;
border: 2rpx solid #1989FA;
background: #E8F3FE;
text-align: center;
line-height: 60rpx;
color: $themC;
}
.rightCon {
flex: 1;
width: 0;
display: flex;
.val {
flex: 1;
width: 0;
input {
font-size: 28rpx;
}
&.blue {
color: $themC;
}
&.red {
color: #FF6A2A;
}
}
.icon {
width: 30rpx;
height: 30rpx;
u-icon {
}
}
}
}
}
.btnBg {
width: 396rpx;
margin: 100rpx auto 0 auto;
}
</style>

29
pages/indexEntry/enroll/signContract/signContract.vue

@ -0,0 +1,29 @@
<template>
<view class="pageBgImg">
<topNavbar title="签署合同"></topNavbar>
<view class="pad">
<view class="card">
<view class="h2">教学合同</view>
</view>
<view class="btnBg" @click="$goPage('/pages/indexEntry/enroll/payment/payment')">同意并签字确认</view>
</view>
</view>
</template>
<script>
</script>
<style lang="scss" scoped>
.card {
.h2 {
min-height: 800rpx;
text-align: center;
padding: 40rpx 0;
}
}
.btnBg {
width: 396rpx !important;
margin: 100rpx auto 100rpx auto;
}
</style>

114
pages/indexEntry/enroll/uploadAvatar/uploadAvatar.vue

@ -0,0 +1,114 @@
<template>
<view class="pageBgImg">
<topNavbar title="上传头像"></topNavbar>
<view class="pad">
<view class="card">
<view class="h2">请上传或拍摄一张五官清晰的照片</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 class="btnBg" @click="$goPage('/pages/indexEntry/enroll/registInfo/registInfo')">上传</view>
</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 {
}
},
methods: {
//
chooseImages(type) {
uni.chooseImage({
count: 1, //
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>
.card {
display: flex;
align-items: center;
flex-direction: column;
.h2 {
padding: 126rpx 0 84rpx 0;
font-size: 36rpx;
font-weight: 600;
}
}
.phone {
border: 2rpx dashed #CDCED0;
width: 290rpx;
height: 290rpx;
border-radius: 16rpx;
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;
}
}
.btnBg {
width: 396rpx;
margin: 130rpx 0;
}
</style>

128
pages/mineEntry/carLearProgress/carLearProgress.vue

@ -0,0 +1,128 @@
<template>
<view class="pageBgImg">
<topNavbar title="学车进度"></topNavbar>
<scroll-view class="scroll-view_w" scroll-x="true" @scroll="scroll" >
<view class="tabs">
<view class="tab" v-for="(item,index) in tabData" :key="index" @click="changeTab(item)" :class="{active: currentTab==item.id}">{{ item.text }}</view>
<view class="rightPad"></view>
</view>
</scroll-view>
<view class="pad learnStatus">
<view class="card">
<view class="flex-b">
<view class="lab">模拟器训练学时报审</view>
<view class="date">2023/08/09 22:52:12</view>
</view>
<view class="flex-b bg">
<view class="row">
<view class="text">评价模拟器教学老师</view>
<view class="btn" @click="$goPage('/pages/carEntry/evaluate/evaluate')">去评价</view>
</view>
</view>
</view>
<view class="card">
<view class="flex-b">
<view class="lab">模拟器训练已预约</view>
<view class="date">2023/08/09 22:52:12</view>
</view>
<view class="bg">
<view class="row">
<view class="text">模拟驾驶馆某某模拟驾驶馆</view>
</view>
<view class="row">
<view class="text">模拟器编号00001</view>
</view>
<view class="row">
<view class="text">预约时间2023/08/23 10:00:00</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
tabData: [{
text: '全部',
id: -1
},
{
text: '模拟器',
id: 0
},
{
text: '科目一',
id: 1
},
{
text: '科目二',
id: 2
},
{
text: '科目三',
id: 3
},
{
text: '科目四',
id: 4
},
],
currentTab: -1,
}
},
methods: {
scroll() {
},
changeTab(val) {
this.currentTab = val.id
}
}
}
</script>
<style lang="scss" scoped>
@import '../../tabbar/learnCar/comp/comp.scss';
.scroll-view_w {
width: 100%;
.tabs {
display: flex;
flex-wrap: nowrap;
padding: 0 0rpx 0 32rpx;
width: auto;
.tab {
width: 108rpx;
height: 60rpx;
border-radius: 8rpx;
border: 2rpx solid #FFFFFF;
font-size: 28rpx;
color: #fff;
text-align: center;
line-height: 60rpx;
margin-right: 28rpx;
flex-shrink: 0;
&.active {
background-color: #fff;
color: $themC;
}
&.all {
width: 96rpx;
}
}
.rightPad {
min-width: 10rpx;
height: 60rpx;
}
}
}
.learnStatus {
margin-top: 24rpx;
}
</style>

98
pages/mineEntry/carLearnHours/carLearnHours.vue

@ -0,0 +1,98 @@
<template>
<view class="pageBgImg">
<topNavbar title="学车学时"></topNavbar>
<view class="pad">
<view class="box">
<view class="h2">模拟器</view>
<view class="con">
<view class="item_row">
<view class="item">
<view class="lab">总学时</view>
<view class="val">100分钟</view>
</view>
<view class="item">
<view class="lab">已完成</view>
<view class="val">90分钟</view>
</view>
</view>
</view>
<view class="chain left">
<image src="@/static/images/index/chain.png" mode=""></image>
</view>
<view class="chain right">
<image src="@/static/images/index/chain.png" mode=""></image>
</view>
</view>
</view>
</view>
</template>
<script>
</script>
<style lang="scss" scoped>
.box {
width: 100%;
height: 400rpx;
background: #FFFFFF;
box-shadow: inset 0px 2px 6px 0px rgba(255,255,255,0.5);
border-radius: 16px;
border: 4rpx solid #A6E2FF;
// border-image: linear-gradient(134deg, rgba(166, 226, 255, 1), rgba(114, 199, 247, 1), rgba(208, 228, 255, 1)) 4 4;
border-radius: 16rpx;
padding: 0 16rpx 52rpx 16rpx;
overflow: hidden;
position: relative;
.h2 {
width: 489rpx;
height: 75rpx;
margin: 0 auto;
text-align: center;
background-color: #A6E2FF;
color: #fff;
font-size: 32rpx;
font-weight: 600;
}
.con {
background-color: #F3F8FE;
height: 256rpx;
background: linear-gradient(180deg, #99C2F4 0%, #3A89EB 100%);
border-radius: 16rpx;
.item_row {
display: flex;
width: 100%;
height: 100%;
.item {
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
.lab {
font-size: 28rpx;
color: #363A44;
}
.val {
margin-top: 26rpx;
font-size: 40rpx;
color: $themC;
}
}
}
}
.chain {
width: 28rpx;
height: 100rpx;
position: absolute;
top: -34rpx;
&.left {
left: 60rpx;
}
&.right {
right: 60rpx !important;
}
}
}
</style>

1
pages/tabbar/index/index.vue

@ -112,6 +112,7 @@
entrySection: [{ entrySection: [{
text: '我要报名', text: '我要报名',
icon: require('../../../static/images/index/ic_baoming.png'), icon: require('../../../static/images/index/ic_baoming.png'),
url: '/pages/indexEntry/enroll/enroll'
}, },
{ {
text: '找驾校', text: '找驾校',

5
pages/tabbar/mine/index.vue

@ -33,7 +33,7 @@
<view class="text">科目一考试通过</view> <view class="text">科目一考试通过</view>
<view class="tag">当前进度</view> <view class="tag">当前进度</view>
</view> </view>
<view class="progBtn">进度查询</view>
<view class="progBtn" @click="$goPage('/pages/mineEntry/carLearProgress/carLearProgress')">进度查询</view>
</view> </view>
</view> </view>
</view> </view>
@ -51,7 +51,7 @@
<view class="business "> <view class="business ">
<view class="h1">业务办理</view> <view class="h1">业务办理</view>
<view class="card"> <view class="card">
<view class="item" v-for="(item,index) in businessEntry" :key="index">
<view class="item" v-for="(item,index) in businessEntry" :key="index" @click="$goPage(item.url)">
<view class="icon"> <view class="icon">
<image :src="item.icon" mode=""></image> <image :src="item.icon" mode=""></image>
</view> </view>
@ -106,6 +106,7 @@
{ {
text: '学时查询', text: '学时查询',
icon: require('../../../static/images/userCenter/ic_chaxun.png'), icon: require('../../../static/images/userCenter/ic_chaxun.png'),
url: '/pages/mineEntry/carLearnHours/carLearnHours'
}, },
{ {
text: '同城转校', text: '同城转校',

BIN
static/images/index/wxicon.png

After

Width: 48  |  Height: 48  |  Size: 1.7 KiB

Loading…
Cancel
Save