driver-manage/pages/teacher/index.vue

488 lines
9.9 KiB
Vue
Raw Normal View History

2024-08-28 11:51:49 +08:00
<template>
<view class="content">
<!-- @click="show = true" -->
<view class="top-box">
<view class="touxiang">
<!-- <image :src="imageUrl+schoolInfo.photo" mode=""></image> -->
<image src="../../static/imgs/mm.jpg" mode=""></image>
</view>
<view class="">安教练</view>
</view>
<view class="three-box">
<view class="s-box">
<view class="b-size">{{dataInfo.idRecordNumber}}</view>
<view class="s-size">预约人数</view>
</view>
<view class="s-box">
<view class="b-size">{{dataInfo.stuNumber}}</view>
<view class="s-size">学员人数</view>
</view>
<view class="s-box">
<view class="b-size">{{dataInfo.isPayNumber}}</view>
<view class="s-size">账单数</view>
</view>
</view>
<!-- <view class="jg-box">
<view class="title-t">订单数据</view>
<view class="three-box" style="padding: 10px 0px;">
<view class="s-box">
<view class="b-size" style="color: #000;">{{dataInfo.idRecordNumber}}</view>
<view class="s-size" style="color: #999999;">已报名</view>
</view>
<view class="s-box">
<view class="b-size" style="color: #000;">{{dataInfo.isPayNumber}}</view>
<view class="s-size" style="color: #999999;">已付款</view>
</view>
<view class="s-box">
<view class="b-size" style="color: #000;">{{dataInfo.isSignNumber}}</view>
<view class="s-size" style="color: #999999;">已面签</view>
</view>
</view>
</view> -->
<view class="jg-box">
<view class="title-t">业务板块</view>
<view class="three-box" style="padding: 10px 0px;">
<view class="si-box" @click="golist()">
<image src="../../static/imgs/jg1.png" mode=""></image>
<view class="">预约记录</view>
</view>
<view class="si-box" @click="gocadetManage()">
<image src="../../static/imgs/jg2.png" mode=""></image>
<view class="">学员管理</view>
</view>
<view class="si-box" @click="goOrder()">
<image src="../../static/imgs/jg3.png" mode=""></image>
<view class="">账单管理</view>
</view>
<view class="si-box" @click="gosetUp()">
<image src="../../static/imgs/jg4.png" mode=""></image>
<view class="">个人信息</view>
</view>
</view>
</view>
<view class="jg-box" style="display: flex;align-items: center; justify-content: space-between; "
@click="goactive()">
<view class="title-t">最近活跃</view>
<view class="">
<uni-icons type="fire-filled" color="red" size="24px"></uni-icons>
</view>
</view>
<view class="box-bo-lv" @click="golist()">
<view class="">预约记录</view>
<view class="d-s">
<view class="">更多</view>
<u-icon name="arrow-right" color="#999999" size="12"></u-icon>
</view>
</view>
<view class="con">
<u-empty mode="list" v-if="courseList.length == 0">
</u-empty>
<view class="f-box" v-for="(item,index) in courseList" :key="index">
<view class="f-top">{{item.createTime}}</view>
<view class="f_title">
<!-- {{item.driveSchoolPay.driveSchoolCourse.automatic}} -->
</view>
<view class="wrap-box">
<!-- <view class="icon-lv">{{item.driveSchoolPay.driveSchoolCourse.license}}</view>
<view class="icon-huang">{{item.driveSchoolPay.driveSchoolCourse.name}}</view> -->
</view>
<view class="f-ds">
<view class="hui-">预约人</view>
<view class="hei-">{{item.userName}}</view>
</view>
<view class="f-ds">
<view class="hui-">所属教练</view>
<view class="hei-">{{item.coachName}}</view>
</view>
</view>
</view>
<u-popup :show="show" :round="10" mode="bottom" @close="close" @open="open">
<view class="popup-bottom">
<view class="popup-top">
<view class="p-l">取消</view>
<view class="p-t">经营状态</view>
<view class="p-r">保存</view>
</view>
<view class="p-hang">
<view class="">经营状态</view>
<view class="p-ds">
<view class=""> 08:00</view>
<u-icon name="arrow-right" color="#999999" size="14"></u-icon>
</view>
</view>
<view class="p-hang" @click="showtime1 = true">
<view class="">营业时间</view>
<view class="p-ds">
<view class=""> 08:00</view>
<u-icon name="arrow-right" color="#999999" size="14"></u-icon>
</view>
</view>
<view class="p-hang">
<view class="">结束时间</view>
<view class="p-ds">
<view class=""> 08:00</view>
<u-icon name="arrow-right" color="#999999" size="14"></u-icon>
</view>
</view>
</view>
</u-popup>
</view>
</template>
<script>
import request from '../../utils/request'
export default {
data() {
return {
imageUrl: this.$imagesUrl,
value1: ',',
showtime1: false,
showtime: false,
show: false,
schoolInfo: {},
dataInfo: {},
courseList: []
}
},
onPullDownRefresh() {
console.log("刷新");
uni.stopPullDownRefresh()
},
onReachBottom() {
// this.show = true
setTimeout(() => {
console.log("加载执行");
}, 2000)
},
onLoad() {
this.getUserInfo()
this.getDataInfo()
this.findCourseList()
},
methods: {
async findCourseList() {
let res = await request({
url: `/drivingSchool/system/reservationCourse/applet/getReservationCourseListByUserId`,
method: 'get'
})
this.courseList = res.data
},
getUserInfo() {
request({
url: '/getJxInfo',
method: 'get'
}).then((res) => {
if (res.code == 200) {
this.schoolInfo = res.schoolInfo
uni.setStorageSync("roles", res.roles)
uni.setStorageSync("deptId", res.schoolInfo.deptId)
}
})
},
getDataInfo() {
request({
url: '/drivingSchool/system/reservationCourse/applet/getIndexData',
method: 'get'
}).then((res) => {
if (res.code == 200) {
this.dataInfo = res.data
}
})
},
open() {
// console.log('open');
},
close() {
this.show = false
// console.log('close');
},
golist() {
uni.navigateTo({
url: '/pages/teacher/ManageList'
})
},
goactive() {
uni.navigateTo({
url: '/pages/teacher/ActiveList'
})
},
goOrder() {
uni.navigateTo({
url: '/pages/teacher/orderManage'
})
},
gocadetManage() {
console.log('1');
uni.navigateTo({
url: '/pages/teacher/StudentManagement'
})
},
gojl() {
uni.navigateTo({
url: '/pages/index/CoachManage'
})
},
gokc() {
uni.navigateTo({
url: '/pages/index/courseManage'
})
},
gosetUp() {
uni.navigateTo({
url: '/pages/teacher/setUp'
})
}
}
}
</script>
<style scoped lang="scss">
.d-s {
display: flex;
align-items: center;
font-size: 12px;
color: #999999;
}
.p-ds {
display: flex;
align-items: center;
}
.con {
background: #f7f7f7;
box-sizing: border-box;
padding-bottom: 15px;
}
.content {
width: 100%;
background: linear-gradient(180deg, #4AA76F 0%, #4AA76F 20%, #f7f7f7 38%, #f7f7f7 100%);
height: 100vh;
}
.top-box {
width: 100%;
box-sizing: border-box;
padding: 15px;
display: flex;
align-items: center;
color: white;
}
.s-box {
width: 33.3%;
text-align: center;
}
.three-box {
width: 100%;
box-sizing: border-box;
padding: 15px;
display: flex;
color: white;
justify-content: space-between;
align-items: center;
}
.touxiang {
width: 56px;
height: 56px;
border-radius: 0px 0px 0px 0px;
border: 1px solid #FFFFFF;
border-radius: 50%;
overflow: hidden;
margin-right: 15px;
image {
width: 100%;
height: 100%;
}
}
.b-size {
font-weight: 600;
font-size: 24px;
color: #FFFFFF;
}
.s-size {
font-weight: 400;
font-size: 12px;
color: #FFFFFF;
}
.jg-box {
width: 95%;
background: #fff;
margin: 10px auto;
border-radius: 10px;
box-sizing: border-box;
padding: 10px;
}
.title-t {
font-weight: bold;
font-size: 16px;
color: #333333;
}
.si-box {
width: 25%;
text-align: center;
font-size: 12px;
color: #333333;
image {
width: 35px;
height: 35px;
}
}
.box-bo-lv {
width: 95%;
margin: 10px auto;
box-sizing: border-box;
padding: 15px;
display: flex;
align-items: center;
justify-content: space-between;
background: #D2EFDE;
border-radius: 6px;
}
.f-box {
width: 95%;
margin: 10px auto;
box-sizing: border-box;
padding: 10px;
background: #fff;
border-radius: 10px;
}
.f-top {
width: 100%;
box-sizing: border-box;
padding-bottom: 10px;
border-bottom: 1px solid #EEEEEE;
font-weight: bold;
font-size: 14px;
color: #FF9A1A;
}
.f_title {
font-weight: 800;
font-size: 14px;
color: #333333;
margin: 10px 0px;
}
.wrap-box {
width: 100%;
box-sizing: border-box;
display: flex;
align-items: center;
flex-wrap: wrap;
}
.icon-lv {
background: #E6F5F0;
border-radius: 2px 2px 2px 2px;
box-sizing: border-box;
padding: 5px;
font-weight: 400;
font-size: 10px;
font-size: 10px;
color: #4AA76F;
margin-right: 10px;
}
.icon-huang {
background: #FFEDD4;
border-radius: 2px 2px 2px 2px;
box-sizing: border-box;
padding: 5px;
font-weight: 400;
font-size: 10px;
font-size: 10px;
color: #EDA23A;
}
.f-ds {
display: flex;
align-items: center;
margin: 10px 0px;
}
.hui- {
font-weight: 400;
font-size: 12px;
color: #737C90;
margin-right: 10px;
}
.hei- {
font-weight: 400;
font-size: 12px;
color: #333333;
}
.popup-bottom {
width: 100%;
box-sizing: border-box;
padding: 15px;
background: #fff;
border-radius: 8px 8px 0px 0px;
}
.popup-top {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
.p-l {
font-weight: 400;
font-size: 16px;
color: rgba(0, 0, 0, 0.6);
}
.p-t {
font-weight: 600;
font-size: 18px;
color: rgba(0, 0, 0, 0.9);
}
.p-r {
text-align: right;
font-weight: 400;
font-size: 16px;
color: #4AA76F;
}
.p-hang {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
border-bottom: 1px solid #DDDDDD;
box-sizing: border-box;
padding: 15px 0px;
}
</style>