| 
					
				 | 
			
			
				@@ -87,10 +87,52 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         subjectList.value = res.data || [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } catch {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //上课时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const startClassTime = ref<string>('') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const endClassTime = ref<string>('') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const getClassTime = async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const res = await request.get( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          '/api-teacher/sysConfig/queryByParamNameList', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            params: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              paramNames: 'course_start_setting,course_end_setting' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (res.code === 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          for (let i = 0, len = res.data.length; i < len; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.data[i].paramName === 'course_start_setting') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              startClassTime.value = res.data[i].paramValue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (res.data[i].paramName === 'course_end_setting') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              endClassTime.value = res.data[i].paramValue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } catch (error) {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     onMounted(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       getSubjectSelect() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      getClassTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //检查上课时间是否满足后台设置的最晚时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const checkClassTimeIsSatisfyLastTime = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const baseTime = dayjs() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const _endTime = baseTime.set('hour', Number(startTime.value.split(':')[0])) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .set('minute', Number(startTime.value.split(':')[1])) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .add(params.singleClssTime, 'minute') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const _endClassTime = baseTime.set('hour', Number(endClassTime.value.split(':')[0])) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      .set('minute', Number(endClassTime.value.split(':')[1])) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // console.log(_endTime.format('HH:mm'),_endClassTime.format('HH:mm')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        isOk: _endTime.isBefore(_endClassTime), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        _endClassTime: _endClassTime.format('HH:mm') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //开始时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const onSetTime = async (time: string) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       console.log(time) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -160,6 +202,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const curriculum = ref<string[]>([]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //  设置排课数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const setParmas = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (!params.courseName) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Toast('请填写课程名称') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -168,10 +211,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Toast('请选择训练声部') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (!students.value.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Toast('请选择上课学员') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (!params.singleClssTime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Toast('请填写单课时时长') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -190,10 +230,21 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Toast('请选择上课时间') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let checkData = checkClassTimeIsSatisfyLastTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!checkData.isOk) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Toast(`上课结束时间不能晚于${checkData._endClassTime}`) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (!students.value.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Toast('请选择上课学员') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const { timeList, curriculumList } = calcDate() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       params.timeList = timeList 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       curriculum.value = curriculumList 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      console.log(curriculumList) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // console.log(curriculumList) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       confirmShow.value = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -232,239 +283,247 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       周日: 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // console.log(Object.values(week)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    return () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <ColHeader /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div class={styles.container}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="课程名称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请输入课程名称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-model={params.courseName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="训练声部" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请选择训练声部" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            modelValue={params.subjectName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onClick={() => (voiceShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Cell style={{ padding: 0 }}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const minStartHour = startClassTime.value.split(':')[0] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const minStartMimute = startClassTime.value.split(':')[1] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <ColHeader /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div class={styles.container}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="课程名称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请输入课程名称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-model={params.courseName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              style={{ margin: 0 }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              border={false} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              label="上课学员" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              placeholder="请选择上课学员" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="训练声部" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请选择训练声部" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              onClick={() => (selectStudentShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              modelValue={params.subjectName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onClick={() => (voiceShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            {students.value.length ? ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              <div class={styles.tags}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                {students.value.map((n: IStudent, index: number) => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <Tag closeable onClose={() => onDeleteStudent(index)}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    {n.userName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  </Tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                ))} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ) : null} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </Cell> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="课时数" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请输入课时数" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              input: () => <Stepper v-model={params.classNum}></Stepper> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            class={styles.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            type="number" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="单课时时长" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请输入课程时长" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            modelValue={params.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onUpdate:modelValue={t => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              if (Math.abs(t) > 60) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                Toast('时长不能大于60分钟') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              params.singleClssTime = Math.abs(t) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // v-model={params.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              'right-icon': () => <div>分钟</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="开始日期" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请选择开始日期" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            modelValue={params.date} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onClick={() => (dateShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            title="循环周次" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              label: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <RadioGroup class={styles.week} v-model={params.week}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  {Object.keys(week).map((n: string) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    return ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      <Radio 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        disabled={ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                          params.isSkipHolidays && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                          (n === '周六' || n === '周日') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        name={n} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        {n} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      </Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  })} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </RadioGroup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            label="上课时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            placeholder="请选择上课时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            modelValue={timeScope.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onClick={() => (timeShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            title="是否跳过节假日" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              value: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <RadioGroup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  class={styles.holdays} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  v-model={params.isSkipHolidays} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  onChange={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      params.isSkipHolidays && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      (params.week === '周六' || params.week === '周日') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      params.week = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <Radio name={true} style={{ marginRight: '10px' }}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    是 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  </Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <Radio name={false}>否</Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </RadioGroup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              title: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div class={styles.tips}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <img class={styles.icon} src={iconTips} /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <span>温馨提醒</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              ), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              label: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div class={styles.tipsContent}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  1、云酷琴房时长按课程人数扣减(含老师),以45分钟1对1课程师生2人为例,课程结束后将消耗时长:2人*45分钟=90分钟; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  2、每节线上课平台赠送10分钟免费时长,分别为课前5分钟及课后5分钟,赠送时长不计算费用; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  3、课程消耗时长按排课人数计算,无论实际到课人数是否为排课人数,都会按照排课人数扣费; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  4、课程结束后费用立即结算; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  5、琴房时长不足时,您将无法排课,请确保琴房剩余时长充足。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Cell style={{ padding: 0 }}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                style={{ margin: 0 }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                border={false} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                label="上课学员" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                placeholder="请选择上课学员" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                onClick={() => (selectStudentShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              {students.value.length ? ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class={styles.tags}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  {students.value.map((n: IStudent, index: number) => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <Tag closeable onClose={() => onDeleteStudent(index)}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      {n.userName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </Tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  ))} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ) : null} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </Cell> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="课时数" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请输入课时数" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                input: () => <Stepper v-model={params.classNum}></Stepper> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              class={styles.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              type="number" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="单课时时长" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请输入课程时长" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              modelValue={params.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onUpdate:modelValue={t => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Math.abs(t) > 60) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  Toast('时长不能大于60分钟') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Math.abs(t) === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  Toast('时长不能小于1分钟') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                params.singleClssTime = Math.abs(t) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              // v-model={params.singleClssTime} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'right-icon': () => <div>分钟</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="开始日期" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请选择开始日期" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              modelValue={params.date} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onClick={() => (dateShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              title="循环周次" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                label: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <RadioGroup class={styles.week} v-model={params.week}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    {Object.keys(week).map((n: string) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      return ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <Radio 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          disabled={ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            params.isSkipHolidays && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            (n === '周六' || n === '周日') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          name={n} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          {n} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    })} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </RadioGroup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              label="上课时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              placeholder="请选择上课时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              {...fieldProps} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              modelValue={timeScope.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onClick={() => (timeShow.value = true)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              title="是否跳过节假日" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                value: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <RadioGroup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    class={styles.holdays} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    v-model={params.isSkipHolidays} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    onChange={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      if ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        params.isSkipHolidays && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        (params.week === '周六' || params.week === '周日') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        params.week = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <Radio name={true} style={{ marginRight: '10px' }}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      是 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <Radio name={false}>否</Radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </RadioGroup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Cell 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-slots={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                title: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <div class={styles.tips}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <img class={styles.icon} src={iconTips} /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span>温馨提醒</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                label: () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <div class={styles.tipsContent}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    1、云酷琴房时长按课程人数扣减(含老师),以45分钟1对1课程师生2人为例,课程结束后将消耗时长:2人*45分钟=90分钟; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    2、每节线上课平台赠送10分钟免费时长,分别为课前5分钟及课后5分钟,赠送时长不计算费用; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    3、课程消耗时长按排课人数计算,无论实际到课人数是否为排课人数,都会按照排课人数扣费; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    4、课程结束后费用立即结算; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <br /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    5、琴房时长不足时,您将无法排课,请确保琴房剩余时长充足。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <Button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            block 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            type="primary" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <Button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              block 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              type="primary" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              round 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              style={{ margin: '0 auto', width: '90%', marginTop: '20px' }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onClick={() => setParmas()} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              下一步 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </Button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Popup position="bottom" v-model:show={dateShow.value}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <DatetimePicker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              type="date" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              minDate={dayjs().year(2022).toDate()} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              formatter={formatterDate} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onConfirm={(time: Date) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                params.date = dayjs(time).format('YYYY-MM-DD') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                dateShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                getHolidays(dayjs(time).format('YYYY')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onCancel={() => (dateShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Popup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-model:show={voiceShow.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            position="bottom" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             round 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            style={{ margin: '0 auto', width: '90%', marginTop: '20px' }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onClick={() => setParmas()} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            closeable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            safe-area-inset-bottom 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            下一步 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </Button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <OrganSearch 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              subjectList={subjectList.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-model={params.subjectId} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-model:subjectName={params.subjectName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onSort={() => (voiceShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <Popup position="bottom" v-model:show={dateShow.value}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <DatetimePicker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            type="date" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            minDate={dayjs().year(2022).toDate()} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            formatter={formatterDate} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onConfirm={(time: Date) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              params.date = dayjs(time).format('YYYY-MM-DD') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              dateShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              getHolidays(dayjs(time).format('YYYY')) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onCancel={() => (dateShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Popup position="bottom" v-model:show={timeShow.value} round> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class={styles.picker}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <DatetimePicker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                v-model={startTime.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                type="time" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                minHour={minStartHour} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                minMinute={minStartMimute} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                onConfirm={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  timeShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                onCancel={() => (timeShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <Popup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          v-model:show={voiceShow.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          position="bottom" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          round 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          closeable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          safe-area-inset-bottom 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <OrganSearch 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subjectList={subjectList.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-model={params.subjectId} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-model:subjectName={params.subjectName} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onSort={() => (voiceShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          {/* 选择学员 */} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <ColPopup v-model={selectStudentShow.value}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <SelectStudents 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ref={studentRef} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              subjectList={subjectList.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onSetStudents={onSetStudents} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </ColPopup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <Popup position="bottom" v-model:show={timeShow.value} round> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <div class={styles.picker}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <DatetimePicker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              v-model={startTime.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              type="time" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              maxHour="22" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              onConfirm={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                timeShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                console.log(startTime.value) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          {/* 确认排课 */} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Popup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            position="bottom" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class={styles.coursePopup} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-model:show={confirmShow.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            closeable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            round 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <CourseSchedule 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              item={params} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              students={students.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              curriculum={curriculum.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onClose={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                confirmShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onComfirm={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                onCourseSchedule() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              onCancel={() => (timeShow.value = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        {/* 选择学员 */} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <ColPopup v-model={selectStudentShow.value}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <SelectStudents 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ref={studentRef} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subjectList={subjectList.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onSetStudents={onSetStudents} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </ColPopup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        {/* 确认排课 */} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <Popup 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          position="bottom" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          class={styles.coursePopup} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          v-model:show={confirmShow.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          closeable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          round 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <CourseSchedule 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            item={params} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            students={students.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            curriculum={curriculum.value} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onClose={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              confirmShow.value = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            onComfirm={() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              onCourseSchedule() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }) 
			 |