瀏覽代碼

05/28 16:19

我也不知道是什么
mo 5 年之前
父節點
當前提交
8e1eef16d7

+ 13 - 0
src/api/recodeManager.js

@@ -0,0 +1,13 @@
+// 系统专项设置api文件
+import request from '@/utils/request'
+import qs from 'qs'
+let api = '/api-web'
+
+// 获取老师考勤信息
+export function queryTeacherAttendances (data) {
+  return request({
+    url: api + '/teacherAttendance/queryTeacherAttendances',
+    method: 'post',
+    data: qs.stringify(data)
+  })
+}

+ 134 - 10
src/views/recodeManager/recodeList.vue

@@ -6,6 +6,7 @@
     </h2>
     <div class="m-core">
       <el-form :inline="true"
+               ref='searchForm'
                :model="searchForm">
         <el-form-item>
           <el-input v-model.trim="searchForm.search"
@@ -14,7 +15,7 @@
         </el-form-item>
         <el-form-item prop="organId">
           <el-select class="multiple"
-                     v-model.trim="searchForm.organIdList"
+                     v-model.trim="searchForm.organId"
                      filterable
                      clearable
                      placeholder="请选择分部">
@@ -24,9 +25,9 @@
                        :value="item.id"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="课程类型">
+        <el-form-item>
           <el-select v-model.trim="searchForm.courseScheduleType"
-                     @change="chioseList">
+                     placeholder="请选择课程类型">
             <el-option v-for='(item,index) in courseType'
                        :key="index"
                        :value="item.value"
@@ -34,6 +35,28 @@
           </el-select>
         </el-form-item>
         <el-form-item>
+          <el-select v-model.trim="searchForm.signInStatus"
+                     placeholder="签到状态">
+            <el-option :value="0"
+                       label="正常签到"></el-option>
+            <el-option :value="1"
+                       label="异常签到"></el-option>
+            <el-option :value="3"
+                       label="未签到"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-select v-model.trim="searchForm.signOutStatus"
+                     placeholder="签退状态">
+            <el-option :value="0"
+                       label="正常签退"></el-option>
+            <el-option :value="1"
+                       label="异常签退"></el-option>
+            <el-option :value="3"
+                       label="未签退"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
           <el-date-picker v-model.trim="courseTime"
                           style="width:410px;"
                           type="daterange"
@@ -43,14 +66,87 @@
                           end-placeholder="结束日期">
           </el-date-picker>
         </el-form-item>
+        <el-form-item>
+          <el-button @click="search"
+                     type="danger">搜索</el-button>
+          <el-button @click="onReSet"
+                     type="primary">重置</el-button>
+        </el-form-item>
       </el-form>
       <div class="tableWrap">
         <el-table style="width: 100%"
                   :header-cell-style="{background:'#EDEEF0',color:'#444'}"
                   :data="tableList">
           <el-table-column align="center"
-                           prop="studentId"
+                           prop="organName"
                            label="分部"></el-table-column>
+          <el-table-column align="center"
+                           prop="teacherName"
+                           label="老师名称"></el-table-column>
+          <el-table-column align="center"
+                           prop="courseScheduleId"
+                           label="课程编号"></el-table-column>
+          <el-table-column align="center"
+                           prop="courseScheduleName"
+                           label="课程名称"></el-table-column>
+          <el-table-column align="center"
+                           prop="classDate"
+                           label="上课日期"></el-table-column>
+          <el-table-column align="center"
+                           prop="startClassTime"
+                           label="上课时间">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.startClassTime+'-'+scope.row.endClassTime}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           prop="startClassTime"
+                           label="课程类型">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.courseScheduleType | coursesType}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           label="签到时间">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.signInTime }}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           label="签到状态">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.signInStatus | attendanceOutType}}
+              </div>
+            </template>
+          </el-table-column>
+
+          <el-table-column align="center"
+                           prop="startClassTime"
+                           label="签退时间">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.signOutTime}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           label="签到状态">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.signOutStatus | attendanceOutType}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           prop="remark"
+                           label="备注"></el-table-column>
         </el-table>
         <pagination :total="rules.total"
                     :page.sync="rules.page"
@@ -68,8 +164,8 @@ import { getToken } from "@/utils/auth";
 import pagination from "@/components/Pagination/index";
 import load from "@/utils/loading";
 import { getTeacher, getEmployeeOrgan } from "@/api/buildTeam";
-import { getTeacherPersonalAttendances } from "@/api/teacherManager";
-import { coursesType } from '@/utils/searchArray'
+import { queryTeacherAttendances } from "@/api/recodeManager";
+import { courseType } from '@/utils/searchArray'
 
 export default {
   components: { pagination },
@@ -77,10 +173,12 @@ export default {
     return {
       searchForm: {
         search: null,
-        organIdList: null,
-        courseTime: [],
+        organId: null,
+        signInStatus: null,
+        signOutStatus: null
       },
-      coursesType,
+      courseTime: [],
+      courseType,
       // teacherList: [],
       tableList: [],
       organList: [],
@@ -117,13 +215,39 @@ export default {
   },
   methods: {
     init () {
+      this.getList()
     },
     getList () {
-      getTeacherPersonalAttendances().then(res => {
+      let obj = { page: this.rules.page, rows: this.rules.limit }
+      Object.assign(obj, this.searchForm)
+      if (this.courseTime.length > 0) {
+        obj.courseStartDate = this.courseTime[0]
+        obj.courseEndDate = this.courseTime[1]
+      } else {
+        obj.courseStartDate = null
+        obj.courseEndDate = null
+      }
+      queryTeacherAttendances(obj).then(res => {
         if (res.code == 200) {
           this.tableList = res.data.rows;
+          this.rules.total = res.data.total;
         }
       })
+    },
+    search () {
+      this.rules.page = 1;
+      this.getList()
+    },
+    onReSet () {
+      this.searchForm = {
+        search: null,
+        organIdList: null,
+        signInStatus: null,
+        signOutStatus: null
+      }
+      this.courseTime = [];
+      this.$refs['searchForm'].resetFields();
+      this.search()
     }
   }
 };

+ 2 - 2
src/views/resetTeaming/components/resetPayList.vue

@@ -327,9 +327,9 @@ export default {
       return {
         disabledDate (time) {
           if (self.payForm.startPaymentDate) {
-            return new Date(self.payForm.startPaymentDate).getTime() > time.getTime()
+            return new Date(self.payForm.startPaymentDate).getTime() - 86400000 >= time.getTime()
           } else {
-            return time.getTime() >= Date.now()
+            return time.getTime() + 86400000 < Date.now()
             //开始时间不选时,结束时间最大值小于等于当天
           }
         }

+ 28 - 26
src/views/teamBuild/teamSeting/components/setClassV2.vue

@@ -91,12 +91,13 @@
                 <el-button type="text"
                            slot="reference">删除班级</el-button>
               </el-popover>
-              <!-- v-if="scope.row.type
+
+              <el-button type="text"
+                         v-if="scope.row.type
                          !='HIGH'
                          &&scope.row.type
                          !='HIGH_ONLINE'
-              "-->
-              <el-button type="text"
+              "
                          v-permission="'classGroupStudent/findAllStudent'"
                          @click="resetClass(scope.row)">学员调整</el-button>
             </div>
@@ -160,6 +161,19 @@
                        :value="item.id"></el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="可报名声部"
+                      prop="subjectIdList"
+                      :rules="[{ required: true, message: '请选择可报名声部',trigger: 'blur'}]"
+                      v-if=" newClassForm.type == 'HIGH_ONLINE'">
+          <el-select v-model.trim="newClassForm.memo"
+                     multiple
+                     clearable>
+            <el-option v-for="(item,index) in soundList"
+                       :key="index"
+                       :label="item.name"
+                       :value="item.id"></el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="预计招生数"
                       prop="expectStudentNum"
                       :rules="[{ required: true, message: '请输入预计招生数',trigger: 'blur'},{pattern:/[3-5]/,message:'班级人数必须为3-5人',trigger: 'blur'}]"
@@ -356,26 +370,6 @@
                :rules="teacherRules"
                label-position="right"
                label-width="100px;">
-        <!-- <el-form-item label="合奏班"
-                      v-if='!isTemporary&&activeType=="NORMAL"'
-                      prop="mixClassGroupId">
-          <el-select v-model.trim="teacherForm.mixClassGroupId">
-            <el-option v-for="(item,index) in maxClassList"
-                       :label="item.name"
-                       :key="index"
-                       :value="item.id"></el-option>
-          </el-select>
-        </el-form-item>-->
-        <!-- <el-form-item label="调整方式"
-                      v-if="!isNewClass"
-        prop="isAdd">-->
-        <!-- <el-radio v-model.trim="teacherForm.isAdd"
-                    label="new">班级加课</el-radio>
-          <el-radio v-model.trim="teacherForm.isAdd"
-        label="renew">重新排课</el-radio>-->
-        <!-- <el-radio v-model.trim="teacherForm.isAdd"
-        label="onlyUpdateTeacher">修改老师</el-radio>-->
-        <!-- </el-form-item> -->
         <br />
         <el-form-item label="主教老师"
                       prop="coreTeacher">
@@ -483,7 +477,7 @@
       </div>
       <div slot="footer"
            class="dialog-footer">
-        <!-- 1为临时班级 -->
+        <!-- 1创建班级 -->
         <el-button type="primary"
                    v-if="isNewClass"
                    @click="submitTemporary(1)">确 定</el-button>
@@ -678,7 +672,8 @@ export default {
         subjectIdList: null,
         expectStudentNum: null,
         bishop: null,
-        teaching: []
+        teaching: [],
+        memo: []
       },
       chioseStudent: [], // 选中的学生
       activeListStudent: [], // 待选的学生
@@ -822,6 +817,12 @@ export default {
           obj.name = this.newClassForm.className;
           obj.type = this.newClassForm.type;
           obj.groupType = "MUSIC";
+          if (this.newClassForm.memo.length > 0) {
+            obj.memo = this.newClassForm.memo.join(',')
+          } else {
+            obj.memo = null
+          }
+
           let subjectIdList;
           if (this.newClassForm.type == "HIGH_ONLINE") {
             subjectIdList = this.newClassForm.subjectIdList;
@@ -1497,7 +1498,8 @@ export default {
           subjectIdList: null,
           expectStudentNum: null,
           bishop: null,
-          teaching: null
+          teaching: null,
+          memo: []
         };
       }
     },

+ 202 - 134
src/views/teamDetail/components/resetClass.vue

@@ -24,7 +24,13 @@
            style>
         <el-table :data="activeSingleList"
                   style
-                  :header-cell-style="{background:'#EDEEF0',color:'#444'}">
+                  :header-cell-style="{background:'#EDEEF0',color:'#444'}"
+                  tooltip-effect="dark"
+                  @selection-change="handleSelectionChange">
+          <el-table-column type="selection"
+                           v-bind:selectable="chkstu"
+                           width="55">
+          </el-table-column>
           <el-table-column align="center"
                            prop="name"
                            label="班级名称"></el-table-column>
@@ -134,9 +140,9 @@
           <div class="add"
                @click="addNewClass('MIX')">新建合奏班</div>
           <div class="add"
-               @click="addNewClass('HIGH')">基础技能班</div>
-          <div class="add"
-               @click="addNewClass('HIGH_ONLINE')">线上基础技能班</div>
+               @click="newClassVisible = true">基础技能班</div>
+          <!-- <div class="add"
+               @click="addNewClass('HIGH_ONLINE')">线上基础技能班</div> -->
         </div>
       </div>
     </div>
@@ -282,16 +288,6 @@
                :rules="teacherRules"
                label-position="right"
                label-width="100px;">
-        <!-- <el-form-item label="合奏班"
-                      v-if='!isTemporary&&activeType=="NORMAL"'
-                      prop="mixClassGroupId">
-          <el-select v-model.trim="teacherForm.mixClassGroupId">
-            <el-option v-for="(item,index) in maxClassList"
-                       :label="item.name"
-                       :key="index"
-                       :value="item.id"></el-option>
-          </el-select>
-        </el-form-item>-->
         <el-form-item label="调整方式"
                       v-if="!isNewClass"
                       prop="isAdd">
@@ -514,141 +510,124 @@
                    @click="setInfoMsg">确 定</el-button>
       </div>
     </el-dialog>
-    <!-- 班级调整 -->
-    <!-- <el-dialog title="班级调整"
-               width="500px"
-               :visible.sync="resetClassVisible"
-               :modal-append-to-body="false">
-      <el-form :model="resetClassForm"
-               class="resetClassForm">
-        <el-form-item label="主教老师">
-          <el-select v-model.trim="resetClassForm.coreTeacher">
-            <el-option v-for="(item,index) in teacherList"
+    <el-dialog :visible.sync="newClassVisible"
+               width="700px"
+               title="新增班级">
+      <el-form :model="newClassForm"
+               :inline="true"
+               label-width="100px"
+               ref="newClassForm"
+               class="newClassForm">
+        <el-form-item label="班级名称"
+                      :rules="[{ required: true, message: '请输入班级姓名',trigger: 'blur'}]"
+                      prop="className">
+          <el-input style="width:180px;"
+                    v-model="newClassForm.className"></el-input>
+        </el-form-item>
+        <el-form-item label="班级类型"
+                      :rules="[{ required: true, message: '请输入班级人数',trigger: 'blur'}]"
+                      prop="type">
+          <el-select v-model.trim="newClassForm.type"
+                     clearable
+                     filterable>
+            <el-option v-for="(item,index) in highTypeList"
                        :key="index"
-                       :label="item.realName"
-                       :value="item.id"></el-option>
+                       :label="item.label"
+                       :value="item.value"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="助教老师">
-          <el-select v-model.trim="resetClassForm.assistant"
-                     filterable
-                     @change="setAssistant"
+        <el-form-item label="声部"
+                      prop="subjectIdList"
+                      :rules="[{ required: true, message: '请选择声部',trigger: 'blur'}]"
+                      v-if="newClassForm.type =='HIGH' || newClassForm.type =='NORMAL'">
+          <el-select v-model.trim="newClassForm.subjectIdList"
+                     clearable
                      multiple>
-            <el-option v-for="(item,index) in cooperationList"
+            <el-option v-for="(item,index) in soundList"
                        :key="index"
-                       :label="item.realName"
+                       :label="item.name"
                        :value="item.id"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="开始时间">
-          <el-time-select placeholder="开始时间"
-                          v-model.trim="resetClassForm.startTime"
-                          :picker-options="{
-                            start: '06:30',
-                            step: '00:05',
-                            end: '23:30'
-                            }">
-          </el-time-select>
-        </el-form-item>
-        <el-form-item label="结束时间">
-          <el-time-select placeholder="结束时间"
-                          v-model.trim="resetClassForm.endTime"
-                          :picker-options="{
-                            start: '06:30',
-                            step: '00:05',
-                            end: '23:30',
-                            minTime:resetClassForm.startTime
-                            }">
-          </el-time-select>
+        <el-form-item label="声部"
+                      prop="subjectIdList"
+                      :rules="[{ required: true, message: '请选择声部',trigger: 'blur'}]"
+                      v-if=" newClassForm.type == 'HIGH_ONLINE'">
+          <el-select v-model.trim="newClassForm.subjectIdList"
+                     clearable>
+            <el-option v-for="(item,index) in soundList"
+                       :key="index"
+                       :label="item.name"
+                       :value="item.id"></el-option>
+          </el-select>
         </el-form-item>
-      </el-form>
-      <div slot="footer"
-           class="dialog-footer">
-        <el-button @click="resetClassVisible = false">取 消</el-button>
-        <el-button type="primary"
-                   @click="">确 定</el-button>
-      </div>
-    </el-dialog>-->
-    <!-- 重新排课 -->
-    <!-- <el-dialog title="重新排课"
-               width="700px"
-               :visible.sync="resetCourseVisible"
-               :modal-append-to-body="false">
-      <el-form :model="recourseForm"
-               label-width="120px"
-               label-position="right">
-        <p style="border-bottom:1px solid #ccc; padding-bottom:10px; font-size:16px; margin-bottom:30px;">上课时间设置</p>
-        <el-form-item label="课程类型">
-          <el-select v-model.trim="recourseForm.courseType">
-            <el-option v-for="(item,index) in courseTypeList"
+        <el-form-item label="可报名声部"
+                      prop="subjectIdList"
+                      :rules="[{ required: true, message: '请选择可报名声部',trigger: 'blur'}]"
+                      v-if=" newClassForm.type == 'HIGH_ONLINE'">
+          <el-select v-model.trim="newClassForm.memo"
+                     multiple
+                     clearable>
+            <el-option v-for="(item,index) in soundList"
                        :key="index"
-                       :value="item.value"
-                       :label="item.label"></el-option>
+                       :label="item.name"
+                       :value="item.id"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="排课起始时间">
-          <el-date-picker v-model.trim="recourseForm.courseTime"
-                          style="width:200px;"
-                          type="date"
-                          value-format="yyyy-MM-dd"
-                          placeholder="选择日期">
-          </el-date-picker>
-          <el-checkbox style='margin-left:10px;'
-                       v-model.trim="recourseForm.checked">是否跳过节假日</el-checkbox>
+        <el-form-item label="预计招生数"
+                      prop="expectStudentNum"
+                      :rules="[{ required: true, message: '请输入预计招生数',trigger: 'blur'},{pattern:/[3-5]/,message:'班级人数必须为3-5人',trigger: 'blur'}]"
+                      v-if=" newClassForm.type == 'HIGH_ONLINE'">
+          <el-input style="width:180px;"
+                    type="number"
+                    @mousewheel.native.prevent
+                    v-model="newClassForm.expectStudentNum"></el-input>
+        </el-form-item>
+        <el-form-item label="预计招生数"
+                      prop="expectStudentNum"
+                      type="number"
+                      :rules="[{ required: true, message: '请输入预计招生数',trigger: 'blur'}]"
+                      @mousewheel.native.prevent
+                      v-else>
+          <el-input style="width:180px;"
+                    v-model="newClassForm.expectStudentNum"></el-input>
+        </el-form-item>
+        <el-form-item label="主教老师"
+                      prop="bishop"
+                      :rules="[{ required: true, message: '请选择主教老师',trigger: 'blur'}]">
+          <el-select placeholder="请选择主教老师"
+                     v-model="newClassForm.bishop"
+                     clearable
+                     filterable>
+            <el-option v-for="(item,index) in teacherList"
+                       :label="item.realName"
+                       :value="item.id"
+                       :key="index"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="助教老师"
+                      v-if=" newClassForm.type != 'HIGH_ONLINE'"
+                      prop="teaching">
+          <el-select placeholder="请选择助教老师"
+                     v-model="newClassForm.teaching"
+                     @change="setAssistant1"
+                     clearable
+                     multiple
+                     filterable>
+            <el-option v-for="(item,index) in teacherList"
+                       :label="item.realName"
+                       :value="item.id"
+                       :key="index"></el-option>
+          </el-select>
         </el-form-item>
       </el-form>
-      <div class="WeekWrap">
-        <p style="border-bottom:1px solid #ccc; padding-bottom:10px; font-size:16px; margin-bottom:30px;">
-          循环次数 <el-button type="text"
-                     style='margin-left:10px;'
-                     @click="addWeek">添加</el-button>
-        </p>
-        <div class="countWrap"
-             style="margin-bottom:10px;">
-          <div class="countItem"
-               style="margin-bottom:20px;"
-               v-for="(item,index) in weekList"
-               :key="index">
-            <span>循环周期: </span>
-            <el-select v-model.trim="item.dayOfWeek">
-              <el-option v-for="(item,index) in weekDateList"
-                         :key='index'
-                         :label="item.label"
-                         :value="item.value"></el-option>
-            </el-select>
-            <span>开始时间</span>
-            <el-time-select placeholder=""
-                            v-model.trim="item.startClassTime"
-                            :picker-options="{
-                               start: '08:30',
-                               step: '00:05',
-                               end: '23:55'
-            }">
-            </el-time-select>
-            <span>结束时间</span>
-            <el-time-select placeholder=""
-                            v-model.trim="item.endClassTime"
-                            :picker-options="{
-                              start: '08:30',
-                              step: '00:05',
-                              end: '23:55',
-                              minTime:item.startClassTime
-            }">
-            </el-time-select>
-            <el-button type="danger"
-                       @click="removeWeek(item)"
-                       icon="el-icon-delete"
-                       circle></el-button>
-          </div>
-        </div>
-      </div>
       <div slot="footer"
            class="dialog-footer">
-        <el-button @click="resetCourseVisible = false">取 消</el-button>
+        <el-button @click="newClassVisible = false">取 消</el-button>
         <el-button type="primary"
-                   @click="">确 定</el-button>
+                   @click="newClassHight">确 定</el-button>
       </div>
-    </el-dialog>-->
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -670,7 +649,8 @@ import {
   classGroupUpdate,
   getTeamBaseInfo,
   clearClassCourse,
-  superFindClassGroups
+  superFindClassGroups,
+  createClass
 } from "@/api/buildTeam";
 import {
   getClassAllStudent,
@@ -764,6 +744,11 @@ export default {
         { value: "HIGH_ONLINE", label: "线上基础技能班" },
         { value: "MUSIC_NETWORK", label: "乐团网管课" }
       ],
+      // 基础技能班类型
+      highTypeList: [
+        { value: "HIGH", label: "基础技能班" },
+        { value: "HIGH_ONLINE", label: "线上基础技能班" },
+      ],
       cooperationList: [],
       singleList: [],
       activeSingleLists: [],
@@ -781,7 +766,17 @@ export default {
         courseTime: "",
         courseNum: ""
       },
-      organId: ""
+      organId: "",
+      newClassVisible: false,
+      newClassForm: {
+        className: null,
+        type: null,
+        subjectIdList: null,
+        expectStudentNum: null,
+        bishop: null,
+        teaching: [],
+        memo: []
+      },
     };
   },
   created () {
@@ -1433,6 +1428,66 @@ export default {
           return;
         }
       });
+    },
+    // 新建基础技能班
+    newClassHight () {
+      this.$refs["newClassForm"].validate(res => {
+        if (res) {
+          let obj = {};
+          obj.musicGroupId = this.teamid;
+          obj.name = this.newClassForm.className;
+          obj.type = this.newClassForm.type;
+          obj.groupType = "MUSIC";
+          if (this.newClassForm.memo.length > 0) {
+            obj.memo = this.newClassForm.memo.join(',')
+          } else {
+            obj.memo = null
+          }
+
+          let subjectIdList;
+          if (this.newClassForm.type == "HIGH_ONLINE") {
+            subjectIdList = this.newClassForm.subjectIdList;
+          } else {
+            subjectIdList =
+              this.newClassForm.subjectIdList.length > 0
+                ? this.newClassForm.subjectIdList.join(",")
+                : null;
+          }
+          obj.subjectIdList = subjectIdList;
+          obj.expectStudentNum = this.newClassForm.expectStudentNum;
+          obj.teacherMapperList = [];
+          obj.teacherMapperList.push({
+            userId: this.newClassForm.bishop,
+            teacherRole: "BISHOP"
+          });
+          for (let i in this.newClassForm.teaching) {
+            obj.teacherMapperList.push({
+              userId: this.newClassForm.teaching[i],
+              teacherRole: "TEACHING"
+            });
+          }
+          createClass(obj).then(res => {
+            if (res.code == 200) {
+              this.$message.success("创建成功");
+              this.getList();
+              this.newClassVisible = false;
+            }
+          });
+        }
+      });
+    },
+    setAssistant1 (val) {
+      for (let i in val) {
+        if (val[i] == this.newClassForm.bishop) {
+          val.splice(i, 1);
+        }
+      }
+    },
+    handleSelectionChange (val) {
+
+    },
+    chkstu (row, index) {
+      return row.type == 'HIGH_ONLINE' || row.type == 'HIGH'
     }
   },
   watch: {
@@ -1453,7 +1508,20 @@ export default {
         this.$refs["teacherForm"].resetFields();
         this.weekList = [];
       }
-    }
+    },
+    newClassVisible (val) {
+      if (!val) {
+        this.newClassForm = {
+          className: null,
+          type: null,
+          subjectIdList: null,
+          expectStudentNum: null,
+          bishop: null,
+          teaching: null,
+          memo: []
+        };
+      }
+    },
   }
 };
 </script>