import ColField from '@/components/col-field' import ColFieldGroup from '@/components/col-field-group' import ColPopup from '@/components/col-popup' import SubjectModel from '@/business-components/subject-list' import { ActionSheet, Button, Field, Form, Sticky } from 'vant' import { defineComponent } from 'vue' import styles from './course.module.less' import { createState } from './createState' import { verifiyNumberInteger, verifyNumberIntegerAndFloat } from '@/helpers/toolsValidate' import request from '@/helpers/request' import { state } from '@/state' import ColHeader from '@/components/col-header' import TheSticky from '@/components/the-sticky' // 校验函数返回 true 表示校验通过,false 表示不通过 export const validator = val => { console.log(val) if (Number(val) <= 0) { return '课程组售价必须大于0' } else { return true } } export default defineComponent({ name: 'course', data() { return { subjectStatus: false, classTimeStatus: false, checked: false } }, computed: { choiceSubjectIds() { // 选择的科目编号 const ids = createState.live.subjectId ? Number(createState.live.subjectId) : null return ids ? [ids] : [] }, subjectList() { // 学科列表 return createState.subjectList || [] }, lessonSubjectName() { // 选择的科目 let tempStr = '' this.subjectList.forEach((item: any) => { if (this.choiceSubjectIds.includes(item.id)) { tempStr = item.name } }) return tempStr }, calcSingleRatePrice() { const rate = createState.rate || 0 const nums = createState.live.courseNum const price = createState.live.coursePrice || 0 return nums ? ((price / nums) * (1 - rate / 100)).toFixed(2) : 0 }, calcRatePrice() { // 计算手续费 const rate = createState.rate || 0 const price = createState.live.coursePrice || 0 return (price - (rate / 100) * price).toFixed(2) }, disabled() { return createState.live.courseGroupId ? true : false } }, async mounted() { try { const resVersion = await request.post('/api-teacher/open/appVersion', { data: { platform: state.platformType === 'STUDENT' ? 'ios-student' : 'ios-teacher', version: state.version } }) this.checked = resVersion.data.check ? true : false // 审核版本金额默认为0 if (this.checked) { createState.live.coursePrice = 0 } } catch { // } }, methods: { onChoice(id: number) { createState.live.subjectId = id let tempStr = '' this.subjectList.forEach((item: any) => { if (id == item.id) { tempStr = item.name } }) createState.live.subjectName = tempStr this.subjectStatus = false }, onFormatter(val: any) { return verifyNumberIntegerAndFloat(val) }, onFormatterInt(val: any) { if (val && val >= 1) { return verifiyNumberInteger(val) } else { return '' } }, onSelect(action: any) { createState.live.singleCourseMinutes = Number(action.name || 0) + Number(action.freeMinutes || 0) createState.live.singleMins = Number(action.name || 0) createState.live.freeMinutes = Number(action.freeMinutes || 0) } }, render() { return (
(createState.active = 2)} scrollToError > { if (createState.live.courseGroupId) { return } this.subjectStatus = true }} rules={[{ required: true, message: '请选择课程声部' }]} placeholder="请选择课程声部" /> 课时 }} /> { if (!createState.live.courseGroupId) { this.classTimeStatus = true } }} rules={[{ required: true, message: '请选择单课时时长' }]} placeholder="请选择单课时时长" /> {/* 是审核版本才会显示金额 */} {!this.checked && ( }} /> )} {/* 是审核版本才会显示金额 */} {!this.checked && (

扣除手续费后您的课程预计收入为:

单课时{this.calcSingleRatePrice}元/人

课程组总收入{this.calcRatePrice}元/人

您的课程收入将在课程结束后结算到您的账户中

)}
) } })