|  | @@ -212,9 +212,8 @@
 | 
	
		
			
				|  |  |                        prop="date">
 | 
	
		
			
				|  |  |            <el-date-picker v-model.trim="maskForm.date"
 | 
	
		
			
				|  |  |                            type="date"
 | 
	
		
			
				|  |  | -                          :picker-options="{
 | 
	
		
			
				|  |  | -                            firstDayOfWeek:1
 | 
	
		
			
				|  |  | -                          }"
 | 
	
		
			
				|  |  | +                          :picker-options="beginDate()"
 | 
	
		
			
				|  |  | +                          @change="changeDate"
 | 
	
		
			
				|  |  |                            value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |                            placeholder="选择日期"></el-date-picker>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
	
		
			
				|  | @@ -237,8 +236,10 @@
 | 
	
		
			
				|  |  |                            format='HH:mm'
 | 
	
		
			
				|  |  |                            value-format='HH:mm'
 | 
	
		
			
				|  |  |                            :picker-options="{
 | 
	
		
			
				|  |  | -                            selectableRange: '04:30:00 - 23:30:00'
 | 
	
		
			
				|  |  | -                            }"></el-time-picker>
 | 
	
		
			
				|  |  | +            selectableRange: `${nowTime} - 23:30:00`,
 | 
	
		
			
				|  |  | +          }"
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                            ></el-time-picker>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item label="结束时间"
 | 
	
		
			
				|  |  |                        v-if="courseVisible"
 | 
	
	
		
			
				|  | @@ -366,7 +367,7 @@
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | -import dayjs from 'dayjs'
 | 
	
		
			
				|  |  | +import dayjs from "dayjs";
 | 
	
		
			
				|  |  |  import pagination from "@/components/Pagination/index";
 | 
	
		
			
				|  |  |  import { bathDelete } from "@/api/vipSeting";
 | 
	
		
			
				|  |  |  import {
 | 
	
	
		
			
				|  | @@ -381,19 +382,20 @@ import {
 | 
	
		
			
				|  |  |    findAttendanceStudentByCourseWithPage,
 | 
	
		
			
				|  |  |    updateStudentAttendances,
 | 
	
		
			
				|  |  |    cleanAttendance,
 | 
	
		
			
				|  |  | -  getOrganCourseDurationSettings
 | 
	
		
			
				|  |  | +  getOrganCourseDurationSettings,
 | 
	
		
			
				|  |  |  } from "@/api/buildTeam";
 | 
	
		
			
				|  |  |  import { permission } from "@/utils/directivePage";
 | 
	
		
			
				|  |  | -import { diffTimerFormMinute, addTimerFormMinute } from '@/utils/date'
 | 
	
		
			
				|  |  | -import { classTimeList,musicCourseType } from "@/utils/searchArray";
 | 
	
		
			
				|  |  | -import { getSchool } from "@/api/systemManage"
 | 
	
		
			
				|  |  | -import cleanDeep from 'clean-deep'
 | 
	
		
			
				|  |  | +import { diffTimerFormMinute, addTimerFormMinute } from "@/utils/date";
 | 
	
		
			
				|  |  | +import { classTimeList, musicCourseType } from "@/utils/searchArray";
 | 
	
		
			
				|  |  | +import { getSchool } from "@/api/systemManage";
 | 
	
		
			
				|  |  | +import cleanDeep from "clean-deep";
 | 
	
		
			
				|  |  | +let that
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    name: "tcourseList",
 | 
	
		
			
				|  |  | -  data () {
 | 
	
		
			
				|  |  | +  data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  |        classTimeList,
 | 
	
		
			
				|  |  | -      courseArray:musicCourseType,
 | 
	
		
			
				|  |  | +      courseArray: musicCourseType,
 | 
	
		
			
				|  |  |        typeVisible: false,
 | 
	
		
			
				|  |  |        timerVisible: false,
 | 
	
		
			
				|  |  |        courseVisible: false,
 | 
	
	
		
			
				|  | @@ -402,7 +404,7 @@ export default {
 | 
	
		
			
				|  |  |          classStatus: "", // 课程状态
 | 
	
		
			
				|  |  |          timer: [], // 时间
 | 
	
		
			
				|  |  |          class: "",
 | 
	
		
			
				|  |  | -        isSettlement: ""
 | 
	
		
			
				|  |  | +        isSettlement: "",
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        tableList: [],
 | 
	
		
			
				|  |  |        searchLsit: [],
 | 
	
	
		
			
				|  | @@ -411,7 +413,7 @@ export default {
 | 
	
		
			
				|  |  |          limit: 10, // 限制显示条数
 | 
	
		
			
				|  |  |          page: 1, // 当前页
 | 
	
		
			
				|  |  |          total: 0, // 总条数
 | 
	
		
			
				|  |  | -        page_size: [10, 20, 40, 50] // 选择限制显示条数
 | 
	
		
			
				|  |  | +        page_size: [10, 20, 40, 50], // 选择限制显示条数
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        maskForm: {
 | 
	
		
			
				|  |  |          teacher: "",
 | 
	
	
		
			
				|  | @@ -421,11 +423,11 @@ export default {
 | 
	
		
			
				|  |  |          startTime: "",
 | 
	
		
			
				|  |  |          endTime: "",
 | 
	
		
			
				|  |  |          type: "",
 | 
	
		
			
				|  |  | -        timer: '',
 | 
	
		
			
				|  |  | +        timer: "",
 | 
	
		
			
				|  |  |          courseScheduleType: null,
 | 
	
		
			
				|  |  | -        address: '',
 | 
	
		
			
				|  |  | -        teachMode: '',
 | 
	
		
			
				|  |  | -        schoolId: ''
 | 
	
		
			
				|  |  | +        address: "",
 | 
	
		
			
				|  |  | +        teachMode: "",
 | 
	
		
			
				|  |  | +        schoolId: "",
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        typeForm: {
 | 
	
		
			
				|  |  |          teacher: "",
 | 
	
	
		
			
				|  | @@ -434,32 +436,32 @@ export default {
 | 
	
		
			
				|  |  |          startTime: "",
 | 
	
		
			
				|  |  |          endTime: "",
 | 
	
		
			
				|  |  |          type: null,
 | 
	
		
			
				|  |  | -        id: null
 | 
	
		
			
				|  |  | +        id: null,
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        maskRules: {
 | 
	
		
			
				|  |  |          schoolId: [
 | 
	
		
			
				|  |  | -          { required: true, message: "请选教学地点", trigger: "blur" }
 | 
	
		
			
				|  |  | +          { required: true, message: "请选教学地点", trigger: "blur" },
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          teacher: [
 | 
	
		
			
				|  |  | -          { required: true, message: "请选择主教老师名称", trigger: "blur" }
 | 
	
		
			
				|  |  | +          { required: true, message: "请选择主教老师名称", trigger: "blur" },
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  | -        date: [{ required: true, message: "请选择上课时间", trigger: "blur" }]
 | 
	
		
			
				|  |  | +        date: [{ required: true, message: "请选择上课时间", trigger: "blur" }],
 | 
	
		
			
				|  |  |          // startTime: [{ required: true, message: '请选择上课开始时间', trigger: 'blur' },],
 | 
	
		
			
				|  |  |          // endTime: [{ required: true, message: '请选择上课结束时间', trigger: 'blur' },],
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        typeRules: {
 | 
	
		
			
				|  |  | -        type: [{ required: true, message: "请选择课程类型", trigger: "blur" }]
 | 
	
		
			
				|  |  | +        type: [{ required: true, message: "请选择课程类型", trigger: "blur" }],
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        teacherList: [],
 | 
	
		
			
				|  |  |        classList: [],
 | 
	
		
			
				|  |  |        activeCourseList: [],
 | 
	
		
			
				|  |  |        timerMask: {
 | 
	
		
			
				|  |  | -        timer: ""
 | 
	
		
			
				|  |  | +        timer: "",
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        markAttendance: {
 | 
	
		
			
				|  |  |          // 考勤状态
 | 
	
		
			
				|  |  |          status: false,
 | 
	
		
			
				|  |  | -        dataInfo: {}
 | 
	
		
			
				|  |  | +        dataInfo: {},
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        rollCall: {
 | 
	
		
			
				|  |  |          // 点名表
 | 
	
	
		
			
				|  | @@ -469,38 +471,41 @@ export default {
 | 
	
		
			
				|  |  |          limit: 10, // 限制显示条数
 | 
	
		
			
				|  |  |          page: 1, // 当前页
 | 
	
		
			
				|  |  |          total: 0, // 总条数
 | 
	
		
			
				|  |  | -        page_size: [10, 20, 40, 50] // 选择限制显示条数
 | 
	
		
			
				|  |  | +        page_size: [10, 20, 40, 50], // 选择限制显示条数
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | -      organId: '',
 | 
	
		
			
				|  |  | +      organId: "",
 | 
	
		
			
				|  |  |        schoolList: [],
 | 
	
		
			
				|  |  | -      courseTimeList:{},
 | 
	
		
			
				|  |  | -      typeTimeList:[]
 | 
	
		
			
				|  |  | +      courseTimeList: {},
 | 
	
		
			
				|  |  | +      typeTimeList: [],
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    components: {
 | 
	
		
			
				|  |  | -    pagination
 | 
	
		
			
				|  |  | +    pagination,
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  created(){
 | 
	
		
			
				|  |  | +    that = this;
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  | -  mounted () {
 | 
	
		
			
				|  |  | +  mounted() {
 | 
	
		
			
				|  |  |      this.init();
 | 
	
		
			
				|  |  | -    getSchool({ organId: this.$route.query.organId }).then(res => {
 | 
	
		
			
				|  |  | +    getSchool({ organId: this.$route.query.organId }).then((res) => {
 | 
	
		
			
				|  |  |        if (res.code == 200) {
 | 
	
		
			
				|  |  |          this.schoolList = res.data;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | -    })
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  | -  activated () {
 | 
	
		
			
				|  |  | +  activated() {
 | 
	
		
			
				|  |  |      this.init();
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | -   async init () {
 | 
	
		
			
				|  |  | +    async init() {
 | 
	
		
			
				|  |  |        this.teamid = this.$route.query.id;
 | 
	
		
			
				|  |  | -      this.organId = this.$route.query.organId
 | 
	
		
			
				|  |  | -      try{
 | 
	
		
			
				|  |  | -        const res = await getOrganCourseDurationSettings({organId:this.organId})
 | 
	
		
			
				|  |  | -        this.courseTimeList = res.data
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -      }catch{}
 | 
	
		
			
				|  |  | +      this.organId = this.$route.query.organId;
 | 
	
		
			
				|  |  | +      try {
 | 
	
		
			
				|  |  | +        const res = await getOrganCourseDurationSettings({
 | 
	
		
			
				|  |  | +          organId: this.organId,
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        this.courseTimeList = res.data;
 | 
	
		
			
				|  |  | +      } catch {}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        // MusicStore.dispatch('getBaseInfo', {
 | 
	
		
			
				|  |  |        //     data: { musicGroupId: this.teamid }
 | 
	
	
		
			
				|  | @@ -521,33 +526,33 @@ export default {
 | 
	
		
			
				|  |  |        // });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        // 获取班级列表
 | 
	
		
			
				|  |  | -      getMusicGroupAllClass({ musicGroupId: this.teamid }).then(res => {
 | 
	
		
			
				|  |  | +      getMusicGroupAllClass({ musicGroupId: this.teamid }).then((res) => {
 | 
	
		
			
				|  |  |          if (res.code == 200) {
 | 
	
		
			
				|  |  |            this.classList = res.data;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    onMarkAttendance (item) {
 | 
	
		
			
				|  |  | +    onMarkAttendance(item) {
 | 
	
		
			
				|  |  |        // 补考勤
 | 
	
		
			
				|  |  |        this.markAttendance = {
 | 
	
		
			
				|  |  |          status: true,
 | 
	
		
			
				|  |  | -        dataInfo: item
 | 
	
		
			
				|  |  | +        dataInfo: item,
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    onCallName (item) {
 | 
	
		
			
				|  |  | +    onCallName(item) {
 | 
	
		
			
				|  |  |        // 点名表
 | 
	
		
			
				|  |  |        this.rollCall.page = 1;
 | 
	
		
			
				|  |  |        this.rollCall.selectItem = item;
 | 
	
		
			
				|  |  |        this.getCallName();
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    getCallName () {
 | 
	
		
			
				|  |  | +    getCallName() {
 | 
	
		
			
				|  |  |        let rollCall = this.rollCall;
 | 
	
		
			
				|  |  |        let params = {
 | 
	
		
			
				|  |  |          page: rollCall.page,
 | 
	
		
			
				|  |  |          rows: rollCall.limit,
 | 
	
		
			
				|  |  | -        courseScheduleId: rollCall.selectItem.courseScheduleId
 | 
	
		
			
				|  |  | +        courseScheduleId: rollCall.selectItem.courseScheduleId,
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  | -      findAttendanceStudentByCourseWithPage(params).then(res => {
 | 
	
		
			
				|  |  | +      findAttendanceStudentByCourseWithPage(params).then((res) => {
 | 
	
		
			
				|  |  |          let result = res.data;
 | 
	
		
			
				|  |  |          rollCall.status = true;
 | 
	
		
			
				|  |  |          if (res.code == 200) {
 | 
	
	
		
			
				|  | @@ -556,18 +561,18 @@ export default {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    onChangeRollCall (type, row) {
 | 
	
		
			
				|  |  | +    onChangeRollCall(type, row) {
 | 
	
		
			
				|  |  |        let rollCall = this.rollCall;
 | 
	
		
			
				|  |  |        let params = {
 | 
	
		
			
				|  |  |          courseScheduleId: rollCall.selectItem.courseScheduleId,
 | 
	
		
			
				|  |  |          studentAttendances: [
 | 
	
		
			
				|  |  |            {
 | 
	
		
			
				|  |  |              userId: row.studentId,
 | 
	
		
			
				|  |  | -            status: type
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -        ]
 | 
	
		
			
				|  |  | +            status: type,
 | 
	
		
			
				|  |  | +          },
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  | -      updateStudentAttendances(params).then(res => {
 | 
	
		
			
				|  |  | +      updateStudentAttendances(params).then((res) => {
 | 
	
		
			
				|  |  |          if (res.code == 200) {
 | 
	
		
			
				|  |  |            this.$message.success("修改成功");
 | 
	
		
			
				|  |  |            row.status = type;
 | 
	
	
		
			
				|  | @@ -577,14 +582,14 @@ export default {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    permission (str, parent) {
 | 
	
		
			
				|  |  | +    permission(str, parent) {
 | 
	
		
			
				|  |  |        return permission(str, parent);
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    search () {
 | 
	
		
			
				|  |  | +    search() {
 | 
	
		
			
				|  |  |        this.rules.page = 1;
 | 
	
		
			
				|  |  |        this.getList();
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    getList () {
 | 
	
		
			
				|  |  | +    getList() {
 | 
	
		
			
				|  |  |        let searchForm = this.searchForm;
 | 
	
		
			
				|  |  |        if (!searchForm.timer) {
 | 
	
		
			
				|  |  |          searchForm.timer = [];
 | 
	
	
		
			
				|  | @@ -598,22 +603,22 @@ export default {
 | 
	
		
			
				|  |  |          page: this.rules.page,
 | 
	
		
			
				|  |  |          rows: this.rules.limit,
 | 
	
		
			
				|  |  |          classGroupId: searchForm.class || null,
 | 
	
		
			
				|  |  | -        isSettlement: searchForm.isSettlement || null
 | 
	
		
			
				|  |  | +        isSettlement: searchForm.isSettlement || null,
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  | -      getCourseSchedule(obj).then(res => {
 | 
	
		
			
				|  |  | +      getCourseSchedule(obj).then((res) => {
 | 
	
		
			
				|  |  |          if (res.code == 200) {
 | 
	
		
			
				|  |  |            this.tableList = res.data.rows;
 | 
	
		
			
				|  |  |            this.rules.total = res.data.total;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    resetClass (row) {
 | 
	
		
			
				|  |  | +    resetClass(row) {
 | 
	
		
			
				|  |  |        this.maskForm.teacher = parseInt(row.masterTeacherId);
 | 
	
		
			
				|  |  |        this.maskForm.courseScheduleType = row.courseScheduleType;
 | 
	
		
			
				|  |  | -            // this.courseTimeList
 | 
	
		
			
				|  |  | -      for(let key in this.courseTimeList){
 | 
	
		
			
				|  |  | -        if(key == row.courseScheduleType){
 | 
	
		
			
				|  |  | -          this.typeTimeList = this.courseTimeList[key].split(',')
 | 
	
		
			
				|  |  | +      // this.courseTimeList
 | 
	
		
			
				|  |  | +      for (let key in this.courseTimeList) {
 | 
	
		
			
				|  |  | +        if (key == row.courseScheduleType) {
 | 
	
		
			
				|  |  | +          this.typeTimeList = this.courseTimeList[key].split(",");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |        // this.maskForm.type = row.courseScheduleType;
 | 
	
	
		
			
				|  | @@ -629,12 +634,20 @@ export default {
 | 
	
		
			
				|  |  |          "startTime",
 | 
	
		
			
				|  |  |          row.startClassTimeStr.substring(0, 5)
 | 
	
		
			
				|  |  |        );
 | 
	
		
			
				|  |  | -      let time = diffTimerFormMinute(row.classDate, row.startClassTimeStr, row.endClassTimeStr)
 | 
	
		
			
				|  |  | +      let time = diffTimerFormMinute(
 | 
	
		
			
				|  |  | +        row.classDate,
 | 
	
		
			
				|  |  | +        row.startClassTimeStr,
 | 
	
		
			
				|  |  | +        row.endClassTimeStr
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  |        this.maskForm.timer = time;
 | 
	
		
			
				|  |  | -      this.maskForm.endTime = addTimerFormMinute(row.classDate, row.startClassTimeStr, time)
 | 
	
		
			
				|  |  | +      this.maskForm.endTime = addTimerFormMinute(
 | 
	
		
			
				|  |  | +        row.classDate,
 | 
	
		
			
				|  |  | +        row.startClassTimeStr,
 | 
	
		
			
				|  |  | +        time
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  |        // this.maskForm.endTime = row.endClassTimeStr.substring(0, 5);
 | 
	
		
			
				|  |  |        this.maskForm.id = row.courseScheduleId;
 | 
	
		
			
				|  |  | -      this.maskForm.schoolId = row.schoolId
 | 
	
		
			
				|  |  | +      this.maskForm.schoolId = row.schoolId;
 | 
	
		
			
				|  |  |        this.courseVisible = true;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        // 修改课时
 | 
	
	
		
			
				|  | @@ -645,50 +658,50 @@ export default {
 | 
	
		
			
				|  |  |        //   classGroupId: row.id
 | 
	
		
			
				|  |  |        // }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    removeSingleClass (row) {
 | 
	
		
			
				|  |  | +    removeSingleClass(row) {
 | 
	
		
			
				|  |  |        this.$confirm("是否删除该课程?", "提示", {
 | 
	
		
			
				|  |  |          confirmButtonText: "确定",
 | 
	
		
			
				|  |  |          cancelButtonText: "取消",
 | 
	
		
			
				|  |  | -        type: "warning"
 | 
	
		
			
				|  |  | +        type: "warning",
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |          .then(() => {
 | 
	
		
			
				|  |  |            let courseScheduleIds = row.courseScheduleId;
 | 
	
		
			
				|  |  | -          bathDelete({ courseScheduleIds }).then(res => {
 | 
	
		
			
				|  |  | +          bathDelete({ courseScheduleIds }).then((res) => {
 | 
	
		
			
				|  |  |              if (res.code == 200) {
 | 
	
		
			
				|  |  |                this.$message.success("删除成功");
 | 
	
		
			
				|  |  |                this.getList();
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | -        .catch(() => { });
 | 
	
		
			
				|  |  | +        .catch(() => {});
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    removeCourses () {
 | 
	
		
			
				|  |  | +    removeCourses() {
 | 
	
		
			
				|  |  |        // 批量删除
 | 
	
		
			
				|  |  |        if (this.activeCourseList.length < 1) {
 | 
	
		
			
				|  |  |          this.$message.error("请至少选择一节课");
 | 
	
		
			
				|  |  |          return;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |        let arr = [];
 | 
	
		
			
				|  |  | -      arr = this.activeCourseList.map(item => {
 | 
	
		
			
				|  |  | +      arr = this.activeCourseList.map((item) => {
 | 
	
		
			
				|  |  |          return item.courseScheduleId;
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |        this.$confirm("是否删除该课程?", "提示", {
 | 
	
		
			
				|  |  |          confirmButtonText: "确定",
 | 
	
		
			
				|  |  |          cancelButtonText: "取消",
 | 
	
		
			
				|  |  | -        type: "warning"
 | 
	
		
			
				|  |  | +        type: "warning",
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |          .then(() => {
 | 
	
		
			
				|  |  |            let courseScheduleIds = arr.join(",");
 | 
	
		
			
				|  |  | -          bathDelete({ courseScheduleIds }).then(res => {
 | 
	
		
			
				|  |  | +          bathDelete({ courseScheduleIds }).then((res) => {
 | 
	
		
			
				|  |  |              if (res.code == 200) {
 | 
	
		
			
				|  |  |                this.$message.success("删除成功");
 | 
	
		
			
				|  |  |                this.getList();
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | -        .catch(() => { });
 | 
	
		
			
				|  |  | +        .catch(() => {});
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    submitResetClass () {
 | 
	
		
			
				|  |  | +    submitResetClass() {
 | 
	
		
			
				|  |  |        let maskForm = this.maskForm;
 | 
	
		
			
				|  |  |        if (!maskForm.startTime || !maskForm.endTime) {
 | 
	
		
			
				|  |  |          this.$message.error("请填写开始时间或结束时间");
 | 
	
	
		
			
				|  | @@ -697,7 +710,7 @@ export default {
 | 
	
		
			
				|  |  |        this.$confirm("是否确定?", "提示", {
 | 
	
		
			
				|  |  |          confirmButtonText: "确定",
 | 
	
		
			
				|  |  |          cancelButtonText: "取消",
 | 
	
		
			
				|  |  | -        type: "warning"
 | 
	
		
			
				|  |  | +        type: "warning",
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |          .then(() => {
 | 
	
		
			
				|  |  |            let teachingTeacherIdList = maskForm.assistant.join(",");
 | 
	
	
		
			
				|  | @@ -712,10 +725,10 @@ export default {
 | 
	
		
			
				|  |  |              teachingTeacherIdList,
 | 
	
		
			
				|  |  |              classDate: maskForm.date,
 | 
	
		
			
				|  |  |              type: maskForm.type,
 | 
	
		
			
				|  |  | -            groupType: 'MUSIC',
 | 
	
		
			
				|  |  | -            schoolId: maskForm.schoolId
 | 
	
		
			
				|  |  | +            groupType: "MUSIC",
 | 
	
		
			
				|  |  | +            schoolId: maskForm.schoolId,
 | 
	
		
			
				|  |  |            };
 | 
	
		
			
				|  |  | -          resetCourse(cleanDeep(obj)).then(res => {
 | 
	
		
			
				|  |  | +          resetCourse(cleanDeep(obj)).then((res) => {
 | 
	
		
			
				|  |  |              if (res.code == 200) {
 | 
	
		
			
				|  |  |                this.$message.success("修改成功");
 | 
	
		
			
				|  |  |                this.getList();
 | 
	
	
		
			
				|  | @@ -723,9 +736,9 @@ export default {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | -        .catch(() => { });
 | 
	
		
			
				|  |  | +        .catch(() => {});
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleClose () {
 | 
	
		
			
				|  |  | +    handleClose() {
 | 
	
		
			
				|  |  |        this.courseVisible = false;
 | 
	
		
			
				|  |  |        (this.maskForm = {
 | 
	
		
			
				|  |  |          teacher: "",
 | 
	
	
		
			
				|  | @@ -734,26 +747,26 @@ export default {
 | 
	
		
			
				|  |  |          id: "",
 | 
	
		
			
				|  |  |          startTime: "",
 | 
	
		
			
				|  |  |          endTime: "",
 | 
	
		
			
				|  |  | -        schoolId: null
 | 
	
		
			
				|  |  | +        schoolId: null,
 | 
	
		
			
				|  |  |        }),
 | 
	
		
			
				|  |  |          this.$refs["maskForm"].resetFields();
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleSelectionChange (val) {
 | 
	
		
			
				|  |  | +    handleSelectionChange(val) {
 | 
	
		
			
				|  |  |        this.activeCourseList = val;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    checkSelectable (val) {
 | 
	
		
			
				|  |  | +    checkSelectable(val) {
 | 
	
		
			
				|  |  |        return val.courseScheduleStatus == "NOT_START";
 | 
	
		
			
				|  |  |        // return true;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    batchAdjustmentTime () {
 | 
	
		
			
				|  |  | +    batchAdjustmentTime() {
 | 
	
		
			
				|  |  |        let tempData = this.markAttendance.dataInfo;
 | 
	
		
			
				|  |  |        let params = {
 | 
	
		
			
				|  |  |          teacherId: tempData.masterTeacherId,
 | 
	
		
			
				|  |  |          courseScheduleId: tempData.courseScheduleId,
 | 
	
		
			
				|  |  |          signInStatus: 1,
 | 
	
		
			
				|  |  | -        signOutStatus: 1
 | 
	
		
			
				|  |  | +        signOutStatus: 1,
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  | -      updateTeacherAttendance(params).then(res => {
 | 
	
		
			
				|  |  | +      updateTeacherAttendance(params).then((res) => {
 | 
	
		
			
				|  |  |          if (res.code == 200) {
 | 
	
		
			
				|  |  |            this.$message.success("补卡成功");
 | 
	
		
			
				|  |  |            this.markAttendance.status = false;
 | 
	
	
		
			
				|  | @@ -763,18 +776,18 @@ export default {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleCloseTimer () {
 | 
	
		
			
				|  |  | +    handleCloseTimer() {
 | 
	
		
			
				|  |  |        this.timerVisible = false;
 | 
	
		
			
				|  |  |        this.timerMask.timer = "";
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    resetTimer () {
 | 
	
		
			
				|  |  | +    resetTimer() {
 | 
	
		
			
				|  |  |        if (this.activeCourseList.length < 1) {
 | 
	
		
			
				|  |  |          this.$message.error("请至少选择一节课");
 | 
	
		
			
				|  |  |          return;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |        this.timerVisible = true;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    resetType (row) {
 | 
	
		
			
				|  |  | +    resetType(row) {
 | 
	
		
			
				|  |  |        this.typeForm.type = row.courseScheduleType;
 | 
	
		
			
				|  |  |        this.typeForm.id = row.courseScheduleId;
 | 
	
		
			
				|  |  |        this.typeForm.teacher = parseInt(row.masterTeacherId);
 | 
	
	
		
			
				|  | @@ -796,8 +809,8 @@ export default {
 | 
	
		
			
				|  |  |        //  console.log(row.type)
 | 
	
		
			
				|  |  |        this.typeVisible = true;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    submitResetType () {
 | 
	
		
			
				|  |  | -      this.$refs.typeForm.validate(res => {
 | 
	
		
			
				|  |  | +    submitResetType() {
 | 
	
		
			
				|  |  | +      this.$refs.typeForm.validate((res) => {
 | 
	
		
			
				|  |  |          if (res) {
 | 
	
		
			
				|  |  |            let teachingTeacherIdList = this.typeForm.assistant.join(",");
 | 
	
		
			
				|  |  |            if (teachingTeacherIdList.length <= 0) {
 | 
	
	
		
			
				|  | @@ -811,9 +824,8 @@ export default {
 | 
	
		
			
				|  |  |              type: this.typeForm.type,
 | 
	
		
			
				|  |  |              teachingTeacherIdList,
 | 
	
		
			
				|  |  |              classDate: this.typeForm.date,
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |            };
 | 
	
		
			
				|  |  | -          resetCourse(obj).then(res => {
 | 
	
		
			
				|  |  | +          resetCourse(obj).then((res) => {
 | 
	
		
			
				|  |  |              if (res.code == 200) {
 | 
	
		
			
				|  |  |                this.$message.success("修改成功");
 | 
	
		
			
				|  |  |                this.getList();
 | 
	
	
		
			
				|  | @@ -824,15 +836,15 @@ export default {
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      // 清除考勤
 | 
	
		
			
				|  |  | -    clearAttend (row) {
 | 
	
		
			
				|  |  | +    clearAttend(row) {
 | 
	
		
			
				|  |  |        this.$confirm("是否清除考勤记录?", "提示", {
 | 
	
		
			
				|  |  |          confirmButtonText: "确定",
 | 
	
		
			
				|  |  |          cancelButtonText: "取消",
 | 
	
		
			
				|  |  | -        type: "warning"
 | 
	
		
			
				|  |  | +        type: "warning",
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |          .then(() => {
 | 
	
		
			
				|  |  |            cleanAttendance({ courseScheduleIds: row.courseScheduleId }).then(
 | 
	
		
			
				|  |  | -            res => {
 | 
	
		
			
				|  |  | +            (res) => {
 | 
	
		
			
				|  |  |                if (res.code == 200) {
 | 
	
		
			
				|  |  |                  this.$message.success("清除成功");
 | 
	
		
			
				|  |  |                  this.getList();
 | 
	
	
		
			
				|  | @@ -842,39 +854,74 @@ export default {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |            );
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  | -        .catch(() => { });
 | 
	
		
			
				|  |  | +        .catch(() => {});
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    changeStartTime (val) {
 | 
	
		
			
				|  |  | -      this.$nextTick(res => {
 | 
	
		
			
				|  |  | -        this.maskForm.endTime = addTimerFormMinute(this.maskForm.date, val, this.maskForm.timer);
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | +    changeStartTime(val) {
 | 
	
		
			
				|  |  | +      this.$nextTick((res) => {
 | 
	
		
			
				|  |  | +        this.maskForm.endTime = addTimerFormMinute(
 | 
	
		
			
				|  |  | +          this.maskForm.date,
 | 
	
		
			
				|  |  | +          val,
 | 
	
		
			
				|  |  | +          this.maskForm.timer
 | 
	
		
			
				|  |  | +        );
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    changeTime(val){
 | 
	
		
			
				|  |  | -        this.$nextTick(res => {
 | 
	
		
			
				|  |  | -        this.maskForm.endTime = addTimerFormMinute(this.maskForm.date,this.maskForm.startTime ,val );
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | +    changeTime(val) {
 | 
	
		
			
				|  |  | +      this.$nextTick((res) => {
 | 
	
		
			
				|  |  | +        this.maskForm.endTime = addTimerFormMinute(
 | 
	
		
			
				|  |  | +          this.maskForm.date,
 | 
	
		
			
				|  |  | +          this.maskForm.startTime,
 | 
	
		
			
				|  |  | +          val
 | 
	
		
			
				|  |  | +        );
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    onReSet(){
 | 
	
		
			
				|  |  | -      this.$refs.searchForm.resetFields()
 | 
	
		
			
				|  |  | +    onReSet() {
 | 
	
		
			
				|  |  | +      this.$refs.searchForm.resetFields();
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    beginDate() {
 | 
	
		
			
				|  |  | +      return {
 | 
	
		
			
				|  |  | +        firstDayOfWeek: 1,
 | 
	
		
			
				|  |  | +        disabledDate(time) {
 | 
	
		
			
				|  |  | +          return time.getTime() + 86400000 <= new Date().getTime();
 | 
	
		
			
				|  |  | +          //开始时间不选时,结束时间最大值小于等于当天
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      };
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    changeDate(){
 | 
	
		
			
				|  |  | +      this.maskForm.startTime = ''
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    filters: {
 | 
	
		
			
				|  |  | -    studentCallName: value => {
 | 
	
		
			
				|  |  | +    studentCallName: (value) => {
 | 
	
		
			
				|  |  |        let template = {
 | 
	
		
			
				|  |  |          NORMAL: "到课",
 | 
	
		
			
				|  |  |          TRUANT: "未到",
 | 
	
		
			
				|  |  |          LEAVE: "请假",
 | 
	
		
			
				|  |  |          DROP_OUT: "退学",
 | 
	
		
			
				|  |  | -        "": "未到"
 | 
	
		
			
				|  |  | +        "": "未到",
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  |        return template[value];
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -  }, watch: {
 | 
	
		
			
				|  |  | -    'maskForm.timer' (val) {
 | 
	
		
			
				|  |  | -      this.maskForm.endTime = addTimerFormMinute(this.maskForm.date, this.maskForm.startTime, val);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  watch: {
 | 
	
		
			
				|  |  | +    "maskForm.timer"(val) {
 | 
	
		
			
				|  |  | +      this.maskForm.endTime = addTimerFormMinute(
 | 
	
		
			
				|  |  | +        this.maskForm.date,
 | 
	
		
			
				|  |  | +        this.maskForm.startTime,
 | 
	
		
			
				|  |  | +        val
 | 
	
		
			
				|  |  | +      );
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +    computed: {
 | 
	
		
			
				|  |  | +    nowTime() {
 | 
	
		
			
				|  |  | +      // console.log(that.maskForm.date)
 | 
	
		
			
				|  |  | +      let str = "04:30:00";
 | 
	
		
			
				|  |  | +      if (that.maskForm.date == dayjs(new Date()).format("YYYY-MM-DD")) {
 | 
	
		
			
				|  |  | +        str = dayjs(new Date()).format("HH:mm:ss");
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      return str;
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  <style lang="scss" scoped>
 |