|
@@ -18,8 +18,7 @@
|
|
|
<van-cell-group>
|
|
|
<van-field v-model="form.studentNum" label="每班人数" disabled input-align="right" size="large"
|
|
|
placeholder="每班预计招收人数" />
|
|
|
- <van-field v-model="form.singleClassMinutes" 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="请输入每课时长" />
|
|
|
<!-- 判断是否选择活动方案 -->
|
|
|
<van-field v-if="formName.vipGroupActivityName || statusList.hasOnline" v-model="form.onlineClassesNums" @keyup="onClassKeyUp" label="线上课" input-align="right"
|
|
|
size="large" placeholder="请输入次数" type="number" />
|
|
@@ -82,6 +81,9 @@
|
|
|
<van-button type="primary" @click="onSubmit" round size="large">确认</van-button>
|
|
|
</div>
|
|
|
|
|
|
+
|
|
|
+ <!-- 每课时长 -->
|
|
|
+ <van-action-sheet v-model="statusList.classTimerStatus" :actions="loadData.classTimer" cancel-text="取消" @cancel="statusList.classTimerStatus = false" @select="onClassTimerSelect" />
|
|
|
<!-- 报名开始时间&报名结束时间 -->
|
|
|
<van-popup v-model="enlistForm.status" position="bottom">
|
|
|
<van-datetime-picker v-model="enlistForm.currentDate" type="date" :min-date="enlistForm.minDate"
|
|
@@ -165,6 +167,7 @@ export default {
|
|
|
hasOffline: false, // 是否显示线下
|
|
|
classTime: false, // 课表展示
|
|
|
headerStatus: false, // 头部是否展示
|
|
|
+ classTimerStatus: false, // 每课时长状态
|
|
|
},
|
|
|
loadData: { // 下拉加载数据
|
|
|
subjectList: [], // 声部列表
|
|
@@ -178,6 +181,7 @@ export default {
|
|
|
giveTeachMode: [{ name: '线上课', value: 'ONLINE' }, { name: '线下课', value: 'OFFLINE' }], // 赠课
|
|
|
giveTeachModeSelect: [], // 选中的赠课JSON
|
|
|
teacherCategory: [], // 老师课酬信息
|
|
|
+ classTimer: [], // 每课时长
|
|
|
},
|
|
|
sheetForm: { // 上拉弹窗
|
|
|
currentType: null, // 当前选择的类型
|
|
@@ -378,10 +382,20 @@ export default {
|
|
|
formName.vipGroupCategoryIndex = index
|
|
|
loadData.vipGroupCategorySelect = value
|
|
|
form.studentNum = value.studentNum // 每班人数
|
|
|
- form.singleClassMinutes = value.singleClassMinutes // 每课时长
|
|
|
+ // form.singleClassMinutes = value.singleClassMinutes // 每课时长
|
|
|
form.onlineClassesUnitPrice = value.onlineClassesUnitPrice
|
|
|
form.offlineClassesUnitPrice = value.offlineClassesUnitPrice
|
|
|
|
|
|
+ // 每课时长赋值
|
|
|
+ this.loadData.classTimer = []
|
|
|
+ let tempSingle = value.singleClassMinutes.split(",")
|
|
|
+ tempSingle.forEach(item => {
|
|
|
+ this.loadData.classTimer.push({
|
|
|
+ name: item,
|
|
|
+ value: item
|
|
|
+ })
|
|
|
+ })
|
|
|
+
|
|
|
// 重置活动文案
|
|
|
form.vipGroupActivityId = null
|
|
|
formName.vipGroupActivityName = null
|
|
@@ -457,6 +471,17 @@ export default {
|
|
|
this.formName.giveTeachModeName = value.name
|
|
|
this.statusList.giveTeachModeStatus = false
|
|
|
},
|
|
|
+ onClickSingleClass() {
|
|
|
+ if(!this.formName.vipGroupCategoryName) {
|
|
|
+ this.$toast('请选择课程形式')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.statusList.classTimerStatus = true
|
|
|
+ },
|
|
|
+ onClassTimerSelect(value) { // 每课时长设置
|
|
|
+ this.form.singleClassMinutes = value.value
|
|
|
+ this.statusList.classTimerStatus = false
|
|
|
+ },
|
|
|
onCurrentConfirm(value) { // 排课开始时间
|
|
|
let selectDate = new Date(value)
|
|
|
let tempMonth = selectDate.getMonth() + 1 >= 10 ? selectDate.getMonth() + 1 : '0' + (selectDate.getMonth() + 1)
|
|
@@ -495,7 +520,7 @@ export default {
|
|
|
},
|
|
|
onCourseShedule() { // 课时安排
|
|
|
if(!this.form.singleClassMinutes) {
|
|
|
- this.$toast('请选择课程形式')
|
|
|
+ this.$toast('请选每课时长')
|
|
|
return
|
|
|
}
|
|
|
if(this.other.giveNum > 0 && !this.form.giveTeachMode) {
|
|
@@ -653,7 +678,7 @@ export default {
|
|
|
let onss = obj.onlineSalarySettlement
|
|
|
// 有线上课
|
|
|
if(onss.salarySettlementType == 'TEACHER_DEFAULT') {
|
|
|
- let b = vcs.singleClassMinutes / 30 // 每30Min计算一些课酬
|
|
|
+ let b = vcs.singleClassMinutes / 45 // 每30Min计算一些课酬
|
|
|
form.onlineTeacherSalary = (b * tc.onlineClassesSalary).toFixed(2) // 线上课酬
|
|
|
} else if(onss.salarySettlementType == 'RATIO_DISCOUNT') {
|
|
|
// 老师课酬的折扣 如果有则不打折
|
|
@@ -667,7 +692,7 @@ export default {
|
|
|
let offss = obj.offlineSalarySettlement
|
|
|
// 有线下课
|
|
|
if(offss.salarySettlementType == 'TEACHER_DEFAULT') {
|
|
|
- let b = (vcs.singleClassMinutes / 30).toFixed(2) // 每30Min计算一些课酬
|
|
|
+ let b = (vcs.singleClassMinutes / 45).toFixed(2) // 每30Min计算一些课酬
|
|
|
form.offlineTeacherSalary = (b * tc.offlineClassesSalary).toFixed(2) // 线上课酬
|
|
|
} else if(offss.salarySettlementType == 'RATIO_DISCOUNT') {
|
|
|
// 老师课酬的折扣
|
|
@@ -792,6 +817,10 @@ export default {
|
|
|
this.$toast('请选择线下课地址')
|
|
|
return false
|
|
|
}
|
|
|
+ if(!form.classTimer) {
|
|
|
+ this.$toast('请选择每课时长')
|
|
|
+ return false
|
|
|
+ }
|
|
|
if(!form.onlineClassesNums && form.onlineClassesNums <= 0) {
|
|
|
this.$toast('上课次数有误')
|
|
|
return false
|