This commit is contained in:
@fawn-nine
2024-08-07 16:43:49 +08:00
parent ebd8dff627
commit 784e771fb8
12 changed files with 1310 additions and 402 deletions

View File

@@ -3,9 +3,16 @@
<public-module></public-module>
<z-nav-bar title="班级详情"></z-nav-bar>
<view class="mainContent" v-if="thisClass.id">
<view :class="['classStatus',
this.thisClass.state == 0 ? 'daikai' :'',
this.thisClass.state == 1 ? 'xuexizhong' :'',
this.thisClass.state == 2 ? 'yijieban' :''
]">
班级状态{{getClassStatus}}
</view>
<view class="className">
<h3>{{thisClass.title}}</h3>
<text class="tuichu" v-if="!isMonitor && !isDirector && isHave" @click="outClass()">退出班级</text>
<text class="tuichu" v-if="isHave && thisClass.state == 0" @click="outClass()">退出班级</text>
</view>
<view class="otherItems flex_box">
<view><text class="ciyao">创建日期</text><text
@@ -16,16 +23,9 @@
<text class="mainTxt" v-if="classModel.type == '1'">联合班</text>
<text class="mainTxt" v-if="classModel.type == '2'">精英班</text>
</view>
<view><text class="ciyao">班级人数</text><text class="mainTxt">{{thisClass.number}}</text></view>
<view><text class="ciyao">人数</text><text class="mainTxt">{{students.length}}/{{thisClass.number}}</text></view>
<view><text class="ciyao">管理成员</text><text class="mainTxt" @click="seeManager">点击查看</text></view>
</view>
<view class="" v-if="thisClass.content != ''">
<text class="adminName">教学目标/班级简介</text>
</view>
<rich-text class="banjiJianjie" :nodes="formatRichText(thisClass.content)"></rich-text>
<!-- <view class="banjiJianjie" v-html="thisClass.content"></view> -->
<view class="mainBox">
<view class="">
<u-tabs v-if="tabList.length > 0" :class="['tabList']" @click="tabClick" :current="curTagIndex"
@@ -33,7 +33,9 @@
itemStyle="padding-left:10rpx; background-color:#fff; padding-right: 10rpx; height: 50px; font-size:26rpx"></u-tabs>
</view>
<!-- 课程列表 -->
<view class="newBox" v-show="courses.length > 0 && tabId == '0'">
<view class="" v-if="tabId == '0'">
<uni-section class="mb-10 nobg nopad" title="班内课程" type="line"></uni-section>
<view class="newBox" v-show="courses.length > 0 ">
<view class="item flexbox" v-for="(item, index) in courses" :key="index"
@click="onPageJump('/pages/course/courseDetail',item.id)">
<!-- <view class="imgcontainer" :style="{backgroundImage:surl(item.image)}"> -->
@@ -46,12 +48,17 @@
</view>
<view class="jianjie" v-html="item.content"></view>
</view>
</view>
</view>
<view class="" v-show="courses.length == 0 && tabId == '0'">
</view>
</view>
<view class="" v-show="courses.length == 0">
<u-divider text="暂无课程"></u-divider>
</view>
<!-- <view class="" v-if="thisClass.content != ''">
<text class="adminName">教学目标/班级简介</text>
</view> -->
<uni-section class="mb-10 nobg" title="教学目标/班内简介" type="line"></uni-section>
<rich-text class="banjiJianjie" :nodes="formatRichText(thisClass.content)"></rich-text>
</view>
<!-- 班内问答 -->
<view class="" v-if=" tabId == '1'">
班内问答
@@ -87,7 +94,7 @@
</view>
<!-- 班内任务 --><!-- 医案 --> <!-- 心得 -->
<view class="">
<view class="" v-if="tijiaoTitleId == 2" >
<view class="" v-if="tijiaoTitleId == 2 && thisClass.state != 2" >
<view class="noanser">
<view class="">
<text>快来添加一条记录吧~</text>
@@ -244,7 +251,8 @@
curTagIndex: 0,
scrollable: false,
pPage:0,
tabList: [{
// 已开班
tabList02: [{
name: '班内课程',
id: '0'
},
@@ -260,6 +268,20 @@
id: '3'
}
],
// 待开班
tabList01: [{
name: '班内课程',
id: '0'
},
// {
// name: '班内讨论',
// id: '1'
// },
{
name: '班内学员',
id: '2'
}
],
admins: {
list: [],
monitor: {},
@@ -333,6 +355,30 @@
},
computed: {
...mapState(["userInfo"]),
getClassStatus(){
var _roleName = ''
switch (this.thisClass.state) {
case '0':
_roleName = '待开班';
break;
case '1':
_roleName = '学习中';
break;
case '2':
_roleName = '已结班';
break;
}
return _roleName
}
,tabList(){
var list = []
if(this.thisClass.state == 0){
list = this.tabList01
}else{
list = this.tabList02
}
return list
},
},
methods: {
editMyXinde(item){
@@ -423,7 +469,7 @@
method: "POST",
data: {
"limit": 10,
"page": 1,
"page": this.pPage,
"classId": this.thisClass.id,
"type": this.tijiaoTitleId+'', //类型 0班内任务1医案2心得
"myExperience": this.myExperience, //0全部心得1我的心得
@@ -437,7 +483,8 @@
if (res.code == 0) {
if(res.page.records.length > 0){
console.log('数据获取成功',res.page.records);
this.taskList = res.page.records
var lis = res.page.records
this.taskList = this.taskList.concat(lis)
if(res.page.pages > 1){
this.taskHaveMore = true
}
@@ -809,6 +856,10 @@
color: #fff;
font-weight: normal;
}
.classStatus{padding: 10rpx; color: #fff;}
.daikai{background-image: linear-gradient(90deg, #258feb 0%, rgba(255, 255, 255, 0.1) 80%, rgba(255, 255, 255, 0) 100% );}
.xuexizhong{background-image: linear-gradient(90deg, #55aa00 0%, rgba(255, 255, 255, 0.1) 80%, rgba(255, 255, 255, 0) 100% );}
.yijieban{background-image: linear-gradient(90deg, #999 0%, rgba(255, 255, 255, 0.1) 80%, rgba(255, 255, 255, 0) 100% );}
.noanser{ padding: 20rpx;
background-color: rgba(255, 255, 255, .6);
text-align: center; border-bottom: 1px solid #eee;
@@ -907,6 +958,7 @@
}
.leve2{
color: #666;
line-height: 56rpx;
@include bov(3)
}
@@ -926,7 +978,7 @@
.nobg {
background-color: transparent !important;
}
.nopad{padding-left: 0 !important;}
.bottomBox { border-top: 1px solid #eee;
position: fixed;
padding: 20rpx 0;