|
|
@ -2,9 +2,9 @@ |
|
|
<template> |
|
|
<template> |
|
|
<view class="main_box"> |
|
|
<view class="main_box"> |
|
|
<!--自定义导航栏--> |
|
|
<!--自定义导航栏--> |
|
|
<!-- <view class="navbar_section">--> |
|
|
<!-- <view class="navbar_section">--> |
|
|
<!-- <view class="title">班级详情</view>--> |
|
|
<!-- <view class="title">班级详情</view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
|
|
|
|
|
|
<view class="main_section"> |
|
|
<view class="main_section"> |
|
|
<view class="section_1"> |
|
|
<view class="section_1"> |
|
|
@ -21,14 +21,14 @@ |
|
|
校区:{{classInfo.campus_name}} |
|
|
校区:{{classInfo.campus_name}} |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- <view class="item"> |
|
|
<!-- <view class="item"> |
|
|
<!-- 课程:篮球少儿课 |
|
|
<!-- 课程:篮球少儿课 |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
|
|
|
|
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
人数:{{classInfo.classPersonnelRel.length}}人 |
|
|
人数:{{classInfo.classPersonnelRel.length}}人 |
|
|
</view> |
|
|
</view> |
|
|
<!-- |
|
|
<!-- |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
|
|
|
|
|
|
时间:{{classInfo.start_date}} - {{classInfo.end_date}} |
|
|
时间:{{classInfo.start_date}} - {{classInfo.end_date}} |
|
|
@ -36,29 +36,29 @@ |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- <view class="section_2">--> |
|
|
<!-- <view class="section_2">--> |
|
|
<!-- <view class="title_box">--> |
|
|
<!-- <view class="title_box">--> |
|
|
<!-- <view>最近课程</view>--> |
|
|
<!-- <view>最近课程</view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- <view class="tag_list">--> |
|
|
<!-- <view class="tag_list">--> |
|
|
<!-- <view class="item" @click="openViewCourseInfo({id:1})">--> |
|
|
<!-- <view class="item" @click="openViewCourseInfo({id:1})">--> |
|
|
<!-- <view class="title">--> |
|
|
<!-- <view class="title">--> |
|
|
<!-- 篮球少儿课--> |
|
|
<!-- 篮球少儿课--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- <view>--> |
|
|
<!-- <view>--> |
|
|
<!-- 2020.05.30 15:30 - 17:30--> |
|
|
<!-- 2020.05.30 15:30 - 17:30--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- <view class="item" @click="openViewCourseInfo({id:2})">--> |
|
|
<!-- <view class="item" @click="openViewCourseInfo({id:2})">--> |
|
|
<!-- <view class="title">--> |
|
|
<!-- <view class="title">--> |
|
|
<!-- 篮球少儿课--> |
|
|
<!-- 篮球少儿课--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- <view>--> |
|
|
<!-- <view>--> |
|
|
<!-- 2020.05.30 15:30 - 17:30--> |
|
|
<!-- 2020.05.30 15:30 - 17:30--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
|
|
|
|
|
|
<view class="section_3"> |
|
|
<view class="section_3"> |
|
|
<view class="btn_box"> |
|
|
<view class="btn_box"> |
|
|
@ -74,12 +74,8 @@ |
|
|
<!-- 班级成员列表--> |
|
|
<!-- 班级成员列表--> |
|
|
<view class="section_4" v-if="tabType=='1'"> |
|
|
<view class="section_4" v-if="tabType=='1'"> |
|
|
<view class="ul"> |
|
|
<view class="ul"> |
|
|
<view |
|
|
<view class="li" v-for="(v,k) in classInfo.classPersonnelRel" :key="k" |
|
|
class="li" |
|
|
@click="openViewStudentInfo(v)"> |
|
|
v-for="(v,k) in classInfo.classPersonnelRel" |
|
|
|
|
|
:key="k" |
|
|
|
|
|
@click="openViewStudentInfo(v)" |
|
|
|
|
|
> |
|
|
|
|
|
<view class="left"> |
|
|
<view class="left"> |
|
|
<view class="box_1"> |
|
|
<view class="box_1"> |
|
|
<image class="pic" :src="$util.img(v.student.customerResources.member.headimg)"></image> |
|
|
<image class="pic" :src="$util.img(v.student.customerResources.member.headimg)"></image> |
|
|
@ -94,11 +90,14 @@ |
|
|
</view> |
|
|
</view> |
|
|
<view class="right"> |
|
|
<view class="right"> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view>{{ v.studentCoursesInfo.use_gift_hours + v.studentCoursesInfo.use_gift_hours }}</view> |
|
|
<view>{{ v.studentCoursesInfo.use_gift_hours + v.studentCoursesInfo.use_gift_hours }} |
|
|
|
|
|
</view> |
|
|
<view>已上课时</view> |
|
|
<view>已上课时</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view>{{ (v.studentCoursesInfo.total_hours + v.studentCoursesInfo.gift_hours) - (v.studentCoursesInfo.use_gift_hours + v.studentCoursesInfo.use_gift_hours) }}</view> |
|
|
<view> |
|
|
|
|
|
{{ (v.studentCoursesInfo.total_hours + v.studentCoursesInfo.gift_hours) - (v.studentCoursesInfo.use_gift_hours + v.studentCoursesInfo.use_gift_hours) }} |
|
|
|
|
|
</view> |
|
|
<view>剩余课时</view> |
|
|
<view>剩余课时</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
@ -107,64 +106,54 @@ |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!--课程计划--> |
|
|
<!--课程计划--> |
|
|
<scroll-view |
|
|
<scroll-view v-if="tabType=='2'" class="section_5" scroll-y="true" :lower-threshold="lowerThreshold" |
|
|
v-if="tabType=='2'" |
|
|
@scrolltolower="loadMoreData" style="height: 65vh;"> |
|
|
class="section_5" |
|
|
|
|
|
scroll-y="true" |
|
|
|
|
|
:lower-threshold="lowerThreshold" |
|
|
|
|
|
@scrolltolower="loadMoreData" |
|
|
|
|
|
style="height: 65vh;" |
|
|
|
|
|
> |
|
|
|
|
|
<view class="ul"> |
|
|
<view class="ul"> |
|
|
<view |
|
|
<view class="li" v-for="(v,k) in courseList" :key="k" @click="openViewCourseInfo(v)"> |
|
|
class="li" |
|
|
|
|
|
v-for="(v,k) in courseList" |
|
|
|
|
|
:key="k" |
|
|
|
|
|
@click="openViewCourseInfo(v)" |
|
|
|
|
|
> |
|
|
|
|
|
<view class="top_box"> |
|
|
<view class="top_box"> |
|
|
<view class="title"> |
|
|
<view class="title"> |
|
|
课程:{{v.courses_name}} |
|
|
课程:{{v.course.course_name}} |
|
|
</view> |
|
|
</view> |
|
|
<view class="title"> |
|
|
<view class="title"> |
|
|
时间:{{v.date}} |
|
|
时间:{{v.course_date}} |
|
|
</view> |
|
|
</view> |
|
|
<view class="title"> |
|
|
<view class="title"> |
|
|
地点:{{v.address}} |
|
|
地点:{{v.campus_name}} |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="bottom_box"> |
|
|
<view class="bottom_box"> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="left">应到学员({{v.max_students}})</view> |
|
|
<view class="left">应到学员({{v.student.length}})</view> |
|
|
<view class="right"> |
|
|
<view class="right"> |
|
|
查看 |
|
|
查看 |
|
|
<fui-icon size="35" color="#fff" name="arrowright"></fui-icon> |
|
|
<fui-icon size="35" color="#fff" name="arrowright"></fui-icon> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="item"> |
|
|
<view class="item"> |
|
|
<view class="left">已签到学生({{v.has_sign_count}}/{{v.max_students}})</view> |
|
|
<view class="left">已签到学生({{v.student_courses.length}}/{{v.student.length}})</view> |
|
|
<view class="right"> |
|
|
<view class="right"> |
|
|
查看 |
|
|
查看 |
|
|
<fui-icon size="35" color="#fff" name="arrowright"></fui-icon> |
|
|
<fui-icon size="35" color="#fff" name="arrowright"></fui-icon> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<!-- <view class="item">--> |
|
|
<!-- <view class="item">--> |
|
|
<!-- <view class="left">作业完成率(80%)</view>--> |
|
|
<!-- <view class="left">作业完成率(80%)</view>--> |
|
|
<!-- <view class="right">--> |
|
|
<!-- <view class="right">--> |
|
|
<!-- 查看--> |
|
|
<!-- 查看--> |
|
|
<!-- <fui-icon size="35" color="#fff" name="arrowright"></fui-icon>--> |
|
|
<!-- <fui-icon size="35" color="#fff" name="arrowright"></fui-icon>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
<!-- </view>--> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<view class="tag" v-if="!(['1','2'].includes(String(v.status)))" style="background-color:#20CAAF;"> |
|
|
<view class="tag" v-if="isCourseFuture(v.student_courses[0].start_date)" |
|
|
|
|
|
style="background-color:#20CAAF;"> |
|
|
未开始 |
|
|
未开始 |
|
|
</view> |
|
|
</view> |
|
|
<view class="tag" v-if="v.status == 1" style="background-color:#fad24e;"> |
|
|
<view class="tag" v-if="isNowBetween(v.student_courses[0].start_date, v.student_courses[0].end_date)" |
|
|
|
|
|
style="background-color:#fad24e;"> |
|
|
上课中 |
|
|
上课中 |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
<view class="tag" v-if="!isCourseFuture(v.student_courses[0].end_date)" style="background-color:#e2e2e2;"> |
|
|
<view class="tag" v-if="v.status == 2" style="background-color:#e2e2e2;"> |
|
|
|
|
|
已结束 |
|
|
已结束 |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
@ -172,45 +161,45 @@ |
|
|
</scroll-view> |
|
|
</scroll-view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- 底部导航--> |
|
|
<!-- 底部导航--> |
|
|
<!-- <AQTabber/>--> |
|
|
<!-- <AQTabber/>--> |
|
|
</view> |
|
|
</view> |
|
|
</template> |
|
|
</template> |
|
|
|
|
|
|
|
|
<script> |
|
|
<script> |
|
|
import memberApi from '@/api/member.js'; |
|
|
import memberApi from '@/api/member.js'; |
|
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
|
|
import AQTabber from "@/components/AQ/AQTabber.vue" |
|
|
import apiRoute from '@/api/apiRoute.js'; |
|
|
import apiRoute from '@/api/apiRoute.js'; |
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
components: { |
|
|
components: { |
|
|
AQTabber, |
|
|
AQTabber, |
|
|
}, |
|
|
}, |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
|
class_id:'',//班级id |
|
|
class_id: '', //班级id |
|
|
classInfo:{},//班级数据 |
|
|
classInfo: {}, //班级数据 |
|
|
classMemberList:{},//班级成员 |
|
|
classMemberList: {}, //班级成员 |
|
|
|
|
|
|
|
|
tabType:'1',//1=班级成员,2=课程计划 |
|
|
tabType: '1', //1=班级成员,2=课程计划 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
loading: false,//加载状态 |
|
|
loading: false, //加载状态 |
|
|
lowerThreshold: 100,//距离底部多远触发 |
|
|
lowerThreshold: 100, //距离底部多远触发 |
|
|
isReachedBottom: false,//防止重复加载|true=不可加载|false=可加载 |
|
|
isReachedBottom: false, //防止重复加载|true=不可加载|false=可加载 |
|
|
|
|
|
|
|
|
//筛选条件 |
|
|
//筛选条件 |
|
|
filteredData: { |
|
|
filteredData: { |
|
|
page: 1,//当前页码 |
|
|
page: 1, //当前页码 |
|
|
limit: 10,//每页返回数据条数 |
|
|
limit: 10, //每页返回数据条数 |
|
|
total: 10,//数据总条数 |
|
|
total: 10, //数据总条数 |
|
|
class_id: '',//班级id |
|
|
class_id: '', //班级id |
|
|
}, |
|
|
}, |
|
|
courseList:[],//课程计划数据 |
|
|
courseList: [], //课程计划数据 |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
onLoad(options) { |
|
|
onLoad(options) { |
|
|
this.class_id = options.class_id//课程id |
|
|
this.class_id = options.class_id //课程id |
|
|
}, |
|
|
}, |
|
|
onShow() { |
|
|
onShow() { |
|
|
this.init() |
|
|
this.init() |
|
|
@ -223,25 +212,41 @@ export default { |
|
|
}, |
|
|
}, |
|
|
methods: { |
|
|
methods: { |
|
|
|
|
|
|
|
|
async init(){ |
|
|
async init() { |
|
|
// member/course_list//课程列表 |
|
|
// member/course_list//课程列表 |
|
|
// member/class_info//班级详情+成员详情 |
|
|
// member/class_info//班级详情+成员详情 |
|
|
this.getClassInfo()//获取班级详情 |
|
|
this.getClassInfo() //获取班级详情 |
|
|
//await this.getCourseList()//获取课程列表 |
|
|
await this.getCourseList() //获取课程列表 |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
isNowBetween(start_date, end_date) { |
|
|
|
|
|
const now = new Date(); |
|
|
|
|
|
const start = new Date(start_date); |
|
|
|
|
|
const end = new Date(end_date); |
|
|
|
|
|
|
|
|
|
|
|
return now >= start && now <= end; |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
isCourseFuture(courseDate) { |
|
|
|
|
|
const courseTime = new Date(courseDate).getTime(); |
|
|
|
|
|
const nowTime = new Date().getTime(); |
|
|
|
|
|
return courseTime > nowTime; |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
//教练端-获取班级详情 |
|
|
//教练端-获取班级详情 |
|
|
async getClassInfo(){ |
|
|
async getClassInfo() { |
|
|
let res = await apiRoute.jlClassInfo({class_id:this.class_id})//班级详情 |
|
|
let res = await apiRoute.jlClassInfo({ |
|
|
if(res.code != 1){ |
|
|
class_id: this.class_id |
|
|
|
|
|
}) //班级详情 |
|
|
|
|
|
if (res.code != 1) { |
|
|
uni.showToast({ |
|
|
uni.showToast({ |
|
|
title: res.msg, |
|
|
title: res.msg, |
|
|
icon: 'none' |
|
|
icon: 'none' |
|
|
}) |
|
|
}) |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
console.log('获取班级列表',res.data) |
|
|
console.log('获取班级列表', res.data) |
|
|
this.classInfo = res.data |
|
|
this.classInfo = res.data |
|
|
this.classMemberList = res.data.students_list |
|
|
this.classMemberList = res.data.students_list |
|
|
}, |
|
|
}, |
|
|
@ -251,7 +256,7 @@ export default { |
|
|
loadMoreData() { |
|
|
loadMoreData() { |
|
|
//判断是否加载 |
|
|
//判断是否加载 |
|
|
if (!this.isReachedBottom) { |
|
|
if (!this.isReachedBottom) { |
|
|
this.isReachedBottom = true;//设置为不可请求状态 |
|
|
this.isReachedBottom = true; //设置为不可请求状态 |
|
|
this.getCourseList(); |
|
|
this.getCourseList(); |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
@ -259,19 +264,21 @@ export default { |
|
|
async loadData() { |
|
|
async loadData() { |
|
|
this.isReachedBottom = false; // 重置状态,以便下次触发加载更多 |
|
|
this.isReachedBottom = false; // 重置状态,以便下次触发加载更多 |
|
|
|
|
|
|
|
|
this.filteredData.page = 1//当前页码 |
|
|
this.filteredData.page = 1 //当前页码 |
|
|
this.filteredData.limit = 10//每页返回数据条数 |
|
|
this.filteredData.limit = 10 //每页返回数据条数 |
|
|
this.filteredData.total = 10//数据总条数 |
|
|
this.filteredData.total = 10 //数据总条数 |
|
|
}, |
|
|
}, |
|
|
//教练端-获取课程列表 |
|
|
//教练端-获取课程列表 |
|
|
async getCourseList(){ |
|
|
async getCourseList() { |
|
|
|
|
|
|
|
|
let data = {...this.filteredData} |
|
|
let data = { |
|
|
|
|
|
...this.filteredData |
|
|
|
|
|
} |
|
|
data.class_id = this.class_id |
|
|
data.class_id = this.class_id |
|
|
|
|
|
|
|
|
console.log(12123,this.courseList) |
|
|
console.log(12123, this.courseList) |
|
|
|
|
|
|
|
|
if(data.page == 1){ |
|
|
if (data.page == 1) { |
|
|
this.courseList = [] |
|
|
this.courseList = [] |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -285,7 +292,7 @@ export default { |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
let res = await memberApi.courseList(data) |
|
|
let res = await apiRoute.classCourseList(data) |
|
|
this.loading = false |
|
|
this.loading = false |
|
|
this.isReachedBottom = false; |
|
|
this.isReachedBottom = false; |
|
|
if (res.code != 1) { |
|
|
if (res.code != 1) { |
|
|
@ -297,10 +304,10 @@ export default { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.courseList = this.courseList.concat(res.data.list.data)// 使用 concat 方法 将新数据追加到数组中 |
|
|
this.courseList = this.courseList.concat(res.data.data) // 使用 concat 方法 将新数据追加到数组中 |
|
|
|
|
|
|
|
|
this.filteredData.total = res.data.list.total |
|
|
this.filteredData.total = res.data.total |
|
|
console.log('获取课程列表',this.courseList) |
|
|
console.log('获取课程列表', this.courseList) |
|
|
this.filteredData.page++ |
|
|
this.filteredData.page++ |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
@ -313,36 +320,36 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//打开课程详情 |
|
|
//打开课程详情 |
|
|
openViewCourseInfo(item){ |
|
|
openViewCourseInfo(item) { |
|
|
let id= item.id |
|
|
let id = item.id |
|
|
uni.navigateTo({ |
|
|
uni.navigateTo({ |
|
|
url: `/pages/coach/course/info_list?id=${id}` |
|
|
url: `/pages/coach/course/info_list?id=${id}` |
|
|
}) |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
//打开学员详情页 |
|
|
//打开学员详情页 |
|
|
openViewStudentInfo(item){ |
|
|
openViewStudentInfo(item) { |
|
|
let students_id = item.id |
|
|
let students_id = item.student.id |
|
|
uni.navigateTo({ |
|
|
uni.navigateTo({ |
|
|
url: `/pages/coach/student/info?students_id=${students_id}` |
|
|
url: `/pages/coach/student/info?students_id=${students_id}` |
|
|
}) |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
</script> |
|
|
</script> |
|
|
|
|
|
|
|
|
<style lang="less" scoped> |
|
|
<style lang="less" scoped> |
|
|
|
|
|
.main_box { |
|
|
|
|
|
background: #292929; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.main_box{ |
|
|
//自定义导航栏 |
|
|
background: #292929 ; |
|
|
.navbar_section { |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//自定义导航栏 |
|
|
|
|
|
.navbar_section{ |
|
|
|
|
|
display: flex; |
|
|
display: flex; |
|
|
justify-content: center; |
|
|
justify-content: center; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
background: #292929; |
|
|
background: #292929; |
|
|
.title{ |
|
|
|
|
|
|
|
|
.title { |
|
|
padding: 40rpx 0rpx; |
|
|
padding: 40rpx 0rpx; |
|
|
|
|
|
|
|
|
/* 小程序端样式 */ |
|
|
/* 小程序端样式 */ |
|
|
@ -354,9 +361,9 @@ export default { |
|
|
font-size: 30rpx; |
|
|
font-size: 30rpx; |
|
|
color: #fff; |
|
|
color: #fff; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.main_section{ |
|
|
.main_section { |
|
|
min-height: 100vh; |
|
|
min-height: 100vh; |
|
|
background: #292929 100%; |
|
|
background: #292929 100%; |
|
|
padding: 0 24rpx; |
|
|
padding: 0 24rpx; |
|
|
@ -372,36 +379,43 @@ export default { |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
gap: 38rpx; |
|
|
gap: 38rpx; |
|
|
.left{ |
|
|
|
|
|
|
|
|
.left { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
gap: 12rpx; |
|
|
gap: 12rpx; |
|
|
.pic{ |
|
|
|
|
|
|
|
|
.pic { |
|
|
width: 92rpx; |
|
|
width: 92rpx; |
|
|
height: 92rpx; |
|
|
height: 92rpx; |
|
|
border-radius: 50%; |
|
|
border-radius: 50%; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.right{ |
|
|
|
|
|
|
|
|
.right { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 12rpx; |
|
|
gap: 12rpx; |
|
|
|
|
|
|
|
|
.item {} |
|
|
.item {} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.section_2{ |
|
|
.section_2 { |
|
|
margin-top: 42rpx; |
|
|
margin-top: 42rpx; |
|
|
.title_box{ |
|
|
|
|
|
|
|
|
.title_box { |
|
|
font-size: 32rpx; |
|
|
font-size: 32rpx; |
|
|
} |
|
|
} |
|
|
.tag_list{ |
|
|
|
|
|
|
|
|
.tag_list { |
|
|
margin-top: 26rpx; |
|
|
margin-top: 26rpx; |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
gap: 26rpx; |
|
|
gap: 26rpx; |
|
|
.item{ |
|
|
|
|
|
|
|
|
.item { |
|
|
padding-left: 20rpx; |
|
|
padding-left: 20rpx; |
|
|
width: 330rpx; |
|
|
width: 330rpx; |
|
|
height: 162rpx; |
|
|
height: 162rpx; |
|
|
@ -416,22 +430,24 @@ export default { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//按钮切换 |
|
|
//按钮切换 |
|
|
.section_3{ |
|
|
.section_3 { |
|
|
margin-top: 54rpx; |
|
|
margin-top: 54rpx; |
|
|
display: flex; |
|
|
display: flex; |
|
|
justify-content: center; |
|
|
justify-content: center; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
.btn_box{ |
|
|
|
|
|
|
|
|
.btn_box { |
|
|
width: 698rpx; |
|
|
width: 698rpx; |
|
|
border-radius: 8rpx; |
|
|
border-radius: 8rpx; |
|
|
background-color: rgba(22,132,252,1); |
|
|
background-color: rgba(22, 132, 252, 1); |
|
|
border: 1rpx solid rgba(22,132,252,1); |
|
|
border: 1rpx solid rgba(22, 132, 252, 1); |
|
|
|
|
|
|
|
|
display: flex; |
|
|
display: flex; |
|
|
justify-content: center; |
|
|
justify-content: center; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
overflow: hidden; |
|
|
overflow: hidden; |
|
|
.btn{ |
|
|
|
|
|
|
|
|
.btn { |
|
|
width: 100%; |
|
|
width: 100%; |
|
|
height: 76rpx; |
|
|
height: 76rpx; |
|
|
line-height: 76rpx; |
|
|
line-height: 76rpx; |
|
|
@ -439,7 +455,8 @@ export default { |
|
|
color: #fff; |
|
|
color: #fff; |
|
|
font-size: 26rpx; |
|
|
font-size: 26rpx; |
|
|
} |
|
|
} |
|
|
.select{ |
|
|
|
|
|
|
|
|
.select { |
|
|
color: #1684fc; |
|
|
color: #1684fc; |
|
|
background-color: #fff; |
|
|
background-color: #fff; |
|
|
} |
|
|
} |
|
|
@ -448,35 +465,41 @@ export default { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//班级成员列表 |
|
|
//班级成员列表 |
|
|
.section_4{ |
|
|
.section_4 { |
|
|
margin-top: 40rpx; |
|
|
margin-top: 40rpx; |
|
|
.ul{ |
|
|
|
|
|
|
|
|
.ul { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 10rpx; |
|
|
gap: 10rpx; |
|
|
.li{ |
|
|
|
|
|
|
|
|
.li { |
|
|
padding: 20rpx 0; |
|
|
padding: 20rpx 0; |
|
|
padding-bottom: 40rpx; |
|
|
padding-bottom: 40rpx; |
|
|
border-bottom: 2px solid #D7D7D7; |
|
|
border-bottom: 2px solid #D7D7D7; |
|
|
display: flex; |
|
|
display: flex; |
|
|
justify-content: space-between; |
|
|
justify-content: space-between; |
|
|
.left{ |
|
|
|
|
|
|
|
|
.left { |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
gap: 30rpx; |
|
|
gap: 30rpx; |
|
|
.box_1{ |
|
|
|
|
|
|
|
|
.box_1 { |
|
|
padding-left: 20rpx; |
|
|
padding-left: 20rpx; |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
justify-content: center; |
|
|
justify-content: center; |
|
|
position: relative; |
|
|
position: relative; |
|
|
.pic{ |
|
|
|
|
|
|
|
|
.pic { |
|
|
width: 84rpx; |
|
|
width: 84rpx; |
|
|
height: 84rpx; |
|
|
height: 84rpx; |
|
|
border-radius: 50%; |
|
|
border-radius: 50%; |
|
|
} |
|
|
} |
|
|
.tag_box{ |
|
|
|
|
|
|
|
|
.tag_box { |
|
|
position: absolute; |
|
|
position: absolute; |
|
|
bottom: -30rpx; |
|
|
bottom: -30rpx; |
|
|
width: 120rpx; |
|
|
width: 120rpx; |
|
|
@ -488,39 +511,47 @@ export default { |
|
|
font-size: 20rpx; |
|
|
font-size: 20rpx; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.box_2{ |
|
|
|
|
|
|
|
|
.box_2 { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 20rpx; |
|
|
gap: 20rpx; |
|
|
.name{ |
|
|
|
|
|
|
|
|
.name { |
|
|
font-size: 28rpx; |
|
|
font-size: 28rpx; |
|
|
} |
|
|
} |
|
|
.date{ |
|
|
|
|
|
|
|
|
.date { |
|
|
font-size: 24rpx; |
|
|
font-size: 24rpx; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.right{ |
|
|
|
|
|
|
|
|
.right { |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
gap: 14rpx; |
|
|
gap: 14rpx; |
|
|
.item{ |
|
|
|
|
|
|
|
|
.item { |
|
|
border: 1px solid #00E5BB; |
|
|
border: 1px solid #00E5BB; |
|
|
border-radius: 10rpx; |
|
|
border-radius: 10rpx; |
|
|
width: 102rpx; |
|
|
width: 102rpx; |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
view{ |
|
|
|
|
|
|
|
|
view { |
|
|
text-align: center; |
|
|
text-align: center; |
|
|
height: 50rpx; |
|
|
height: 50rpx; |
|
|
line-height: 50rpx; |
|
|
line-height: 50rpx; |
|
|
} |
|
|
} |
|
|
view:nth-child(1){ |
|
|
|
|
|
|
|
|
view:nth-child(1) { |
|
|
font-size: 32rpx; |
|
|
font-size: 32rpx; |
|
|
background-color: #fff; |
|
|
background-color: #fff; |
|
|
color: #00e5bb; |
|
|
color: #00e5bb; |
|
|
} |
|
|
} |
|
|
view:nth-child(2){ |
|
|
|
|
|
|
|
|
view:nth-child(2) { |
|
|
font-size: 20rpx; |
|
|
font-size: 20rpx; |
|
|
background-color: #00e5bb; |
|
|
background-color: #00e5bb; |
|
|
} |
|
|
} |
|
|
@ -532,47 +563,54 @@ export default { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//课程计划 |
|
|
//课程计划 |
|
|
.section_5{ |
|
|
.section_5 { |
|
|
margin-top: 36rpx; |
|
|
margin-top: 36rpx; |
|
|
.ul{ |
|
|
|
|
|
|
|
|
.ul { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 30rpx; |
|
|
gap: 30rpx; |
|
|
.li{ |
|
|
|
|
|
|
|
|
.li { |
|
|
position: relative; |
|
|
position: relative; |
|
|
border-radius: 10rpx; |
|
|
border-radius: 10rpx; |
|
|
background-color: rgba(63,63,67,1); |
|
|
background-color: rgba(63, 63, 67, 1); |
|
|
border: 2rpx solid rgba(0,229,187,1); |
|
|
border: 2rpx solid rgba(0, 229, 187, 1); |
|
|
padding: 20rpx 14rpx; |
|
|
padding: 20rpx 14rpx; |
|
|
|
|
|
|
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
.top_box{ |
|
|
|
|
|
|
|
|
.top_box { |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 10rpx; |
|
|
gap: 10rpx; |
|
|
.title{ |
|
|
|
|
|
color: rgba(255,255,255,1); |
|
|
.title { |
|
|
|
|
|
color: rgba(255, 255, 255, 1); |
|
|
font-size: 24rpx; |
|
|
font-size: 24rpx; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.bottom_box{ |
|
|
|
|
|
|
|
|
.bottom_box { |
|
|
padding-top: 10rpx; |
|
|
padding-top: 10rpx; |
|
|
margin-top: 20rpx; |
|
|
margin-top: 20rpx; |
|
|
border-top: 1px dashed #F2F2F2; |
|
|
border-top: 1px dashed #F2F2F2; |
|
|
display: flex; |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
flex-direction: column; |
|
|
gap: 10rpx; |
|
|
gap: 10rpx; |
|
|
.item{ |
|
|
|
|
|
|
|
|
.item { |
|
|
display: flex; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
align-items: center; |
|
|
justify-content: space-between; |
|
|
justify-content: space-between; |
|
|
|
|
|
|
|
|
color: rgba(215,215,215,1); |
|
|
color: rgba(215, 215, 215, 1); |
|
|
font-size: 24rpx; |
|
|
font-size: 24rpx; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
.tag{ |
|
|
|
|
|
|
|
|
.tag { |
|
|
position: absolute; |
|
|
position: absolute; |
|
|
right: 0rpx; |
|
|
right: 0rpx; |
|
|
top: 0rpx; |
|
|
top: 0rpx; |
|
|
@ -580,11 +618,11 @@ export default { |
|
|
height: 60rpx; |
|
|
height: 60rpx; |
|
|
line-height: 58rpx; |
|
|
line-height: 58rpx; |
|
|
border-radius: 0rpx 8rpx 0rpx 24rpx; |
|
|
border-radius: 0rpx 8rpx 0rpx 24rpx; |
|
|
background-color: rgba(32,202,175,1); |
|
|
background-color: rgba(32, 202, 175, 1); |
|
|
color: rgba(255,255,255,1); |
|
|
color: rgba(255, 255, 255, 1); |
|
|
font-size: 24rpx; |
|
|
font-size: 24rpx; |
|
|
text-align: center; |
|
|
text-align: center; |
|
|
border: 0rpx solid rgba(121,121,121,1); |
|
|
border: 0rpx solid rgba(121, 121, 121, 1); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
@ -596,7 +634,5 @@ export default { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</style> |
|
|
</style> |