import ColCropper from '@/components/col-cropper' import styles from './index.module.less' import request from '@/helpers/request' import { 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 } }, computed: { choiceSubjectIds() { // 选择的科目编号 let ids = createState.lessonGroup.lessonSubject ? Number(createState.lessonGroup.lessonSubject) : 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 } // calcRatePrice() { // // 计算手续费 // let rate = createState.rate || 0 // let price = createState.lessonGroup.lessonPrice || 0 // return (price - (rate / 100) * price).toFixed(2) // } }, async mounted() { try { if (createState.subjectList.length <= 0) { const res = await request.post('/api-website/teacher/querySubject') createState.subjectList = res.data || [] } const rate = createState.rate || 0 const price = createState.lessonGroup.lessonPrice || 0 this.calcRatePrice = (price - (rate / 100) * price).toFixed(2) // setInterval(() => { // console.log( // createState.lessonGroup.lessonCoverTemplateUrl, // 'createState.lessonGroup.lessonCoverTemplateUrl' // ) // }, 1000) } catch { // } }, methods: { // onChoice(id: number) { // createState.lessonGroup.lessonSubject = id // this.subjectStatus = false // }, 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) }, tabChange(name: number) { ;(this as any).$refs.form.clearValidate('lessonCoverTemplateUrl') ;(this as any).$refs.form.clearValidate('lessonCoverUrl') createState.tabIndex = name }, selectImg(val: string) { createState.lessonGroup.lessonCoverUrl = '' createState.lessonGroup.lessonCoverTemplateUrl = val } }, render() { return (
{createState.subjectList.map((item: any) => ( ))} }} />

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

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

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

{ this.tabChange(name) }} > {createState.tabIndex === 1 && ( {createState.templateList.map((item: any) => (
{ this.selectImg(item) }} > {''}
))}
)} {createState.tabIndex === 2 && ( {/* { createState.lessonGroup.lessonCoverTemplateUrl = '' }} /> */} { createState.lessonGroup.lessonCoverUrl = data createState.lessonGroup.lessonCoverTemplateUrl = '' }} options={{ // fixedNumber: [3, 2], // autoCropWidth: 300, // autoCropHeight: 200 title: '课程封面', fixedNumber: [3.34, 2], autoCropWidth: 375, autoCropHeight: 212 }} /> )}
{ ;(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 } }) }} > 下一步
) } })