import ColCropper from '@/components/col-cropper' import styles from './index.module.less' import request from '@/helpers/request' import { verifiyNumberInteger, verifyNumberIntegerAndFloat } from '@/helpers/toolsValidate' import { ElButton, ElCol, ElForm, ElFormItem, ElImage, ElInput, ElOption, ElRadio, ElRadioGroup, ElRow, ElSelect, ElTabPane, ElTabs } from 'element-plus' import { defineComponent } from 'vue' import { createState } from '../createState' import { scrollAnimation } from '@/util/scroll' export default defineComponent({ name: 'course-info', data() { return { url: '', calcRatePrice: 0 as any, calcSingleRatePrice: 0 as any } }, computed: { subjectList() { // 学科列表 return createState.subjectList || [] } }, async mounted() { try { // 获取手续费和分钟数 let config = await request.get( '/api-website/sysConfig/queryByParamNameList', { params: { paramNames: 'live_service_rate,live_time_setting' } } ) let configData = config.data || [] configData.forEach((item: any) => { if (item.paramName === 'live_time_setting') { let mins = item.paramValue ? JSON.parse(item.paramValue) : [] let tempArr = [] as any mins.forEach((item: any) => { tempArr.push({ ...item, name: item.courseMinutes }) }) createState.minutes = [...tempArr] } if (item.paramName === 'live_service_rate') { createState.rate = item.paramValue } }) let teacher = await request.post('/api-website/teacher/querySubject') createState.subjectList = teacher.data || [] } catch (err: any) { console.log(err) } }, methods: { // onChoice(id: number) { // createState.live.subjectId = id // this.subjectStatus = false // }, onFormaterCourse(e: any) { e.target.value = verifiyNumberInteger(e.target.value) let rate = createState.rate || 0 let nums = createState.live.courseNum let tempPrice = createState.live.coursePrice || 0 this.calcSingleRatePrice = nums ? ((tempPrice / nums) * (1 - rate / 100)).toFixed(2) : 0 }, onFormatter(e: any) { e.target.value = verifyNumberIntegerAndFloat(e.target.value) // 计算手续费 let rate = createState.rate || 0 let price = e.target.value || 0 this.calcRatePrice = (price - (rate / 100) * price).toFixed(2) let nums = createState.live.courseNum // let tempPrice = createState.live.coursePrice || 0 this.calcSingleRatePrice = nums ? ((price / nums) * (1 - rate / 100)).toFixed(2) : 0 }, tabChange(name: number) { ;(this as any).$refs.form.clearValidate('lessonCoverTemplateUrl') ;(this as any).$refs.form.clearValidate('lessonCoverUrl') createState.tabIndex = name }, selectImg(val: string) { // createState.live.lessonCoverUrl = '' // createState.live.lessonCoverTemplateUrl = val } }, render() { return ( <> {createState.subjectList.map((item: any) => ( ))} 课时 }} /> {createState.minutes.map((item: any) => ( ))} }} />

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

单课时 {this.calcSingleRatePrice} 元/人

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

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

{/* { this.tabChange(name) }} > {createState.tabIndex === 1 && ( {createState.templateList.map((item: any) => (
{ this.selectImg(item) }} > {''}
))}
)} {createState.tabIndex === 2 && ( { createState.live.lessonCoverUrl = data createState.live.lessonCoverTemplateUrl = '' }} options={{ fixedNumber: [3, 2], autoCropWidth: 300, autoCropHeight: 200 }} /> )} */}
{ ;(this as any).$refs.form.validate(async (valid: boolean) => { if (valid) { createState.active = 1 const currentY = document.documentElement.scrollTop || document.body.scrollTop scrollAnimation(currentY, 0) } else { this.$nextTick(() => { let isError = document.getElementsByClassName('is-error') isError[0].scrollIntoView({ block: 'center', behavior: 'smooth' }) }) return false } }) }} > 下一步
) } })