Browse Source

学车进度

master
unknown 7 months ago
parent
commit
dccef1c99f
  1. 2
      common/css/app.scss
  2. 3
      common/js/utils.js
  3. 5
      config/api.js
  4. 3
      config/request.js
  5. 4
      config/site.config.js
  6. 1
      config/utils.js
  7. 4
      manifest.json
  8. 7
      pages.json
  9. 9
      pages/indexEntry/consult/record/record.vue
  10. 1
      pages/indexEntry/enroll/enroll.vue
  11. 26
      pages/indexEntry/enroll/registInfo/registInfo.vue
  12. 10
      pages/indexEntry/iIndustryInfo/detail/detail.vue
  13. 2
      pages/indexEntry/signIn/signIn.vue
  14. 1
      pages/indexEntry/theory/theory.vue
  15. 53
      pages/mineEntry/carLearProgress/carLearProgress.vue
  16. 7
      pages/mineEntry/myContract/myContract.vue
  17. 4
      pages/mineEntry/refund/comp/myform.vue
  18. 6
      pages/mineEntry/schoolTransfer/schoolTransfer.vue
  19. 2
      pages/tabbar/index/index.vue
  20. 8
      pages/tabbar/learnCar/comp/topInfo.vue
  21. 4
      pages/tabbar/learnCar/index.vue
  22. 6
      pages/tabbar/mine/index.vue
  23. 18
      pages/userCenter/login/privacyAgreement/privacyAgreement.vue

2
common/css/app.scss

@ -50,7 +50,7 @@ view {
.topBg{
background: url('https://jiangxijiakao-1.oss-cn-hangzhou.aliyuncs.com/complain/2024-03-18/1710759177684-0') #F6F7FA no-repeat;
background-size: 100% ;
background-size: 100% 100%;
}
.pad {

3
common/js/utils.js

@ -124,6 +124,7 @@ const install = (Vue, vm) => {
store.commit('goLogin')
return
}
// return vm.$goPage('/pages/indexEntry/enroll/registInfo/registInfo')
// store.commit('updateNonPlatformStudent', false)
if( vm.vuex_userInfo.applyStep<2) {
vm.$goPage('/pages/indexEntry/enroll/enroll')
@ -135,7 +136,7 @@ const install = (Vue, vm) => {
if(vm.vuex_userInfo.applyStep>5) {
uni.$u.toast('您已是报名学员')
}
// 报名进度(0:待报名,1:已选驾校,2:已实名制,3:已填写报名信息,4:已签署合同,5:待支付,6:已支付)
}
let isImagePath = (path)=> {

5
config/api.js

@ -214,6 +214,11 @@ export const monthSignRecord = (data) => http.post('business/student/sign/monthS
export const signDetail = (data) => http.post('business/student/sign/signDetail', data)
// 学时确认
export const periodConfirm = (data) => http.post('app/student-process/periodConfirm', data)
// 获得学员动态
export const getStudentDynamics = (data) => http.post('app/student-dynamic/getStudentDynamics', data)

3
config/request.js

@ -57,7 +57,8 @@ module.exports = (vm) => {
}
}
if(data.code==401) {
console.log('报401的接口')
console.log(response.config.url)
vm.$store.commit('goLogin', true)
}

4
config/site.config.js

@ -2,7 +2,9 @@ const VUE_APP_PLATFORM = process.env.VUE_APP_PLATFORM;
// localIp = false
module.exports = {
H5_API: VUE_APP_PLATFORM === 'h5' ? '/api' : '',//h5代理
WX_API: VUE_APP_PLATFORM === 'h5' ? '/' : 'http://192.168.1.43:8318/',//非代理地址
// WX_API: VUE_APP_PLATFORM === 'h5' ? '/' : 'http://192.168.1.37:8318/',//非代理地址
WX_API: VUE_APP_PLATFORM === 'h5' ? '/' : 'http://work.lyjppt.com:8099/',//非代理地址
website: 'http://192.168.1.37',
httpPrefix: 'app-api/',
imgUrl: 'https://jiangxijiakao-1.oss-cn-hangzhou.aliyuncs.com/defaultImages/app/bigImg/'

1
config/utils.js

@ -194,6 +194,7 @@ export function uploadImgApi(filePath, imgName, imgLink='image') {
_this.$store.commit('updateSchool', {})
_this.$store.commit('upDateSchoolCoach', item)
}else {
obj.schoolName = decodeURIComponent(obj.schoolName)
_this.$store.commit('upDateSchoolCoach', {})
_this.$store.commit('updateSchool', item)
}

4
manifest.json

@ -2,8 +2,8 @@
"name" : "洛阳学车",
"appid" : "__UNI__3347C6E",
"description" : "",
"versionName" : "1.1.2",
"versionCode" : 112,
"versionName" : "1.1.4",
"versionCode" : 114,
"transformPx" : false,
/* 5+App */
"app-plus" : {

7
pages.json

@ -493,8 +493,6 @@
"backgroundTextStyle": "dark"
}
}
]
},
@ -513,8 +511,9 @@
{
"path": "login/privacyAgreement/privacyAgreement",
"style": {
"navigationBarTitleText": "登录",
"navigationStyle": "custom",
"navigationBarTitleText": "",
// "navigationStyle": "custom",
"navigationBarBackgroundColor": "#fff",
"enablePullDownRefresh": false,
"backgroundTextStyle": "dark"
}

9
pages/indexEntry/consult/record/record.vue

@ -2,21 +2,22 @@
<view class="pageBg">
<view class="topBg ">
<topNavbar title="投诉咨询记录"></topNavbar>
<view class="pad">
<view class="tabs">
<view class="tab" v-for="(item,index) in tabList" :key="index" :class="{active: params.type==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: params.dealStatus==item.id}" @click="changeNav(item)">{{ item.text }}</view>
</view>
</view>
</view>
<view class="pad">
<view class="recordTotal" v-if="total">{{ total }}条记录</view>
<view class="tabCon" v-if="params.type==1">
<view class="card" v-for="(item,index) in list" :key="index">
<consultItem :item="item" @closeFn="initList"></consultItem>
</view>
</view>
</view>
<view class="pad">
<view class="tabCon" v-if="params.type==2">
<view class="card" v-for="(item,index) in list" :key="index">
<complaintItem :item="item" @closeFn="initList"></complaintItem>
@ -98,7 +99,7 @@
}
.topBg {
width: 100%;
padding: 0 28rpx 20rpx 28rpx;
// padding: 0 28rpx 20rpx 28rpx;
}
.tabs {
display: flex;

1
pages/indexEntry/enroll/enroll.vue

@ -206,7 +206,6 @@
verifyPlugin.verify({
certifyId,
}, function(response){
console.log('ios没来这里')
console.log(response)
if(response.retCode==1000) {
uni.showLoading({

26
pages/indexEntry/enroll/registInfo/registInfo.vue

@ -236,6 +236,7 @@
import searchSchool from './comp/searchSchool'
import oldDrive from './comp/oldDrive'
import { areaTree, applyOnline, schoolClass, getSchoolDetail } from '@/config/api.js'
import { scanCodeFn } from '@/config/utils.js'
export default {
components: { comfigPopup, searchSchool, oldDrive },
data() {
@ -539,18 +540,31 @@
scanCodeFn() {
let _this = this
uni.scanCode({
success: function(res) {
success: async function(res) {
console.log('条码类型:' + res.scanType);
console.log('条码内容:' + res.result);
let obj = JSON.parse(res.result)
if(!obj.schoolId) return false
obj.nickname = decodeURIComponent(obj.nickname)
console.log(obj.QrType)
console.log(obj.QrType==1)
if(obj.QrType==1) {
if( !obj.coachId ) {
//
obj.schoolName = decodeURIComponent(obj.schoolName)
}
_this.form.school = obj.schoolName
_this.form.schoolId = obj.schoolId
_this.form.coach = obj.nickname
_this.form.coachId = obj.id
console.log(obj)
const {data: item} = await getSchoolDetail({id: _this.form.schoolId})
_this.chooseSchool(item)
if( !obj.coachId) return
_this.form.coach = obj.coachName
_this.form.coachId = obj.coachId
if(obj.teachCarType) _this.form.trainType = obj.teachCarType.slice(0,2)
console.log(_this.form)
}else {
_this.$u.toast('报名码错误,请扫教练或驾校二维码')
}
}
});
},

10
pages/indexEntry/iIndustryInfo/detail/detail.vue

@ -6,7 +6,8 @@
<view class="tit">{{detailInfo.title}}</view>
<!-- <view class="h2">二级标题二级标题二级标题二级标题二级标题二级标题</view> -->
<view class="content">
<rich-text :nodes="detailInfo.mainBody" ></rich-text>
<!-- <rich-text :nodes="detailInfo.mainBody" ></rich-text> -->
<u-parse :content="detailInfo.mainBody" :tagStyle="style"></u-parse>
</view>
<view class="date">发布时间{{ $u.timeFormat(detailInfo.createTime, 'yyyy/mm/dd') }}</view>
</view>
@ -20,7 +21,11 @@
data() {
return {
id: '',
detailInfo: {}
detailInfo: {},
style: {
img: 'max-width:100%;height:auto',
p: 'font-size:32rpx',
}
}
},
onLoad(options) {
@ -33,6 +38,7 @@
async getarticleFn() {
const {data: res} = await getarticle({id: this.id})
this.detailInfo = res
// this.detailInfo = (res).replace(/\<img/gi, '<img style="max-width:100%;height:auto" ')
console.log(res)
}
}

2
pages/indexEntry/signIn/signIn.vue

@ -59,7 +59,7 @@
},
//
scanCodeClick() {
scanCodeFn()
scanCodeFn(this)
}
}
}

1
pages/indexEntry/theory/theory.vue

@ -38,6 +38,7 @@
this.currentId = item.id
},
goPage() {
return this.$u.toast('待确定!')
if(this.currentId==1) {
// let url = 'https://www.hzsjspx.com/theory/scienceStudy?token=amlhcGVpMTY5NTc3NzUzODg5ODA5NjU1&lat=30.343055&lng=120.183711&isUni=1'
let questionUrl = website+':93/question/'

53
pages/mineEntry/carLearProgress/carLearProgress.vue

@ -5,13 +5,13 @@
<view class="rightPad"></view>
</view>
<view class="pad learnStatus">
<view class="card">
<!-- <view class="card">
<view class="flex-b top_row">
<view class="lab">科目一阶段</view>
<view class="btn status">已完成</view>
</view>
<view class="date-row">2023-08-09 22:52:12</view>
</view>
</view> -->
<!-- <view class="card">
<view class="flex-b top_row">
<view class="lab">科目一考试</view>
@ -25,41 +25,43 @@
</view>
</view>
</view> -->
<view class="card">
<view class="card" v-for="(item,index) in list" :key="index">
<view class="flex-b top_row">
<view class="lab">科目二考试</view>
<view class="btn">已预约</view>
<view class="lab">{{item.dynamicsName}}</view>
<!-- <view class="btn">已预约</view> -->
</view>
<view class="date-row">2023-08-09 22:52:12</view>
<view class="bg">
<view class="row">
<view class="text">考试场地某某科目二考场</view>
<view class="date-row">{{item.dynamicsTime}}</view>
<view class="bg" v-if="item.examSite||item.examTime">
<view class="row" v-if="item.examSite">
<view class="text">地点{{item.examSite}}</view>
</view>
<view class="row">
<view class="text">考试时间2023-08-23 10:00:00</view>
<view class="row" v-if="item.examTime">
<view class="text">时间{{item.examTime}}</view>
</view>
</view>
</view>
<view class="card">
<!-- <view class="card">
<view class="flex-b top_row">
<view class="lab">科目一考试</view>
<view class="btn red status">未通过</view>
</view>
<view class="date-row">2023-08-09 22:52:12</view>
</view> -->
<nodata v-if="!list.length"></nodata>
</view>
</view>
</view>
</template>
<script>
import { getStudentDynamics } from '@/config/api.js'
export default {
data() {
return {
tabData: [{
text: '全部',
id: 10
id: 0
},
{
text: '科目一',
@ -78,21 +80,42 @@
id: 4
},
],
currentTab: 10,
currentTab: 1,
list: []
}
},
onShow() {
this.getStudentDynamicsFn()
},
onPullDownRefresh() {
this.getStudentDynamicsFn()
},
methods: {
scroll(e) {
console.log(e)
},
changeTab(val) {
if(this.currentTab == val.id) return
this.currentTab = val.id
this.getStudentDynamicsFn()
},
async getStudentDynamicsFn() {
let obj = {
"studentId": this.studentId,
"subject": this.currentTab,
}
if(obj.subject==0) delete obj.subject
const {data: res} = await getStudentDynamics(obj)
this.list = res
}
}
}
</script>
<style lang="scss" scoped>
.pageBg {
padding-bottom: 40rpx;
}
@import '../../tabbar/learnCar/comp/comp.scss';
.date-row {
line-height: 88rpx;

7
pages/mineEntry/myContract/myContract.vue

@ -22,11 +22,18 @@
this.selectContractPdfBase64Fn()
},
methods: {
async selectContractPdfBase64Fn() {
uni.showLoading({
title: '正在加载……'
})
const {data: res} = await selectContractPdfBase64({studentId: this.studentId})
this.pdfUrl = res
console.log('this.pdfUrl')
console.log(this.pdfUrl)
setTimeout(()=>{
uni.hideLoading()
},800)
},
}

4
pages/mineEntry/refund/comp/myform.vue

@ -49,9 +49,9 @@
<view class="inputBox">
<u--input placeholder="请输入" border="none" clearable v-model="FormData.idCard"></u--input>
</view>
<view class="scan" @click="scanningBanksClick">
<!-- <view class="scan" @click="scanningBanksClick">
<image src="@/static/images/userCenter/btn_yinhangkax.png" mode=""></image>
</view>
</view> -->
</view>
</view>
</view>

6
pages/mineEntry/schoolTransfer/schoolTransfer.vue

@ -16,7 +16,7 @@
<u--input placeholder="请输入" border="none" clearable type="number" maxlength="11" v-model="FormData.phone"></u--input>
</view>
</view>
<view class="tpsBlue">退款金额不可超过¥2000.00</view>
<!-- <view class="tpsBlue">退款金额不可超过¥2000.00</view> -->
</view>
<view class="card">
<view class="row">
@ -49,9 +49,9 @@
<view class="inputBox">
<u--input placeholder="请输入" border="none" clearable type="number" maxlength="11" v-model="FormData.phone"></u--input>
</view>
<view class="scan">
<!-- <view class="scan">
<image src="@/static/images/userCenter/btn_yinhangkax.png" mode=""></image>
</view>
</view> -->
</view>
</view>
</view>

2
pages/tabbar/index/index.vue

@ -271,6 +271,8 @@
this.$store.commit('upDateSchoolClass', {})
this.$store.commit('updateSchool', {})
return this.$u.utils.clickSignUp()
}else if(item.text=='签到签退') {
if(this.vuex_userInfo.applyStep<6) return this.$u.toast('请先报名学员')
}
this.$goPage(item.url)
},

8
pages/tabbar/learnCar/comp/topInfo.vue

@ -5,8 +5,8 @@
<image :src="vuex_userInfo.photoPath" mode="widthFix" v-if="vuex_userInfo.photoPath"></image>
</view>
<view class="rightTxt">
<view style="display: flex;align-items: center;">
<view class="name" @click="topClick">{{ vuex_userInfo.name?vuex_userInfo.name:vuex_userInfo.phone?vuex_userInfo.phone:'请先登录 ' }}</view>
<view style="display: flex;align-items: center;" @click="topClick">
<view class="name">{{ vuex_userInfo.name?vuex_userInfo.name:vuex_userInfo.phone?vuex_userInfo.phone:'点击跳转到登录 ' }}</view>
<view class="arrowRight" >
<u-icon name="arrow-right" color="#333" size="14" style="margin-top: 4rpx;"></u-icon>
</view>
@ -129,8 +129,8 @@
align-items: center;
justify-content: center;
background: $themC;
width: 150rpx;
height: 50rpx;
width: 160rpx;
height: 60rpx;
color: #fff;
border-radius: 10rpx;
font-size: 24rpx;

4
pages/tabbar/learnCar/index.vue

@ -28,8 +28,8 @@
data() {
return {
curObject: {
name: '科目',
id: 2,
name: '科目',
id: 1,
},
dynamics: {},
subjectStatus: {

6
pages/tabbar/mine/index.vue

@ -83,9 +83,9 @@
if(item.name=='我的订单'&&this.vuex_userInfo.applyStep>2&&this.vuex_userInfo.applyStep<6) {
return this.$goPage('/pages/mineEntry/myForecastName/myForecastName')
}
// if(this.vuex_userInfo.applyStep!=6) {
// return this.$u.toast('')
// }
if(this.vuex_userInfo.applyStep!=6) {
return this.$u.toast('您还未报名驾校')
}
}
this.$goPage(item.url)
},

18
pages/userCenter/login/privacyAgreement/privacyAgreement.vue

@ -15,15 +15,15 @@
},
onLoad(options) {
this.type = options.type
if(this.type==1) {
uni.setNavigationBarTitle({
title: '隐私政策'
})
}else {
uni.setNavigationBarTitle({
title: '用户使用协议'
})
}
// if(this.type==1) {
// uni.setNavigationBarTitle({
// title: ''
// })
// }else {
// uni.setNavigationBarTitle({
// title: '使'
// })
// }
this.getAgreementFn()
},
methods: {

Loading…
Cancel
Save