学员端小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

124 lines
2.8 KiB

<template>
<view class="pageBgImg ">
<topNavbar title="我的预报名"></topNavbar>
<view class="bg" v-if="list.length">
<view class="ul">
<view class="card" v-for="(item,index) in list" :key="index" @click="itemClickFn(item)">
<!-- 状态:0-预报名,1-已报名(待支付)2-已支付,3-已学完 -->
<view class="tps">{{ item.applyStep==3?'点击进入签约合同':'预报名成功,待支付'}}</view>
<view class="name">{{item.schoolName}}</view>
<view class="className">班型:{{item.className}}</view>
<view class="flexB">
<view class="date">
{{$u.timeFormat(item.applyDate, 'yyyy-mm-dd hh:MM:ss')}}
</view>
<view class="deleteBtn" @click.stop="deleteFn(item.trainingApplyId)">
删除
</view>
</view>
</view>
</view>
</view>
<nodata v-else></nodata>
<u-loadmore :status="status" style="margin-top: 32rpx;" v-if="list.length>5" icon-type="circle" />
</view>
</template>
<script>
import { trainingApplyList, trainingApplyDelete } from "@/config/api.js"
export default {
data() {
return {
list: [],
status: 'loadmore',
}
},
onLoad() {
this.trainingApplyListFn()
},
onPullDownRefresh() {
this.trainingApplyListFn()
},
methods: {
async trainingApplyListFn() {
const {data: res} = await trainingApplyList({studentId: this.studentId})
this.list = res
},
async deleteFn(id) {
const res = await trainingApplyDelete({id})
if(res.code==0) {
this.$u.toast('删除成功')
}
this.trainingApplyListFn()
console.log(res)
},
itemClickFn(item) {
if(item.applyStep==3) {
this.$goPage('/pages/indexEntry/enroll/signContract/signContract?schoolId='+item.trainingSchoolId)
}else if(item.applyStep==4) {
return this.$goPage('/pages/indexEntry/enroll/payment/payment')
}
}
}
}
</script>
<style lang="scss" scoped>
.pageBgImg {
width: 100%;
.tps {
width: 100%;
// height: 56rpx;
// line-height: 56rpx;
color: $themC;
padding: 0 20rpx;
text-align: right;
// background-color: #f7f7fb;
font-size: 26rpx;
}
.ul {
width: 100%;
padding: 0 30rpx;
.card{
width: 100%;
padding: 20rpx;
border-bottom: 1px solid #ededed;
margin-bottom: 24rpx;
&:last-child {
border: none;
}
.name {
font-size: 32rpx;
font-weight: 700;
padding-top: 20rpx;
}
.className {
font-size: 28rpx;
color: #666;
padding: 10rpx 0;
}
.flexB {
display: flex;
justify-content: space-between;
.date {
font-size: 24rpx;
color: #999;
}
.deleteBtn {
color: $themC;
border-radius: 8rpx;
width: 120rpx;
height: 50rpx;
line-height: 50rpx;
text-align: center;
border: 1px solid $themC
}
}
}
}
}
</style>