|
@@ -7,7 +7,7 @@ import { createState } from '../createState'
|
|
|
import { state } from '@/state'
|
|
|
import { getWeekCh } from '@/helpers/utils'
|
|
|
import ColCalendar from '@/components/col-calendar'
|
|
|
-import { ElButton, ElMessageBox } from 'element-plus'
|
|
|
+import { ElButton, ElDialog, ElMessageBox, ElTag } from 'element-plus'
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: 'arrange',
|
|
@@ -106,8 +106,10 @@ export default defineComponent({
|
|
|
createState.selectCourseList = [...tempList]
|
|
|
},
|
|
|
onCloseTag(item: any) {
|
|
|
- ElMessageBox.confirm('确定删除该课程吗?', '提示', {
|
|
|
- type: 'warning'
|
|
|
+ Dialog.confirm({
|
|
|
+ title: '提示',
|
|
|
+ message: '您是否要删除该选择的课程?',
|
|
|
+ confirmButtonColor: 'var(--van-primary)'
|
|
|
}).then(() => {
|
|
|
const index = createState.selectCourseList.findIndex(
|
|
|
(course: any) => course.startTime === item.startTime
|
|
@@ -164,8 +166,10 @@ export default defineComponent({
|
|
|
} catch (e: any) {
|
|
|
// 报错时需要重置日历表的数据
|
|
|
const message = e.message
|
|
|
- ElMessageBox.confirm(message, '提示', {
|
|
|
- type: 'warning'
|
|
|
+ Dialog.alert({
|
|
|
+ title: '提示',
|
|
|
+ confirmButtonColor: 'var(--van-primary)',
|
|
|
+ message
|
|
|
}).then(() => {
|
|
|
this.getList(this.calendarDate || new Date())
|
|
|
createState.selectCourseList = []
|
|
@@ -196,17 +200,28 @@ export default defineComponent({
|
|
|
} else if (this.selectType === 'noEnough') {
|
|
|
this.selectStatus = false
|
|
|
}
|
|
|
- createState.live.coursePlanList = []
|
|
|
+ // 只能重置课程时间
|
|
|
+ createState.live.coursePlanList.forEach((item: any) => {
|
|
|
+ item.startTime = ''
|
|
|
+ item.endTime = ''
|
|
|
+ })
|
|
|
+
|
|
|
setTimeout(() => {
|
|
|
createState.coursePlanStatus = false
|
|
|
}, 500)
|
|
|
},
|
|
|
async onSure() {
|
|
|
// 判断是否有锁课状态 或 是锁课类型的 并且已经有课的
|
|
|
- if (
|
|
|
- this.selectType === 'enough' ||
|
|
|
- createState.live.coursePlanList.length > 0
|
|
|
- ) {
|
|
|
+ console.log(
|
|
|
+ this.selectType,
|
|
|
+ createState.coursePlanStatus,
|
|
|
+ createState.live.coursePlanList
|
|
|
+ )
|
|
|
+ let courseLength = 0
|
|
|
+ createState.live.coursePlanList.forEach((item: any) => {
|
|
|
+ item.startTime && courseLength++
|
|
|
+ })
|
|
|
+ if (this.selectType === 'enough' || courseLength > 0) {
|
|
|
this.selectStatus = false
|
|
|
createState.active = 4
|
|
|
return
|
|
@@ -244,17 +259,16 @@ export default defineComponent({
|
|
|
<div class={styles.rTag}>
|
|
|
{this.showSelectList.map((item: any) => (
|
|
|
<>
|
|
|
- <Tag
|
|
|
- plain
|
|
|
+ <ElTag
|
|
|
round
|
|
|
- closeable
|
|
|
size="large"
|
|
|
- type="primary"
|
|
|
- class={styles.tag}
|
|
|
+ effect="light"
|
|
|
+ class={['mb-2 !border-[#2DC7AA] !color-[#2DC7AA]']}
|
|
|
+ closable
|
|
|
onClose={() => this.onCloseTag(item)}
|
|
|
>
|
|
|
{item.title}
|
|
|
- </Tag>
|
|
|
+ </ElTag>
|
|
|
<br />
|
|
|
</>
|
|
|
))}
|
|
@@ -282,7 +296,58 @@ export default defineComponent({
|
|
|
</ElButton>
|
|
|
</div>
|
|
|
|
|
|
- <Popup show={this.selectStatus} class={styles.selectPopup}>
|
|
|
+ <ElDialog
|
|
|
+ modelValue={this.selectStatus}
|
|
|
+ onUpdate:modelValue={e => (this.selectStatus = e)}
|
|
|
+ width={'400px'}
|
|
|
+ title="提示"
|
|
|
+ >
|
|
|
+ <div class={styles.selectContainer}>
|
|
|
+ <div class={styles.selectPopupContent}>
|
|
|
+ <p class={styles.desc}>
|
|
|
+ {this.selectType === 'noEnough' && !createState.coursePlanStatus
|
|
|
+ ? '您所选择的上课时间未达到您输入的课时数,系统根据已选时间将自动按周顺延排课。'
|
|
|
+ : '您已选择以下上课时间段,时间段会暂时锁定,锁定期间学员不可购买该时间段课程。'}
|
|
|
+ </p>
|
|
|
+ {createState.live.coursePlanList &&
|
|
|
+ createState.live.coursePlanList.length > 0 &&
|
|
|
+ createState.coursePlanStatus && (
|
|
|
+ <p class={styles.times}>
|
|
|
+ {createState.live.coursePlanList.map((item: any) => (
|
|
|
+ <span>
|
|
|
+ {dayjs(item.startTime || new Date()).format(
|
|
|
+ 'YYYY-MM-DD'
|
|
|
+ )}{' '}
|
|
|
+ {dayjs(item.startTime || new Date()).format('HH:mm')}~
|
|
|
+ {dayjs(item.endTime || new Date()).format('HH:mm')}
|
|
|
+ </span>
|
|
|
+ ))}
|
|
|
+ </p>
|
|
|
+ )}
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class={styles.selectBtn}>
|
|
|
+ <ElButton
|
|
|
+ type="primary"
|
|
|
+ round
|
|
|
+ plain
|
|
|
+ class="!w-40 !h-[38px]"
|
|
|
+ onClick={this.onReset}
|
|
|
+ >
|
|
|
+ {this.selectType === 'noEnough' ? '继续选择' : '重新选择'}
|
|
|
+ </ElButton>
|
|
|
+ <ElButton
|
|
|
+ type="primary"
|
|
|
+ round
|
|
|
+ class="!w-40 !h-[38px]"
|
|
|
+ onClick={this.onSure}
|
|
|
+ >
|
|
|
+ 确认
|
|
|
+ </ElButton>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </ElDialog>
|
|
|
+ {/* <Popup show={this.selectStatus} class={styles.selectPopup}>
|
|
|
<div class={styles.selectContainer}>
|
|
|
<div class={styles.rTitle}>
|
|
|
<span>提示</span>
|
|
@@ -332,7 +397,7 @@ export default defineComponent({
|
|
|
</Button>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </Popup>
|
|
|
+ </Popup> */}
|
|
|
</div>
|
|
|
)
|
|
|
}
|