Browse Source

02/18 12:54

111
261568008@qq.com 5 years ago
parent
commit
dcb3bfc541

+ 29 - 8
src/views/teacherManager/teacherOperation/components/accompanySet.vue

@@ -62,6 +62,7 @@
           <el-time-select
             v-model="startTime"
             @change="changeStartTime"
+            value-format='HH:mm:ss'
             :picker-options="{
     start: '08:30',
     step: '00:05',
@@ -73,6 +74,7 @@
         <el-form-item label="结束时间" >
           <el-time-select
             v-model="endTime"
+            value-format='HH:mm:ss'
             :picker-options="{
     start:startTime,
     step: '00:05',
@@ -216,25 +218,25 @@ export default {
         // 处理数据
         let monday, tuesday, wednesday, thursday, friday, saturday, sunday;
         this.weekList.monday.isHoliday
-          ? (monday = [])
+          ? (monday = '')
           : (monday = this.weekList.monday.timeList);
         this.weekList.tuesday.isHoliday
-          ? (tuesday = [])
+          ? (tuesday =  null)
           : (tuesday = this.weekList.tuesday.timeList);
         this.weekList.wednesday.isHoliday
-          ? (wednesday = [])
+          ? (wednesday = '')
           : (wednesday = this.weekList.wednesday.timeList);
         this.weekList.thursday.isHoliday
-          ? (thursday = [])
+          ? (thursday = '')
           : (thursday = this.weekList.thursday.timeList);
         this.weekList.friday.isHoliday
-          ? (friday = [])
+          ? (friday = '')
           : (friday = this.weekList.friday.timeList);
         this.weekList.saturday.isHoliday
-          ? (saturday = [])
+          ? (saturday = '')
           : (saturday = this.weekList.saturday.timeList);
         this.weekList.sunday.isHoliday
-          ? (sunday = [])
+          ? (sunday = '')
           : (sunday = this.weekList.sunday.timeList);
         resetTeacherFreeTime({
           holiday: this.accompanyForm.week,
@@ -306,6 +308,7 @@ export default {
         this.$message.error('请填写开始时间或结束时间')
         return
       }
+      // 开始时间必须不在所有时段内
       let isStartTime = this.activeItem.timeList.some(item => {
         return this.timeIsrange(
           item.startTime,
@@ -313,6 +316,7 @@ export default {
           this.startTime
         );
       });
+      // 结束时间必须不在所有时段内
       let isEndTime = this.activeItem.timeList.some(item => {
         return this.timeIsrange(
           item.startTime,
@@ -320,7 +324,24 @@ export default {
           this.endTime
         );
       });
-      if (isStartTime || isEndTime) {
+      // 所有时段的开始时间必须不在新增时段内
+      let hasStartTime = this.activeItem.timeList.some(item => {
+        return this.timeIsrange(
+          this.startTime,
+          this.endTime,
+          item.startTime
+        );
+      });
+      // 所有时段的结束时间必须不在新增时段内
+         let hasEndtTime = this.activeItem.timeList.some(item => {
+        return this.timeIsrange(
+          this.startTime,
+          this.endTime,
+          item.endTime
+        );
+      });
+      // 开始时间
+      if (isStartTime || isEndTime || hasStartTime || hasEndtTime) {
         this.$message.error("时间冲突");
         return;
       }