wkyy 2 years ago
parent
commit
3bed81550d

+ 18 - 0
apis/parents/homePage.js

@@ -1,6 +1,24 @@
 import requestStudent from '@/apis/utils/request.js';
 import Qs from 'qs';
 
+export function loadCoursesForHomeShow(data) {
+	var url='/mobile/student/loadCoursesForHomeShow';
+	return requestStudent({
+		method: 'post',
+		data: data,
+		url: url
+	})
+}
+
+export function findByCatalogName(data) {
+	var url='/sys/dataDictionary/findByCatalogName';
+	return requestStudent({
+		method: 'post',
+		data: data,
+		url: url
+	})
+}
+
 export function getMyLastSchedules(data) {
 	var url='/mobile/student/getMyLastSchedules';
 	return requestStudent({

+ 18 - 0
apis/parents/mine.js

@@ -1,6 +1,24 @@
 import requestStudent from '@/apis/utils/request.js';
 import Qs from 'qs';
 
+export function loadCourseRollcall(data) {
+	var url='/mobile/student/loadCourseRollcall';
+	return requestStudent({
+		method: 'post',
+		data: data,
+		url: url
+	})
+}
+
+export function loadMyCourses(data) {
+	var url='/mobile/student/loadMyCourses';
+	return requestStudent({
+		method: 'post',
+		data: data,
+		url: url
+	})
+}
+
 export function getStudentDtl(data) {
 	var url='/mobile/student/getStudentDtl';
 	return requestStudent({

+ 102 - 99
pages/parents/homePage/homePage.vue

@@ -45,7 +45,7 @@
 						请假
 					</view>
 				</view>
-				<view class="item">
+				<view class="item" @click="toMyCourses">
 					<view class="icon-box"
 						style="background: linear-gradient(180deg, rgba(91,160,242,1) 1%,rgba(26,118,226,1) 100%);">
 						<img src="../../../assets/img/riFill-book-open-fill@1x.png" alt="">
@@ -166,111 +166,43 @@
 					:class="chosenActive == index ? 'chosen' : ''" @click="chosenClick(item,index)">
 					{{item.name}}
 				</view>
-				<!-- <view class="item">
-					精品试听
-				</view>
-				<view class="item">
-					为您优选
-				</view>
-				<view class="item">
-					机构推荐
-				</view> -->
 			</view>
 
-			<view class="infos-box">
-				<view class="picture">
-					<img src="../../../assets/img/classify1.png" alt="">
-				</view>
-				<view class="infos">
-					<view class="name">
-						魔方记忆力
-					</view>
-					<view class="tips">
-						<view class="item">
-							基础入门
-						</view>
-						<view class="item">
-							思维训练
-						</view>
-					</view>
-					<view class="teacher-price">
-						<view class="teacher">
-							<view class="photo">
-								<img src="../../../assets/img/teacher.png" alt="">
-							</view>
-							<view class="name">
-								鲁老师
-							</view>
-						</view>
-						<view class="price">
-							低至30元/课
-						</view>
-					</view>
-				</view>
-			</view>
-			<view class="infos-box">
-				<view class="picture">
-					<img src="../../../assets/img/classify1.png" alt="">
-				</view>
-				<view class="infos">
-					<view class="name">
-						跆拳道
-					</view>
-					<view class="tips">
-						<view class="item">
-							强身健体
-						</view>
-						<view class="item">
-							磨练意志
-						</view>
-					</view>
-					<view class="teacher-price">
-						<view class="teacher">
-							<view class="photo">
-								<img src="../../../assets/img/teacher.png" alt="">
-							</view>
-							<view class="name">
-								鲁老师
-							</view>
-						</view>
-						<view class="price">
-							低至30元/课
-						</view>
-					</view>
+			<view class="infos-box" v-for="(item,index) in reCoursesList" :key="index">
+				<view class="picture" v-if="item.posterUrl != null">
+					<img :src="item.posterUrl" alt="">
 				</view>
-			</view>
-			<view class="infos-box">
-				<view class="picture">
+				<view class="picture" v-else>
 					<img src="../../../assets/img/classify1.png" alt="">
 				</view>
 				<view class="infos">
 					<view class="name">
-						中国舞十级班
+						{{item.courseName}}
 					</view>
 					<view class="tips">
 						<view class="item">
-							专业考证
-						</view>
-						<view class="item">
-							限时报名
+							{{item.courseDesc}}
 						</view>
+						<!-- <view class="item">
+							思维训练
+						</view> -->
 					</view>
 					<view class="teacher-price">
 						<view class="teacher">
 							<view class="photo">
-								<img src="../../../assets/img/teacher.png" alt="">
+								<img src="../../../assets/img/riLine-smartphone-line@1x.png" alt="">
 							</view>
-							<view class="name">
-								鲁老师
+							<view class="name" style="font-size: 14px;">
+								{{item.consultPhone}}
 							</view>
 						</view>
-						<view class="price">
+						<!-- <view class="price">
 							低至30元/课
-						</view>
+						</view> -->
 					</view>
 				</view>
 			</view>
-			<u-divider>没有更多了</u-divider>
+			<u-divider v-if="reCoursesList.length == recordsTotal && recordsTotal != 0" style="margin-top: 10px">没有更多了</u-divider>
 		</view>
 		<ParentsTabbar :current="0" ref="tabbarMain"></ParentsTabbar>
 	</view>
@@ -287,19 +219,12 @@
 		},
 		data() {
 			return {
-				chosenList: [{
-						name: '全部'
-					},
-					{
-						name: '精品试听'
-					},
-					{
-						name: '为您优选'
-					},
-					{
-						name: '机构推荐'
-					}
-				],
+				pageNum: 1,
+				pageSize: 5,
+				recordsTotal: 0,
+				tag: '',
+				reCoursesList: [],
+				chosenList: [],
 				chosenActive: 0,
 				day: '',
 				tomorrow: '',
@@ -323,8 +248,68 @@
 			this.tomorrow = this.getFormatDate(new Date(date.setDate(date.getDate() + 1)));
 
 			this.getStudentList();
+			this.getFindByCatalogName();
+			this.getReCoursesList();
+		},
+		onReachBottom() {
+			if (this.reCoursesList.length < this.recordsTotal) {
+				this.myLoadmore();
+			}
 		},
 		methods: {
+			myLoadmore() {
+				this.pageNum += 1;
+				this.getReCoursesList()
+			},
+			getReCoursesList(bl) {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				if (bl) {
+					this.reCoursesList = [];
+					this.pageNum = 1;
+				}
+				homePageApi.loadCoursesForHomeShow({
+					tag: this.tag,
+					pageNum: this.pageNum,
+					pageSize: this.pageSize
+				}).then((res) => {
+					uni.hideLoading();
+					this.reCoursesList = [
+						...this.reCoursesList,
+						...res.data.data
+					];
+					this.recordsTotal = res.data.recordsTotal;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			getFindByCatalogName() {
+				this.chosenList = [];
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				homePageApi.findByCatalogName({
+					catalogName: '课程分类标签'
+				}).then((response) => {
+					uni.hideLoading();
+					this.chosenList.push({id: '',name: '全部'});
+					var list = response.data;
+					for (var i = 0; i < list.length; i++) {
+						this.chosenList.push(list[i]);
+					}
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			showClick() {
 				if(this.studentList.length != 0) {
 					this.show = true;
@@ -347,6 +332,18 @@
 					})
 				}
 			},
+			toMyCourses() {
+				if(this.studentId) {
+					uni.navigateTo({
+						url: '/pages/parents/mine/myCourses'
+					})
+				} else{
+					uni.showToast({
+						title: "请先去'我的'中完善'我的子女'",
+						icon: "none"
+					})
+				}
+			},
 			toPaymentRecord() {
 				if(this.studentId) {
 					uni.navigateTo({
@@ -374,6 +371,12 @@
 			},
 			chosenClick(item, index) {
 				this.chosenActive = index;
+				if(index != 0) {
+					this.tag = item.name;
+				} else {
+					this.tag = '';
+				}
+				this.getReCoursesList(true);
 			},
 			getLatelyCourseList() {
 				uni.showLoading({
@@ -749,8 +752,8 @@
 						align-items: center;
 
 						.photo {
-							width: 32px;
-							height: 32px;
+							width: 20px;
+							height: 20px;
 							border-radius: 50px;
 							overflow: hidden;
 							margin-right: 8px;

+ 325 - 135
pages/parents/mine/classRecord.vue

@@ -1,7 +1,7 @@
 <template>
 	<view>
-		<u-navbar title="中国舞十级班" >
-		
+		<u-navbar title="中国舞十级班">
+
 		</u-navbar>
 		<!-- 头部 -->
 		<view class="header">
@@ -12,114 +12,298 @@
 				<view class="times">
 					已上 10 节 / 共 36 课次
 				</view>
-				
+
 			</view>
 			<view class="state">
 				进行中
 			</view>
-			
+
 		</view>
 		<!-- 课次 -->
 		<view class="class-times">
-		
-				   <view class="item-box" v-for="(item,index) in classList" :key="item.id">
-				   	<view class="item" >
-				   					<view class="class">
-				   					 
-									 课程&nbsp;{{item.id+=1}}
-				   					</view>
-				   					<view 
-								:class="{state0:item.state==0,state1:item.state==1,state2:item.state==2,state3:item.state==3,state4:item.state==4}">
-				   						{{item.text}}
-				   					</view>
-				   	<view class="boder-right">
-				   		
-				   	</view>
-				   				</view>
-				   </view>
-			
-			
-			
+
+			<view class="item-box" v-for="(item,index) in classList" :key="index">
+				<view class="item">
+					<view class="class">
+
+						课程&nbsp;{{item.id + 1}}
+					</view>
+					<!-- <view
+						:class="{state0:item.state==0,state1:item.state==1,state2:item.state==2,state3:item.state==3,state4:item.state==4}">
+						{{item.text}}
+					</view> -->
+					<view class="state0" v-if="item.state == 0">
+						{{item.text}}
+					</view>
+					<view class="state1" v-if="item.state == 1">
+						{{item.text}}
+					</view>
+					<view class="state2" v-if="item.state == 2">
+						{{item.text}}
+					</view>
+					<view class="state3" v-if="item.state == 3">
+						{{item.text}}
+					</view>
+					<view class="boder-right">
+
+					</view>
+				</view>
+			</view>
+
+
+
 		</view>
 	</view>
 </template>
 
 <script>
+	import * as mineApi from '@/apis/parents/mine.js'
+	
 	export default {
 		data() {
 			return {
-				classList:[
-					{id:0,class:"课程1",	state:1,text:"停课"},
-					{id:1,state:1,text:"停课"},
-					{id:2,state:1,text:"停课"},
-					{id:3,state:1,text:"停课"},
-					{id:4,state:1,text:"停课"},
-					{id:5,state:1,text:"停课"},
-					{id:6,state:2,text:"到课"},
-					{id:7,state:3,text:"旷课"},
-					{id:8,state:4,text:"请假"},
-					{id:9,state:0,},
-					{id:10,state:0,},
-					{id:11,state:0,},
-					{id:12,state:0,},
-					{id:13,state:0,},
-					{id:14,state:0,},
-					{id:15,state:0,},
-					{id:16,state:0,},
-					{id:17,state:0,},
-					{id:18,state:0,},
-					{id:19,state:0,},
-					{id:20,state:0,},
-					{id:21,state:0,},
-					{id:22,state:0,},
-					{id:23,state:0,},
-					{id:24,state:0,},
-					{id:25,state:0,},
-					{id:26,state:0,},
-					{id:27,state:0,},
-					{id:28,state:0,},
-					{id:29,state:0,},
-					{id:30,state:0,},
-					{id:31,state:0,},
-					{id:32,state:0,},
-					{id:33,state:0,},
-					{id:34,state:0,},
-					{id:35,state:0,},
-					
+				buyId: '',
+				classList: [{
+						id: 0,
+						class: "课程1",
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 1,
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 2,
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 3,
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 4,
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 5,
+						state: 1,
+						text: "停课"
+					},
+					{
+						id: 6,
+						state: 2,
+						text: "到课"
+					},
+					{
+						id: 7,
+						state: 3,
+						text: "旷课"
+					},
+					{
+						id: 8,
+						state: 4,
+						text: "请假"
+					},
+					{
+						id: 9,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 10,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 11,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 12,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 13,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 14,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 15,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 16,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 17,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 18,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 19,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 20,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 21,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 22,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 23,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 24,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 25,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 26,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 27,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 28,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 29,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 30,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 31,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 32,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 33,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 34,
+						state: 0,
+						text: ""
+					},
+					{
+						id: 35,
+						state: 0,
+						text: ""
+					},
+
 				]
-				
+
+			}
+		},
+		onLoad(op) {
+			if(op.id) {
+				this.buyId = op.id;
+				this.getLoadCourseRollcall();
 			}
 		},
 		methods: {
-			
+			getLoadCourseRollcall() {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				mineApi.loadCourseRollcall({
+					buyId: this.buyId
+				}).then((res) => {
+					uni.hideLoading();
+					// this.courseList = res.data;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			}
 		}
 	}
 </script>
 
 <style scoped lang="scss">
-	page{
+	page {
 		padding-bottom: 140rpx;
 	}
+
 	// 头部
-	.header{
-		background: linear-gradient(90deg, rgba(0,156,185,1) 0%,rgba(13,186,199,1) 100%);
+	.header {
+		background: linear-gradient(90deg, rgba(0, 156, 185, 1) 0%, rgba(13, 186, 199, 1) 100%);
 		padding: 24rpx 32rpx;
 		color: #fff;
 		display: flex;
 		align-items: center;
-		.infos{
-			.title{
+
+		.infos {
+			.title {
 				font-size: 40rpx;
 				font-family: PingFangSC-medium;
-				
+
 			}
-			.times{
+
+			.times {
 				font-family: PingFangSC-regular;
 				margin-top: 8rpx;
 			}
 		}
-		
-		.state{
+
+		.state {
 			margin-left: auto;
 			border-radius: 8rpx;
 			background-color: rgba(13, 186, 199, 1);
@@ -133,67 +317,73 @@
 			line-height: 48rpx;
 		}
 	}
- 
- // 课次
- .class-times{
-	  background-color: #F2F4F4;  
-	 
-	 display: flex;
-	 flex-wrap: wrap;
-	 
-		 .item-box{
-			 width: 33.3%;
-			 padding: 24rpx 0;
-			 background-color: #fff;
-			 margin-bottom:16rpx;
-		 }
-		
-		 .item{
-			 
-		 		 
-		 		 border-right: 1px #e8e8e8 solid;
-		 		 
-		 		 text-align: center;
-				 .class{
-					 color: rgba(51, 51, 51, 1);
-					 font-size: 32rpx;
-					 text-align: center;
-					 font-family: PingFangSC-medium;
-					 height: 44rpx;
-					 line-height: 44rpx;
-					 font-weight: bold;
-				 }
-				 .state0{
-					 margin-top: 8rpx;
-					 height: 36rpx;
-				 }
-				 .state1{
-					 color: rgba(238, 49, 56, 1);
-					 font-family: PingFangSC-regular;
-					 margin-top: 8rpx;
-					 height: 36rpx;
-				 }
-				 .state2{
-					 color: rgba(13, 186, 199, 1);
-					 font-family: PingFangSC-regular;
-					 margin-top: 8rpx;
-					 height: 36rpx;
-				 }
-				 .state3{
-					 color: rgba(255, 107, 0, 1);
-					 font-family: PingFangSC-regular;
-					 margin-top: 8rpx;
-					 height: 36rpx;
-				 }
-				 .state4{
-					 color: rgba(129, 97, 255, 1);
-					 font-family: PingFangSC-regular;
-					 margin-top: 8rpx;
-					 height: 36rpx;
-				 }
-		 }
-	 
-	
-	 
- }
+
+	// 课次
+	.class-times {
+		background-color: #F2F4F4;
+
+		display: flex;
+		flex-wrap: wrap;
+
+		.item-box {
+			width: 33.3%;
+			padding: 24rpx 0;
+			background-color: #fff;
+			margin-bottom: 16rpx;
+		}
+
+		.item {
+
+
+			border-right: 1px #e8e8e8 solid;
+
+			text-align: center;
+
+			.class {
+				color: rgba(51, 51, 51, 1);
+				font-size: 32rpx;
+				text-align: center;
+				font-family: PingFangSC-medium;
+				height: 44rpx;
+				line-height: 44rpx;
+				font-weight: bold;
+			}
+
+			.state0 {
+				margin-top: 8rpx;
+				height: 36rpx;
+			}
+
+			.state1 {
+				color: rgba(238, 49, 56, 1);
+				font-family: PingFangSC-regular;
+				margin-top: 8rpx;
+				height: 36rpx;
+			}
+
+			.state2 {
+				color: rgba(13, 186, 199, 1);
+				font-family: PingFangSC-regular;
+				margin-top: 8rpx;
+				height: 36rpx;
+			}
+
+			.state3 {
+				color: rgba(255, 107, 0, 1);
+				font-family: PingFangSC-regular;
+				margin-top: 8rpx;
+				height: 36rpx;
+			}
+
+			.state4 {
+				color: rgba(129, 97, 255, 1);
+				font-family: PingFangSC-regular;
+				margin-top: 8rpx;
+				height: 36rpx;
+			}
+		}
+
+
+
+	}
 </style>

+ 131 - 94
pages/parents/mine/myCourses.vue

@@ -1,140 +1,153 @@
 <template>
 	<view>
-		<u-navbar title="我的课程" >
-		
+		<u-navbar title="我的课程">
+
 		</u-navbar>
-		<view class="courses-box">
-			<view class="photo">
+		<view class="courses-box" v-for="(item,index) in courseList" :key="index"
+			@click="gotoUrl('pages/parents/mine/classRecord?id='+item.buyId)">
+			<view class="photo" v-if="item.posterUrl != null">
+				<img :src="item.posterUrl" alt="">
+			</view>
+			<view class="photo" v-else>
 				<img src="../../../assets/img/classschedule.png" alt="">
 			</view>
 			<view class="infos">
 				<view class="title">
 					<view class="text">
-						中国舞十级班
+						{{item.className}}
 					</view>
-					<view class="state">
+					<view class="state" v-if="item.status=='1' || item.status=='5'">
 						进行中
-
-					</view>
-					
-				</view>
-				
-				<view class="tags">
-					<view class="item">
-						二楼舞蹈一教室
-					</view>
-					<view class="item">
-						2023/2/24截止
-					</view>
-				</view>
-				
-				 <view class="teacher">
-				 	<view class="teacher-photo">
-				 		<img src="../../../assets/img/teacherC.png" alt="">
-				 	</view>
-					<view class="teacher-name">
-						陈老师
-					</view>
-					<view class="progress">
-						<u-line-progress :percent="70" :show-percent="false" active-color="#43C9D3"></u-line-progress>
-						<view class="percent">
-							20/36
-						</view>
 					</view>
-				 </view>
-				 
-			</view>
-			
-		</view>
-		
-		<view class="courses-box">
-			<view class="photo">
-				<img src="../../../assets/img/courseD.png" alt="">
-			</view>
-			<view class="infos">
-				<view class="title">
-					<view class="text">
-						中国舞十级班
-					</view>
-					<view class="state">
-						进行中
-		
+					<view class="stateClose" v-if="item.status=='2'">
+						已结课
 					</view>
-					
 				</view>
-				
 				<view class="tags">
 					<view class="item">
-						原足球场
+						{{item.classroomName}}
 					</view>
-					<view class="item">
-						2023/2/24截止
+					<view class="item" v-if="item.courseEnd != null">
+						{{item.courseEnd.replaceAll('-','/')}}截止
 					</view>
 				</view>
-				
-				 <view class="teacher">
-				 	<view class="teacher-photo">
-				 		<img src="../../../assets/img/teachercard.png" alt="">
-				 	</view>
+				<view class="teacher">
+					<view class="teacher-photo">
+						<u-avatar class="avatar"
+							:src="item.teacherPhoto != null ? item.teacherPhoto : '../../assets/img/head.png'" size="64">
+						</u-avatar>
+					</view>
 					<view class="teacher-name">
-						瞿老师
+						{{item.teacherName}}
 					</view>
 					<view class="progress">
-						<u-line-progress :percent="100" :show-percent="false" active-color="#43C9D3"></u-line-progress>
+						<u-line-progress :percent="20/(item.courseAmount+item.freeAmount)*100" :show-percent="false" active-color="#43C9D3">
+						</u-line-progress>
 						<view class="percent">
-							92/92
+							20/{{item.courseAmount+item.freeAmount}}
 						</view>
 					</view>
-				 </view>
-				 
+				</view>
 			</view>
-			
 		</view>
-		
+		<u-divider v-if="courseList.length == recordsTotal && recordsTotal != 0" style="margin-top: 10px">没有更多了</u-divider>
 	</view>
 </template>
 
 <script>
+	import * as mineApi from '@/apis/parents/mine.js'
+	
 	export default {
 		data() {
 			return {
-				
+				pageNum: 1,
+				pageSize: 5,
+				recordsTotal: 0,
+				courseList: [],
+				studentId: ''
+			}
+		},
+		onReady() {
+			if (this.carhelp.getStudentId()) {
+				this.studentId = this.carhelp.getStudentId().studentId;
+				this.getLoadMyCourses();
+			}
+		},
+		onReachBottom() {
+			if (this.courseList.length < this.recordsTotal) {
+				this.myLoadmore();
 			}
 		},
 		methods: {
-			
+			myLoadmore() {
+				this.pageNum += 1;
+				this.getLoadMyCourses();
+			},
+			getLoadMyCourses(bl) {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				if (bl) {
+					this.courseList = [];
+					this.pageNum = 1;
+				}
+				mineApi.loadMyCourses({
+					studentId: this.studentId,
+					pageNum: this.pageNum,
+					pageSize: this.pageSize
+				}).then((res) => {
+					uni.hideLoading();
+					this.courseList = [
+						...this.courseList,
+						...res.data.data
+					];
+					this.recordsTotal = res.data.recordsTotal;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			}
 		}
 	}
 </script>
 
 <style lang="scss" scoped>
-	.courses-box{
+	.courses-box {
 		display: flex;
 		padding: 24rpx;
 		background-color: #fff;
 		margin: 24rpx 32rpx 0 32rpx;
 		border-radius: 24rpx;
-		.photo{
+
+		.photo {
 			width: 100px;
 			height: 100px;
 			border-radius: 4px;
 			overflow: hidden;
-			img{
+
+			img {
 				width: 100%;
 				height: 100%;
 			}
 		}
-		.infos{
+
+		.infos {
 			margin-left: 24rpx;
-			.title{
+
+			.title {
 				display: flex;
 				justify-content: space-between;
-				.text{
+
+				.text {
 					color: rgba(51, 51, 51, 1);
 					font-size: 16px;
 					font-weight: bold;
 				}
-				.state{
+
+				.state {
 					width: 96rpx;
 					line-height: 40rpx;
 					border-radius: 8rpx;
@@ -144,11 +157,24 @@
 					text-align: center;
 					margin-left: 24rpx;
 				}
+				
+				.stateClose {
+					width: 96rpx;
+					line-height: 40rpx;
+					border-radius: 8rpx;
+					background-color: rgba(165, 168, 184, 1);
+					color: rgba(255, 255, 255, 1);
+					font-size: 22rpx;
+					text-align: center;
+					margin-left: 24rpx;
+				}
 			}
-			.tags{
+
+			.tags {
 				display: flex;
 				margin-top: 12rpx;
-				.item{
+
+				.item {
 					line-height: 40rpx;
 					border-radius: 4px;
 					background-color: rgba(241, 243, 244, 1);
@@ -159,51 +185,61 @@
 					margin-right: 16rpx;
 				}
 			}
-			.teacher{
+
+			.teacher {
 				margin-top: 48rpx;
 				display: flex;
 				align-items: center;
-				.teacher-photo{
+
+				.teacher-photo {
 					width: 64rpx;
 					height: 64rpx;
 					border-radius: 50px;
 					overflow: hidden;
-					img{
+
+					img {
 						width: 100%;
 						height: 100%;
 					}
 				}
-				.teacher-name{
+
+				.teacher-name {
 					color: rgba(16, 16, 16, 1);
 					margin-left: 24rpx;
 					font-size: 28rpx;
 					font-weight: bold;
-					
+
 				}
 			}
-			.progress{
+
+			.progress {
 				display: flex;
 				align-items: center;
 				margin-left: 16rpx;
-				/deep/.u-progress{
+
+				/deep/.u-progress {
 					width: 128rpx;
 					height: 4px !important;
 				}
-				.percent{
+
+				.percent {
 					margin-left: 8rpx;
 					color: rgba(119, 119, 119, 1);
 					font-size: 24rpx;
 				}
 			}
 		}
-		@media screen and(max-width:320px){
-			.infos{
+
+		@media screen and(max-width:320px) {
+			.infos {
 				margin-left: 8rpx;
-				.teacher{
+
+				.teacher {
 					margin-top: 24rpx;
 				}
-				.tags{
-					.item{
+
+				.tags {
+					.item {
 						padding: 0;
 						margin-right: 8rpx;
 					}
@@ -211,9 +247,10 @@
 			}
 		}
 	}
-      @media screen and(max-width:320px){
-      	.courses-box{
+
+	@media screen and(max-width:320px) {
+		.courses-box {
 			padding-right: 8rpx;
 		}
-      }
+	}
 </style>

+ 0 - 44
pages/teacher/callNames/classCall.vue

@@ -100,50 +100,6 @@
 		</view>
 		<u-picker mode="selector" v-model="show" :default-selector="[0]" :range="selectorObj" range-key="cateName"
 			@confirm="confirm"></u-picker>
-		<!-- <view class="student-details" v-for="(item,index) in studentList" :key="index">
-			<view class="photo">
-				<u-avatar v-if="item.headPhoto != null" class="avatar" mode="square"
-					:src="item.headPhoto+'?x-oss-process=image/resize,m_fill,w_256,h_256'" size="112">
-					<img src="" alt="">
-				</u-avatar>
-			</view>
-			<view class="details">
-				<view class="name-tel">
-					<view class="name">
-						{{item.studentName}}
-					</view>
-					<view class="tel">
-						<img src="../../../assets/img/riLine-smartphone-line@1x.png" alt="">
-						<view class="">
-							{{item.takerPhone}}
-						</view>
-					</view>
-				</view>
-				<view class="class-leave">
-					<view class="class">
-						剩余课时<text>40</text>
-					</view>
-					<view class="leave">
-						已请假<text>1</text>
-					</view>
-				</view>
-			</view>
-			<view class="to-class" @click="showStudent(item)" v-if="item.rollCallResult == '1'">
-				到课<u-icon name="arrow-right" color="#cccccc"></u-icon>
-			</view>
-			<view class="to-class" @click="showStudent(item)" v-else-if="item.rollCallResult == '2'">
-				请假<u-icon name="arrow-right" color="#cccccc"></u-icon>
-			</view>
-			<view class="to-class" @click="showStudent(item)" v-else-if="item.rollCallResult == '3'">
-				旷课<u-icon name="arrow-right" color="#cccccc"></u-icon>
-			</view>
-			<view class="to-class" @click="showStudent(item)" v-else-if="item.rollCallResult == '4'">
-				补课<u-icon name="arrow-right" color="#cccccc"></u-icon>
-			</view>
-			<view class="to-class" @click="showStudent(item)" v-else>
-				<u-icon name="arrow-right" color="#cccccc"></u-icon>
-			</view>
-		</view> -->
 		<!-- 底部 -->
 		<view class="bottom">
 			<view class="sign-result">