import ColField from '@/components/col-field' import ColFieldGroup from '@/components/col-field-group' import { Button, Col, Field, Form, Radio, RadioGroup, Row, Sticky, Tab, Tabs, Image, Icon, Popup, DatetimePicker } from 'vant' import { defineComponent } from 'vue' import { createState } from './createState' import styles from './course-start.module.less' import ColUpload from '@/components/col-upload' import { verifiyNumberInteger } from '@/helpers/toolsValidate' import { formatterDate } from '@/helpers/utils' import activeButtonIcon from '@common/images/icon_checkbox.png' import inactiveButtonIcon from '@common/images/icon_checkbox_default.png' import dayjs from 'dayjs' export default defineComponent({ name: 'course-start', data() { return { typeDateTime: 'start', dateStatus: false, currentDate: new Date(), minDate: dayjs().toDate(), maxDate: new Date() } }, computed: { disabled() { return createState.live.courseGroupId ? true : false } }, mounted() { if (createState.selectCourseList[0]?.startTime) { this.maxDate = dayjs(createState.selectCourseList[0].startTime) .subtract(1, 'day') .toDate() } createState.live.salesStartDate = createState.live.salesStartDate || dayjs(this.minDate).format('YYYY-MM-DD') createState.live.salesEndDate = createState.live.salesEndDate || dayjs(this.maxDate).format('YYYY-MM-DD') }, methods: { tabChange(name: number) { createState.tabIndex = name }, selectImg(val: string) { createState.live.backgroundPic = '' createState.live.backgroundPicTemplate = val }, onFormatterInt(val: any) { if (val && val >= 1) { return verifiyNumberInteger(val) } else { return '' } }, onConfirm(val: any) { if (this.typeDateTime === 'start') { createState.live.salesStartDate = dayjs(val).format('YYYY-MM-DD') if ( createState.live.salesEndDate && dayjs(createState.live.salesStartDate).isAfter( dayjs(createState.live.salesEndDate) ) ) { createState.live.salesEndDate = '' } } else if (this.typeDateTime === 'end') { createState.live.salesEndDate = dayjs(val).format('YYYY-MM-DD') } this.dateStatus = false } }, render() { return (
) } })