|
@@ -20,6 +20,9 @@
|
|
|
<van-field v-model="form.studentNum" label="每班人数" disabled input-align="right" size="large" placeholder="每班预计招收人数" />
|
|
|
<van-field v-model="form.singleClassMinutes" @click="onClickSingleClass" label="每课时长" :readonly="true" input-align="right" is-link size="large" placeholder="请输入每课时长" />
|
|
|
<!-- 判断是否选择活动方案 -->
|
|
|
+ <div class="courseTips" v-if="loadData.vipGroupActivitySelect.type == 'DISCOUNT' && (loadData.vipGroupActivitySelect.maxCourseNum > 0 && loadData.vipGroupActivitySelect.minCourseNum > 0)">
|
|
|
+ 该活动最小课时数:<span>{{ loadData.vipGroupActivitySelect.minCourseNum }}</span>节 最大课时数:<span>{{ loadData.vipGroupActivitySelect.maxCourseNum }}</span>节
|
|
|
+ </div>
|
|
|
<van-field v-if="statusList.hasOnline" v-model="form.onlineClassesNums" @keyup="onClassKeyUp" label="线上课" input-align="right" size="large" placeholder="请输入次数" type="number" />
|
|
|
<van-field v-if="statusList.hasOffline" v-model="form.offlineClassesNums" @keyup="onClassKeyUp('offLine')" label="线下课" input-align="right" size="large" placeholder="请输入次数" type="number" />
|
|
|
<van-field v-if="form.offlineClassesNums > 0" v-model="formName.teacherSchoolName" @click="onGetSheetList('teacherSchool')" label="线下课地址" :readonly="true" input-align="right" is-link size="large" placeholder="请选择" />
|
|
@@ -593,10 +596,6 @@
|
|
|
form.totalClassTime = totalCount
|
|
|
other.giveNum = 0
|
|
|
}
|
|
|
- } else if(vas.type == 'DISCOUNT' && vas.attribute3 && vas.attribute3 > 0) {
|
|
|
- form.totalClassTime = vas.attribute3
|
|
|
- other.giveNum = 0
|
|
|
- this.statusList.teachOnOrOff = false // 隐藏赠课
|
|
|
} else { // 折扣活动
|
|
|
form.totalClassTime = totalCount
|
|
|
other.giveNum = 0
|
|
@@ -736,6 +735,9 @@
|
|
|
}
|
|
|
},
|
|
|
onShowTimeTable() { // 显示排课列表
|
|
|
+ // if(!this.checkCourseList()) {
|
|
|
+ // return
|
|
|
+ // }
|
|
|
this.statusList.classTime = true
|
|
|
this.setTimeTable()
|
|
|
},
|
|
@@ -1066,9 +1068,12 @@
|
|
|
return false
|
|
|
}
|
|
|
|
|
|
- if(vipGroupActivitySelect.type == 'DISCOUNT' && vipGroupActivitySelect.attribute3 && vipGroupActivitySelect.attribute3 > 0) {
|
|
|
- if((parseInt(form.onlineClassesNums) + parseInt(form.offlineClassesNums)) != vipGroupActivitySelect.attribute3) {
|
|
|
- this.$toast('课时总数必须为' + form.totalClassTime + '节')
|
|
|
+
|
|
|
+ if(vipGroupActivitySelect.type == 'DISCOUNT' && vipGroupActivitySelect.minCourseNum > 0 && vipGroupActivitySelect.maxCourseNum > 0) {
|
|
|
+ // debugger
|
|
|
+ let tempCourseCount = (parseInt(form.onlineClassesNums) + parseInt(form.offlineClassesNums))
|
|
|
+ if(vipGroupActivitySelect.minCourseNum > tempCourseCount || tempCourseCount > vipGroupActivitySelect.maxCourseNum) {
|
|
|
+ this.$toast('课时总数最小课时为:' + vipGroupActivitySelect.minCourseNum + '节,最大课时为:' + vipGroupActivitySelect.maxCourseNum + '节')
|
|
|
return
|
|
|
}
|
|
|
}
|
|
@@ -1179,6 +1184,39 @@
|
|
|
setLoading(false)
|
|
|
})
|
|
|
},
|
|
|
+ checkCourseList() {
|
|
|
+ let form = this.form
|
|
|
+ let scheduleList = this.scheduleList || []
|
|
|
+ console.log(this.scheduleList)
|
|
|
+ let hasOnLine = false // 是否有线上课时安排
|
|
|
+ let hasOffLine = false
|
|
|
+ scheduleList.forEach(item => {
|
|
|
+ if(item.type == '线上') {
|
|
|
+ hasOnLine = true
|
|
|
+ }
|
|
|
+ if(item.type == '线下') {
|
|
|
+ hasOffLine = true
|
|
|
+ }
|
|
|
+ })
|
|
|
+ console.log(hasOnLine, hasOffLine)
|
|
|
+ let statusList = this.statusList
|
|
|
+ let onlineClassesStatus = !form.onlineClassesNums && form.onlineClassesNums <= 0 ? true : false
|
|
|
+ let offlineClassesStatus = !form.offlineClassesNums && form.offlineClassesNums <= 0 ? true : false
|
|
|
+ if (statusList.hasOnline) {
|
|
|
+ if (!onlineClassesStatus && hasOnLine) {
|
|
|
+ this.$toast('课时安排缺少线上课类型')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (statusList.hasOffline) {
|
|
|
+ if (offlineClassesStatus && hasOffline) {
|
|
|
+ this.$toast('课时安排缺少线下课类型')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true
|
|
|
+ },
|
|
|
// 搜索
|
|
|
onSearch() {
|
|
|
this.params.page = 1
|
|
@@ -1263,6 +1301,15 @@
|
|
|
text-align: center;
|
|
|
}
|
|
|
|
|
|
+ .courseTips {
|
|
|
+ font-size: .13rem;
|
|
|
+ padding: 10px 16px;
|
|
|
+ background: #F3F4F8;
|
|
|
+ & > span {
|
|
|
+ color: red;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
.add-plan {
|
|
|
display: flex;
|
|
|
align-items: center;
|