|
@@ -6,7 +6,7 @@
|
|
|
<van-tag type="primary" plain style="background-color: #F1FCF9">课后训练</van-tag>
|
|
|
</template>
|
|
|
</van-cell>
|
|
|
- <van-cell class="endTime" readonly is-link title-style="font-size: .16rem; color: #333333;">
|
|
|
+ <van-cell class="endTime" readonly is-link title-style="font-size: .16rem; color: #333333;" @click="studentStatus = true">
|
|
|
<template #title>
|
|
|
<span style="padding-right: .3rem">学员共<i style="font-style: normal; color: #01C1B5">{{ params.studentCount }}</i>人</span>
|
|
|
<span>会员 <i style="font-style: normal; color: #FF802C">{{ params.studentMemberCount }}</i>人</span>
|
|
@@ -80,46 +80,9 @@
|
|
|
:style="{ height: '180%' }"
|
|
|
>
|
|
|
<van-sticky>
|
|
|
- <van-search
|
|
|
- show-action
|
|
|
- shape="round"
|
|
|
- :left-icon="searchIcon"
|
|
|
- @search="onSearch"
|
|
|
- v-model="params.search"
|
|
|
- placeholder="请输入学生名或手机号"
|
|
|
- >
|
|
|
- <template #action>
|
|
|
- <div @click="onSearch">搜索</div>
|
|
|
- </template>
|
|
|
- </van-search>
|
|
|
+ <m-header name="学员列表" :backUrl="backUrlStudent" />
|
|
|
</van-sticky>
|
|
|
- <div class="paddingB80">
|
|
|
- <van-cell-group v-if="dataShow">
|
|
|
- <van-cell
|
|
|
- v-for="(item, index) in dataList"
|
|
|
- :key="index"
|
|
|
- class="input-cell"
|
|
|
- :center="true"
|
|
|
- >
|
|
|
- <template slot="icon">
|
|
|
- <img class="logo" v-if="item.avatar" :src="item.avatar" alt="" />
|
|
|
- <img class="logo" v-else src="@/assets/images/icon_student.png" alt="" />
|
|
|
- </template>
|
|
|
- <template slot="title">
|
|
|
- <div class="studentName">
|
|
|
- {{ item.userName }}
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <template slot="label">
|
|
|
- <span>{{ (item.phone) }}</span>
|
|
|
- </template>
|
|
|
- </van-cell>
|
|
|
- </van-cell-group>
|
|
|
- <m-empty class="empty" v-else key="data" />
|
|
|
- </div>
|
|
|
- <div class="button-group-popup">
|
|
|
- <span class="btn">取消</span>
|
|
|
- </div>
|
|
|
+ <student-list-model isHead :dataList="dataList" :dataSubjectList="dataSubjectList"></student-list-model>
|
|
|
</van-popup>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -130,11 +93,12 @@ import dayjs from "dayjs";
|
|
|
import { addHomeWork } from '@/api/audition'
|
|
|
import { getCourseStudents } from '@/api/teacher'
|
|
|
import AccompanimentModal from './modal/accompanimentModal'
|
|
|
+import StudentListModel from './modal/studentList'
|
|
|
import cleanDeep from 'clean-deep'
|
|
|
import deepClone from '@/helpers/deep-clone'
|
|
|
export default {
|
|
|
name: "teacherList",
|
|
|
- components: { MHeader, AccompanimentModal },
|
|
|
+ components: { MHeader, AccompanimentModal, StudentListModel },
|
|
|
data() {
|
|
|
let tempDate = new Date() // 默认显示T+3
|
|
|
tempDate.setDate(tempDate.getDate() + 3)
|
|
@@ -147,6 +111,12 @@ export default {
|
|
|
this.accompanimentStatus = false
|
|
|
}
|
|
|
},
|
|
|
+ backUrlStudent: {
|
|
|
+ status: true,
|
|
|
+ callBack: () => {
|
|
|
+ this.studentStatus = false
|
|
|
+ }
|
|
|
+ },
|
|
|
classGroupName: query.classGroupName,
|
|
|
courseId: query.courseId,
|
|
|
dateSection: {
|
|
@@ -171,9 +141,9 @@ export default {
|
|
|
subjectIdList: [],
|
|
|
subjectList: []
|
|
|
},
|
|
|
- dataShow: true,
|
|
|
- studentStatus: false,
|
|
|
dataList: [],
|
|
|
+ dataSubjectList: [],
|
|
|
+ studentStatus: false,
|
|
|
};
|
|
|
},
|
|
|
async mounted() {
|
|
@@ -223,11 +193,11 @@ export default {
|
|
|
});
|
|
|
// 默认选中第1条数据
|
|
|
this.tabActive = deepClone(params.subjectIdList[0])
|
|
|
+ this.dataSubjectList = deepClone(params.subjectList)
|
|
|
this.params = params
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
-
|
|
|
onSelectAccompany(item, index) {
|
|
|
this.accompanimentStatus = true
|
|
|
this.tabActiveList = item
|
|
@@ -262,7 +232,7 @@ export default {
|
|
|
onEndTime() {
|
|
|
this.dateSection.status = true
|
|
|
},
|
|
|
- onSubmit: _throttle(function() {
|
|
|
+ onSubmit: _throttle(function(type) {
|
|
|
if(!this.title) {
|
|
|
this.$toast('请输入训练标题')
|
|
|
return
|
|
@@ -290,10 +260,20 @@ export default {
|
|
|
userIdList: subject.userIdList
|
|
|
})
|
|
|
})
|
|
|
- if(notAccompanySong.length - subjectLength < 0 && notAccompanySong != 0) {
|
|
|
- console.log('选择曲目')
|
|
|
+ if(notAccompanySong.length - subjectLength <= 0 && notAccompanySong != 0 && type[0] != 1) {
|
|
|
+ // console.log('选择曲目')
|
|
|
+ this.$dialog.confirm({
|
|
|
+ message: notAccompanySong.join(',') + '声部未选择云教练训练曲目,是否继续布置作业?',
|
|
|
+ confirmButtonColor: '#01C1B5'
|
|
|
+ }).then(() => {
|
|
|
+ // on confirm
|
|
|
+ this.onSubmit(1)
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ // on cancel
|
|
|
+ });
|
|
|
+ return
|
|
|
}
|
|
|
-
|
|
|
this.$toast.loading({
|
|
|
message: '加载中...',
|
|
|
duration: 10000,
|
|
@@ -408,10 +388,13 @@ export default {
|
|
|
top: .15rem;
|
|
|
left: 0.12rem;
|
|
|
}
|
|
|
-
|
|
|
/deep/.van-tab {
|
|
|
font-size: 16px;
|
|
|
}
|
|
|
+/deep/.van-popup--bottom {
|
|
|
+ border-radius: 0px 0px 0px 0px!important;
|
|
|
+ overflow: auto!important;
|
|
|
+}
|
|
|
.accompanyHeader {
|
|
|
font-size: .14rem;
|
|
|
padding: .16rem .08rem .14rem;
|
|
@@ -433,78 +416,5 @@ export default {
|
|
|
color: #666666;
|
|
|
}
|
|
|
|
|
|
-.paddingB80 {
|
|
|
- padding-bottom: 0.8rem;
|
|
|
-}
|
|
|
-.studentName {
|
|
|
- font-size: 0.16rem;
|
|
|
- color: #1a1a1a;
|
|
|
- line-height: 0.22rem;
|
|
|
-}
|
|
|
-.studentContainer {
|
|
|
- /deep/.van-cell__title {
|
|
|
- font-size: 0.14rem;
|
|
|
- color: @mFontColor;
|
|
|
- // flex: 1 auto;
|
|
|
- }
|
|
|
-
|
|
|
- .logo {
|
|
|
- width: 0.42rem;
|
|
|
- height: 0.42rem;
|
|
|
- margin-right: 0.12rem;
|
|
|
- border-radius: 100%;
|
|
|
- }
|
|
|
-
|
|
|
- .input-cell {
|
|
|
- padding: 0.2rem 0.16rem;
|
|
|
-
|
|
|
- .van-radio {
|
|
|
- justify-content: flex-end;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.van-cell__value {
|
|
|
- height: 0.2rem;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.van-radio__icon .van-icon {
|
|
|
- border-color: #d3d3d3;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.van-radio__icon--checked {
|
|
|
- .van-icon {
|
|
|
- border-color: @mColor;
|
|
|
- background: @mColor;
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- .van-tag {
|
|
|
- margin-left: 0.08rem;
|
|
|
- }
|
|
|
-}
|
|
|
-.button-group-popup {
|
|
|
- position: fixed;
|
|
|
- bottom: 0;
|
|
|
- padding: 0.2rem 0;
|
|
|
- width: 100%;
|
|
|
- text-align: center;
|
|
|
- background-color: #ffffff;
|
|
|
- .btn {
|
|
|
- line-height: 0.5rem;
|
|
|
- display: inline-block;
|
|
|
- border: 1px solid @mColor;
|
|
|
- width: 1.65rem;
|
|
|
- border-radius: 0.4rem;
|
|
|
- color: @mColor;
|
|
|
- background: #fff;
|
|
|
- font-size: 0.18rem;
|
|
|
- &.primary {
|
|
|
- color: #fff;
|
|
|
- background: @mColor;
|
|
|
- }
|
|
|
- }
|
|
|
- .btn + .btn {
|
|
|
- margin-left: 0.1rem;
|
|
|
- }
|
|
|
-}
|
|
|
</style>
|