Blame view

src/views/basic/setUp/clazz.vue 21 KB
0454f787   梁保满   班级管理,班级列表修改,科目设置
1
2
3
4
5
6
7
8
  <template>
    <div>
      <back-box>
        <template slot="title">
          <span>班级管理</span>
        </template>
        <template slot="btns" v-if="!code">
          <el-tooltip effect="dark" content="导入班级名单" placement="bottom">
6bca489d   LH_PC   云平台二期UI
9
            <el-button type="primary" icon="el-icon-upload2" size="mini" plain circle @click="diaUp = true"></el-button>
0454f787   梁保满   班级管理,班级列表修改,科目设置
10
11
          </el-tooltip>
          <el-tooltip effect="dark" content="导出班级名单" placement="bottom">
6bca489d   LH_PC   云平台二期UI
12
13
            <el-button type="primary" icon="el-icon-download" size="mini" plain circle
              @click="exportTeacherExl"></el-button>
0454f787   梁保满   班级管理,班级列表修改,科目设置
14
          </el-tooltip>
6bca489d   LH_PC   云平台二期UI
15
16
          <el-tooltip effect="dark" content="分班" placement="bottom" v-show="type == 0">
            <img @click="toArchived" src="../../../assets/images/fenban.png" class="fenban" alt="" />
dc56294d   梁保满   班级分班
17
          </el-tooltip>
0454f787   梁保满   班级管理,班级列表修改,科目设置
18
19
20
        </template>
      </back-box>
      <div class="page-content">
8ad80958   梁保满   教师学生管理,设备状态
21
22
23
24
        <div class="grade-box" v-loading="loading">
          <p class="tab-box">
            <el-radio-group v-model="type" @change="_QueryData">
              <el-radio-button :label="0">行政班</el-radio-button>
6bca489d   LH_PC   云平台二期UI
25
              <el-radio-button v-if="hasTeachingClass" :label="1">教学班</el-radio-button>
8ad80958   梁保满   教师学生管理,设备状态
26
27
            </el-radio-group>
          </p>
0454f787   梁保满   班级管理,班级列表修改,科目设置
28
29
30
          <div class="grade-item" v-for="(item, index) in dataList">
            <p class="h-title">
              <span>{{ item.gradeName }}</span>
6bca489d   LH_PC   云平台二期UI
31
32
33
              <span class="s-num" v-if="item.classList">(共{{ item.classList.length }}个班)</span>
              <el-button class="sub-btn" type="info" size="mini" round plain @click="openSubject(item)">科目管理({{
          item.subjectNames.length }})</el-button>
0454f787   梁保满   班级管理,班级列表修改,科目设置
34
35
              <span class="txt" v-if="index == 0">拖动班级进行排序</span>
            </p>
6bca489d   LH_PC   云平台二期UI
36
37
38
            <draggable tag="ul" class="grade-info" v-model="item.classList" @start="start" @end="end(item)" v-bind="{
          animation: 300,
        }">
0454f787   梁保满   班级管理,班级列表修改,科目设置
39
40
              <li class="clazz-li" v-for="clazz in item.classList" :key="item.id">
                <div class="clazz-item">
6bca489d   LH_PC   云平台二期UI
41
                  <i class="el-icon-edit" @click.stop="setClass(clazz, item.gradeName)"></i>
55eb13fd   梁保满   中天提出的交互优化
42
                  <p class="clazz-name ellipsis">
0454f787   梁保满   班级管理,班级列表修改,科目设置
43
                    {{ clazz.className }}
0454f787   梁保满   班级管理,班级列表修改,科目设置
44
45
                  </p>
                  <div class="clazz-class">
5cfb0264   梁保满   班级管理交互优化
46
47
                    <p>学生:{{ clazz.studentCount }}个</p>
                    <p>教师:{{ clazz.teacherCount }}个</p>
0454f787   梁保满   班级管理,班级列表修改,科目设置
48
49
50
51
52
53
54
                  </div>
                </div>
              </li>
            </draggable>
          </div>
        </div>
      </div>
6bca489d   LH_PC   云平台二期UI
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
      <el-dialog :append-to-body="true" :close-on-click-modal="false" title="添加班级" width="70%" :visible.sync="diaUp">
        <div style="width: 90%;margin:0px auto;">
          <el-row class="row-subfix form-item">
            <div class="row-line" style="float: left;color:black;">
              <div>通过导入文件方式添加班级名单</div>
              <div class="row-line" style="margin-top:10px">
                <div style="float:left;">第一步:</div>
                <div style="float:left;">
                  <div style="margin-bottom: 10px;">无需走班,请 <el-link type="primary"
                      @click="_downTemplate(0)">下载行政班模板名单;</el-link>
                  </div>
                  <div style="margin-bottom: 10px;">需要走班,请按需求
                    <el-link type="primary" @click="_downTemplate(0)">下载行政班模板名单;</el-link>或者
                    <el-link type="primary" @click="_downTemplate(1)">教学班名单模板</el-link>
                  </div>
                  <div style="margin-top: 10px;opacity: 0.7;margin-left:20px;">
                    行政班定义:由固定学生、固定教室构成,由专门的班主任进行管理。
                  </div>
                  <div style="margin-top: 5px;opacity: 0.7;margin-left:20px;">
                    教学班定义:由不同行政班的学生临时组成,没有专门的班主任,是在选课制基础上,由于教学的需要而产生的。
                  </div>
                </div>
              </div>
              <div style="float:left;margin-top:10px">第二步:<span>上传完成编辑好的名单文件</span></div>
            </div>
          </el-row>
          <el-row class="row-subfix form-item" style="margin-top: 20px;">
            <upload id="downTeacher" drag :url="url"
              style="border:rgb(219,226,235) dashed 1px;margin:0px auto;width: 80%;padding:40px 0px;border-radius: 5px;"
              @upSuccess="upSuccess" fileName="班级名单">
ef16e57e   LH_PC   fix:前端版本迭代
85
86
87
88
89
90
              <div class="down-txt" slot="down" style="padding: 0px !important;">
                <span style="text-align: center;margin:0px auto;">通过Excel名单导入班级名单模板</span>
              </div>
              <div class="down-txt" slot="descption" style="padding: 0px !important;">
                <span style="text-align: center;margin:0px auto;color:red;">为避免导入班级类型出错,上传文件的名称必须包含“行政班”或“教学班”。</span>
              </div>
6bca489d   LH_PC   云平台二期UI
91
92
93
            </upload>
          </el-row>
        </div>
0454f787   梁保满   班级管理,班级列表修改,科目设置
94
95
96
97
        <div class="dialog-footer" slot="footer">
          <el-button @click="diaUp = false">取 消</el-button>
        </div>
      </el-dialog>
6bca489d   LH_PC   云平台二期UI
98
99
      <el-dialog :append-to-body="true" :close-on-click-modal="false" title="修改班级" :visible.sync="diaClass" width="400">
        <el-form ref="formClass" :model="formClass" :rules="rulesClass" label-width="160px">
0454f787   梁保满   班级管理,班级列表修改,科目设置
100
101
102
          <el-form-item label="所在年级:">
            <span>{{ formClass.gradeName }}</span>
          </el-form-item>
57c03039   梁保满   班级管理添加科目信息
103
104
105
          <el-form-item label="科目:">
            <span>{{ formClass.subjectName }}</span>
          </el-form-item>
0454f787   梁保满   班级管理,班级列表修改,科目设置
106
107
108
109
110
111
112
113
114
115
116
117
          <el-form-item label="班级名称:" prop="studentName">
            <el-col :span="10">
              <el-input maxlength="30" v-model.trim="formClass.className" />
            </el-col>
          </el-form-item>
          <el-form-item label="班级编码:">
            <el-col :span="10">
              <el-input maxlength="30" v-model.trim="formClass.classCode" />
            </el-col>
          </el-form-item>
          <el-form-item label="入学年份:">
            <el-col :span="10">
6bca489d   LH_PC   云平台二期UI
118
              <el-date-picker v-model="formClass.intoSchoolYear" type="year" placeholder="选择年">
0454f787   梁保满   班级管理,班级列表修改,科目设置
119
120
121
122
123
              </el-date-picker>
            </el-col>
          </el-form-item>
        </el-form>
        <div class="dialog-footer" slot="footer">
8ad80958   梁保满   教师学生管理,设备状态
124
          <el-popconfirm title="确定删除该班级吗?" @confirm="_RemoveClass">
6bca489d   LH_PC   云平台二期UI
125
            <el-button class="el-button-del" slot="reference" type="danger">删 除</el-button>
8ad80958   梁保满   教师学生管理,设备状态
126
          </el-popconfirm>
0454f787   梁保满   班级管理,班级列表修改,科目设置
127
128
          <el-button @click="_SaveClass" type="primary">确 定</el-button>
          <el-button @click="diaClass = false">取 消</el-button>
8ad80958   梁保满   教师学生管理,设备状态
129
130
131
132
          <!-- <el-popconfirm v-if="!formClass.teacherCount && !formClass.studentCount" title="确定删除该班级吗?"
            @confirm="_RemoveClass">
            <el-button class="el-button-del" slot="reference" type="danger" plain>删 除</el-button>
          </el-popconfirm> -->
0454f787   梁保满   班级管理,班级列表修改,科目设置
133
134
        </div>
      </el-dialog>
6bca489d   LH_PC   云平台二期UI
135
      <el-dialog :append-to-body="true" :close-on-click-modal="false" :visible.sync="diaSubject" width="400">
0454f787   梁保满   班级管理,班级列表修改,科目设置
136
137
        <p slot="title" class="dia-tit">
          {{ formClass.gradeName }}
5cfb0264   梁保满   班级管理交互优化
138
          <span class="tips">(默认科目和已经有任课老师的科目不能删除)</span>
0454f787   梁保满   班级管理,班级列表修改,科目设置
139
140
141
142
143
        </p>
        <el-form class="form-box" label-width="80px" v-loading="loadingSub">
          <el-form-item label="科目:">
            <div class="subject-box">
              <el-checkbox-group v-model="subjectNames">
6bca489d   LH_PC   云平台二期UI
144
                <p class="p1" v-for="(item, index) in subjectList" :key="item.default">
0454f787   梁保满   班级管理,班级列表修改,科目设置
145
                  <el-checkbox v-if="!item.checked" :label="item.value">{{
6bca489d   LH_PC   云平台二期UI
146
147
148
149
150
          item.value
        }}</el-checkbox>
                  <el-input class="sub-ipt" v-else v-model="item.value" @keyup.enter.native="_EditSub(item)"></el-input>
                  <i class="el-icon el-icon-edit" v-show="!item.checked" @click="item.checked = true"></i>
                  <i class="el-icon el-icon-check" v-show="item.checked" @click="_EditSub(item)"></i>
5cfb0264   梁保满   班级管理交互优化
151
                  <!-- <i
0454f787   梁保满   班级管理,班级列表修改,科目设置
152
153
154
                    class="el-icon el-icon-close"
                    v-show="item.checked"
                    @click="resetSub(item)"
5cfb0264   梁保满   班级管理交互优化
155
                  ></i> -->
6bca489d   LH_PC   云平台二期UI
156
                  <i v-show="!item.checked" class="el-icon el-icon-delete" @click="_DelSubject(item, index)"></i>
0454f787   梁保满   班级管理,班级列表修改,科目设置
157
158
159
160
                </p>
              </el-checkbox-group>
            </div>
            <el-col :span="8">
6bca489d   LH_PC   云平台二期UI
161
162
              <el-input placeholder="添加科目" v-model.trim="subjectName" maxlength="30">
                <i slot="suffix" class="el-input__icon el-icon-plus" @click="addSubjectName"></i>
0454f787   梁保满   班级管理,班级列表修改,科目设置
163
164
165
166
167
168
169
170
171
172
173
174
175
              </el-input>
            </el-col>
          </el-form-item>
        </el-form>
        <div class="dialog-footer" slot="footer">
          <el-button @click="_SaveSubject" type="primary">确 定</el-button>
          <el-button @click="diaSubject = false">取 消</el-button>
        </div>
      </el-dialog>
    </div>
  </template>
  
  <script>
31fe9b9a   梁保满   班级修改删除即可偶调整
176
  import { downloadFile, formatDate } from "@/utils";
0454f787   梁保满   班级管理,班级列表修改,科目设置
177
178
179
180
181
  import draggable from "vuedraggable";
  export default {
    components: {
      draggable,
    },
5cfb0264   梁保满   班级管理交互优化
182
183
184
185
    watch: {
      diaSubject: function (val) {
        if (!val) {
          this.subjectName = "";
c0026d5f   梁保满   科目修改,学生调班
186
187
188
          this.subjectList.map((item) => {
            item.checked = false;
          });
5cfb0264   梁保满   班级管理交互优化
189
190
191
        }
      },
    },
0454f787   梁保满   班级管理,班级列表修改,科目设置
192
193
    data() {
      return {
6bca489d   LH_PC   云平台二期UI
194
        hasTeachingClass: false,
0454f787   梁保满   班级管理,班级列表修改,科目设置
195
196
197
198
199
200
201
202
        code: "",
        loading: false,
        loadingDown: false,
        loadingSub: false,
        diaUp: false,
        diaClass: false,
        diaSubject: false,
        subjectLoading: false,
0454f787   梁保满   班级管理,班级列表修改,科目设置
203
204
205
206
207
208
        formClass: {
          //修改班级信息
          gradeName: "",
          className: "",
          classCode: "",
          intoSchoolYear: "",
31fe9b9a   梁保满   班级修改删除即可偶调整
209
210
          studentCount: "",
          teacherCount: "",
0454f787   梁保满   班级管理,班级列表修改,科目设置
211
212
213
214
215
216
217
218
219
220
221
        },
        rulesClass: {
          className: [
            { required: true, message: "请输入班级名称", trigger: "blur" },
          ],
        },
        subjects: [], //科目列表(只有科目)
        subjectList: [], //科目列表
        subjectNames: [], //已有科目
        subjectName: "", //要添加的科目
        dataList: [],
8ad80958   梁保满   教师学生管理,设备状态
222
223
  
        type: 0, //0-行政班/1-教学班(走班)
0454f787   梁保满   班级管理,班级列表修改,科目设置
224
225
      };
    },
8ad80958   梁保满   教师学生管理,设备状态
226
227
    computed: {
      url: function () {
b0cd2598   梁保满   fix:测试问题
228
        let href = "";
8ad80958   梁保满   教师学生管理,设备状态
229
        if (this.type == 0) {
b0cd2598   梁保满   fix:测试问题
230
          href = "/api_html/school/manager/importClassAndStudent";
8ad80958   梁保满   教师学生管理,设备状态
231
        } else {
b0cd2598   梁保满   fix:测试问题
232
          href = "/api_html/school/manager/importTClassAndStudent";
8ad80958   梁保满   教师学生管理,设备状态
233
        }
b0cd2598   梁保满   fix:测试问题
234
235
        return href;
      },
8ad80958   梁保满   教师学生管理,设备状态
236
    },
0454f787   梁保满   班级管理,班级列表修改,科目设置
237
    async created() {
7812e986   梁保满   班主任查看报表添加额外信息
238
      this.code = this.$store.getters.csCode;
0454f787   梁保满   班级管理,班级列表修改,科目设置
239
240
241
242
      this._QueryData();
      this._QuerySubject();
    },
    methods: {
31fe9b9a   梁保满   班级修改删除即可偶调整
243
      toArchived() {
dc56294d   梁保满   班级分班
244
        this.$router.push({
31fe9b9a   梁保满   班级修改删除即可偶调整
245
246
          path: "/archived",
        });
dc56294d   梁保满   班级分班
247
      },
0454f787   梁保满   班级管理,班级列表修改,科目设置
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
      openSubject(obj) {
        this.formClass.gradeName = obj.gradeName;
        this.subjectNames = [...obj.subjectNames];
        this.diaSubject = true;
      },
      start(e) {
        console.log(e);
      },
      end(obj) {
        let classListIds = obj.classList.map((item) => {
          return item.id;
        });
        this._SaveComponents(classListIds);
      },
      upSuccess(res) {
        //导入成功
        this.$message.closeAll();
5cfb0264   梁保满   班级管理交互优化
265
266
267
268
269
270
271
        let txt = "";
        if (res.data.errorInfo && res.data.errorInfo.length) {
          res.data.errorInfo.map((item) => {
            txt += `<p style="padding-top:5px;">第${item.row}行:${item.error}</p>`;
          });
        }
        let sTxt = `<p>成功(${res.data.success})</p>`;
0454f787   梁保满   班级管理,班级列表修改,科目设置
272
273
        this.$message({
          showClose: true,
5cfb0264   梁保满   班级管理交互优化
274
275
          dangerouslyUseHTMLString: true,
          message: sTxt + txt,
0454f787   梁保满   班级管理,班级列表修改,科目设置
276
          type: "success",
5cfb0264   梁保满   班级管理交互优化
277
          duration: 10000,
0454f787   梁保满   班级管理,班级列表修改,科目设置
278
279
280
        });
        this.diaUp = false;
        this._QueryData();
d01c5799   梁保满   随堂问 报表开发
281
        this._QuerySubject();
0454f787   梁保满   班级管理,班级列表修改,科目设置
282
283
      },
      setClass(obj, gradeName) {
31fe9b9a   梁保满   班级修改删除即可偶调整
284
285
        this.formClass.studentCount = obj.studentCount;
        this.formClass.teacherCount = obj.teacherCount;
0454f787   梁保满   班级管理,班级列表修改,科目设置
286
287
288
289
290
291
292
293
294
        this.formClass.gradeName = gradeName;
        this.formClass.classId = obj.id;
        this.formClass.className = obj.className;
        this.formClass.classCode = obj.classCode || "";
        this.formClass.intoSchoolYear = obj.intoSchoolYear
          ? obj.intoSchoolYear + ""
          : "";
        this.diaClass = true;
      },
6bca489d   LH_PC   云平台二期UI
295
296
297
298
299
300
301
302
303
304
305
306
      async _downTemplate(type) {
        const template = type == 0 ? this.$request.classAndStudentTemplate : this.$request.tClassAndStudentTemplate;
        let data = await template();
        if (data && !data.code) {
          let blob = new Blob([data], {
            type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
          });
          downloadFile(type == 0 ? "行政班名单模板" : "教学班名单模板", blob);
        } else {
          this.$message.error(data.info);
        }
      },
31fe9b9a   梁保满   班级修改删除即可偶调整
307
      async _RemoveClass() {
8ad80958   梁保满   教师学生管理,设备状态
308
309
        const { data, status, info } = await this.$request.deleteClass({
          id: this.formClass.classId,
0454f787   梁保满   班级管理,班级列表修改,科目设置
310
        });
31fe9b9a   梁保满   班级修改删除即可偶调整
311
        if (status === 0) {
b6e2b24d   梁保满   学生班级信息调整
312
          this.$message.success("删除成功");
31fe9b9a   梁保满   班级修改删除即可偶调整
313
314
315
316
317
          this.diaClass = false;
          this._QueryData();
        } else {
          this.$message.error(info);
        }
0454f787   梁保满   班级管理,班级列表修改,科目设置
318
      },
8ad80958   梁保满   教师学生管理,设备状态
319
      //保存班级信息
0454f787   梁保满   班级管理,班级列表修改,科目设置
320
321
322
323
324
325
      _SaveClass() {
        this.$refs.formClass.validate(async (valid) => {
          if (valid) {
            const { data, status, info } = await this.$request.updateClass({
              classId: this.formClass.classId,
              className: this.formClass.className,
31fe9b9a   梁保满   班级修改删除即可偶调整
326
327
              classCode: this.formClass.classCode,
              intoSchoolYear: formatDate(this.formClass.intoSchoolYear, "yyyy"),
0454f787   梁保满   班级管理,班级列表修改,科目设置
328
329
330
331
332
333
334
335
336
337
338
339
340
341
            });
            if (status === 0) {
              this.$message.success("修改成功");
              this.diaClass = false;
              this._QueryData();
            } else {
              this.$message.error(info);
            }
          } else {
            this.$message.warning("输入有误请检查!");
            return false;
          }
        });
      },
8ad80958   梁保满   教师学生管理,设备状态
342
      //添加科目
0454f787   梁保满   班级管理,班级列表修改,科目设置
343
      addSubjectName() {
0454f787   梁保满   班级管理,班级列表修改,科目设置
344
345
346
347
348
349
350
351
352
353
354
355
        if (!this.subjectName) {
          this.$message.warning("请填写科目名称");
          return;
        } else if (this.subjects.includes(this.subjectName)) {
          this.$message.warning("科目已存在,请重新填写~");
          return;
        }
        this.subjectList.push({
          default: this.subjectName,
          value: this.subjectName,
          checked: false,
        });
86e47820   梁保满   科目添加删除操作,教师角色选择。学...
356
        this.subjects.push(this.subjectName);
0454f787   梁保满   班级管理,班级列表修改,科目设置
357
358
359
360
361
362
363
364
        this.subjectNames.push(this.subjectName);
        this.subjectName = "";
      },
      resetSub(item) {
        item.value = item.default;
        item.checked = false;
      },
      async _EditSub(item) {
c0026d5f   梁保满   科目修改,学生调班
365
366
367
368
369
        // if (this.subjects.includes(item.value)) {
        //   this.$message.warning("科目已存在,请重新填写~");
        //   return;
        // }
        let idx = this.subjectNames.findIndex((sub) => item.default == sub);
0454f787   梁保满   班级管理,班级列表修改,科目设置
370
371
372
373
374
375
376
        item.checked = false;
        const { status, info } = await this.$request.updateSubject({
          subjectName: item.value,
          oldSubjectName: item.default,
        });
        if (status === 0) {
          this.$message.success(info);
0454f787   梁保满   班级管理,班级列表修改,科目设置
377
378
379
          this.subjectNames.splice(idx, 1, item.value);
          item.default = item.value;
        } else {
b0cd2598   梁保满   fix:测试问题
380
          item.value = item.default;
0454f787   梁保满   班级管理,班级列表修改,科目设置
381
382
383
          this.$message.error(info);
        }
      },
8ad80958   梁保满   教师学生管理,设备状态
384
      //删除科目
0454f787   梁保满   班级管理,班级列表修改,科目设置
385
386
387
388
389
390
391
392
393
394
      async _DelSubject(obj, index) {
        if (this.subjectLoading) return;
        this.subjectLoading = true;
        const { status, info } = await this.$request.delSubject({
          subjectName: obj.default,
        });
        this.subjectLoading = false;
        if (status === 0) {
          this.$message.success(info);
          this.subjectList.splice(index, 1);
848333df   梁保满   科目添加删除操作
395
          this.subjects.splice(index, 1);
86e47820   梁保满   科目添加删除操作,教师角色选择。学...
396
          this.subjectNames.splice(index, 1);
0454f787   梁保满   班级管理,班级列表修改,科目设置
397
398
399
400
401
          this._QueryData();
        } else {
          this.$message.error(info);
        }
      },
8ad80958   梁保满   教师学生管理,设备状态
402
      //保存修改年级信息
0454f787   梁保满   班级管理,班级列表修改,科目设置
403
      async _SaveSubject() {
0454f787   梁保满   班级管理,班级列表修改,科目设置
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
        if (!this.subjectNames.length) {
          this.$message.error("请选择科目!");
          return;
        }
        this.loadingSub = true;
        const { status, info } = await this.$request.updateGrade({
          gradeName: this.formClass.gradeName,
          subjectNames: this.subjectNames,
        });
        this.loadingSub = false;
        if (status === 0) {
          this.$message.success("修改成功~");
          this.diaSubject = false;
          this._QueryData();
          this._QuerySubject();
        } else {
          this.$message.error(info);
        }
      },
8ad80958   梁保满   教师学生管理,设备状态
423
      //保存排序
0454f787   梁保满   班级管理,班级列表修改,科目设置
424
425
426
427
428
429
430
431
432
433
434
435
436
      async _SaveComponents(classListIds) {
        this.loading = true;
        let { status, info } = await this.$request.classSort({
          classIds: [...classListIds],
        });
        this.loading = false;
        if (status === 0) {
          this.$message.success("调整成功!");
        } else {
          this.$message.error(info);
        }
      },
      async _QueryData() {
6bca489d   LH_PC   云平台二期UI
437
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
438
        this.loading = true;
6bca489d   LH_PC   云平台二期UI
439
440
441
442
443
444
445
446
447
448
449
450
451
452
  
        var loadTeachingClass = await this.$request.classManager({
          type: 1,
        });
        if (loadTeachingClass.status != 0) {
          this.$message.error(loadTeachingClass.info);
          return;
        }
  
        this.hasTeachingClass = loadTeachingClass.data.list?.find(item => {
          return item?.classList?.length >= 1;
        });
        console.log(loadTeachingClass.data.list, this.hasTeachingClass)
  
b0cd2598   梁保满   fix:测试问题
453
        this.dataList = [];
8ad80958   梁保满   教师学生管理,设备状态
454
        let { data, status, info } = await this.$request.classManager({
b0cd2598   梁保满   fix:测试问题
455
          type: this.type,
8ad80958   梁保满   教师学生管理,设备状态
456
        });
0454f787   梁保满   班级管理,班级列表修改,科目设置
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
        this.loading = false;
        if (status === 0) {
          this.dataList = [...data.list] || [];
        } else {
          this.$message.error(info);
        }
      },
      async _QuerySubject() {
        const { data, status, info } = await this.$request.subjectList();
        if (status === 0) {
          this.subjects = [...data?.subjectNames] || [];
          this.subjectList =
            data?.subjectNames.map((item) => {
              return {
                default: item,
                value: item,
                checked: false,
              };
            }) || [];
        } else {
          this.$message.error(info);
        }
      },
8ad80958   梁保满   教师学生管理,设备状态
480
      //班级名单模版下载
0454f787   梁保满   班级管理,班级列表修改,科目设置
481
      async downExcel() {
b0cd2598   梁保满   fix:测试问题
482
483
484
485
        const classAndStudentTemplate =
          this.type == 0
            ? this.$request.classAndStudentTemplate
            : this.$request.tClassAndStudentTemplate;
8ad80958   梁保满   教师学生管理,设备状态
486
        let data = await classAndStudentTemplate();
0454f787   梁保满   班级管理,班级列表修改,科目设置
487
488
489
490
491
492
493
494
495
        if (data && !data.code) {
          let blob = new Blob([data], {
            type: "application/vnd.ms-excel;charset=utf-8",
          });
          downloadFile(`班级名单模版.xlsx`, blob);
        } else {
          this.$message.error(data.info);
        }
      },
8ad80958   梁保满   教师学生管理,设备状态
496
      //班级名单下载
0454f787   梁保满   班级管理,班级列表修改,科目设置
497
      async exportTeacherExl() {
b0cd2598   梁保满   fix:测试问题
498
499
500
501
        const exportClassAndStudent =
          this.type == 0
            ? this.$request.exportClassAndStudent
            : this.$request.exportTClassAndStudent;
0454f787   梁保满   班级管理,班级列表修改,科目设置
502
        this.loadingDown = true;
8ad80958   梁保满   教师学生管理,设备状态
503
        let data = await exportClassAndStudent();
0454f787   梁保满   班级管理,班级列表修改,科目设置
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
        this.loadingDown = false;
        if (data) {
          let blob = new Blob([data], {
            type: "application/vnd.ms-excel;charset=utf-8",
          });
          downloadFile(`班级名单.xlsx`, blob);
        } else {
          this.$message.error("下载失败");
        }
      },
    },
  };
  </script>
  
  <style lang="scss" scoped>
8ad80958   梁保满   教师学生管理,设备状态
519
520
521
522
  .tab-box {
    margin-bottom: 16px;
  }
  
31fe9b9a   梁保满   班级修改删除即可偶调整
523
524
525
  .fenban {
    width: 28px;
    margin-left: 10px;
dc56294d   梁保满   班级分班
526
527
    cursor: pointer;
  }
8ad80958   梁保满   教师学生管理,设备状态
528
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
529
530
531
  .page-tit {
    margin-bottom: 20px;
  }
8ad80958   梁保满   教师学生管理,设备状态
532
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
533
534
535
  .page-content {
    padding: 20px;
  }
8ad80958   梁保满   教师学生管理,设备状态
536
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
537
538
539
540
  .grade-box {
    background: #f8f8f8;
    padding: 12px 0;
  }
8ad80958   梁保满   教师学生管理,设备状态
541
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
542
  .el-button-del {
8ad80958   梁保满   教师学生管理,设备状态
543
    float: left;
b0cd2598   梁保满   fix:测试问题
544
    margin-left: 80px;
0454f787   梁保满   班级管理,班级列表修改,科目设置
545
  }
8ad80958   梁保满   教师学生管理,设备状态
546
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
547
548
549
  .h-title {
    display: flex;
    align-items: center;
8ad80958   梁保满   教师学生管理,设备状态
550
  
5cfb0264   梁保满   班级管理交互优化
551
552
553
    .s-num {
      font-size: 13px;
    }
8ad80958   梁保满   教师学生管理,设备状态
554
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
555
556
557
    .sub-btn {
      margin-left: 30px;
    }
8ad80958   梁保满   教师学生管理,设备状态
558
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
559
560
561
562
563
564
    .txt {
      margin-left: 30px;
      font-size: 13px;
      color: #666;
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
565
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
566
567
568
569
570
  .dia-tit {
    .tips {
      font-size: 12px;
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
571
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
572
573
574
575
  .grade-item {
    .grade-info {
      display: flex;
      flex-wrap: wrap;
5cfb0264   梁保满   班级管理交互优化
576
      padding: 10px 20px 0;
8ad80958   梁保满   教师学生管理,设备状态
577
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
578
      .clazz-li {
5cfb0264   梁保满   班级管理交互优化
579
580
        margin-right: 20px;
        margin-bottom: 18px;
0454f787   梁保满   班级管理,班级列表修改,科目设置
581
582
        position: relative;
        background: #fff;
8ad80958   梁保满   教师学生管理,设备状态
583
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
584
585
586
        .el-icon-edit {
          cursor: pointer;
          display: none;
8ad80958   梁保满   教师学生管理,设备状态
587
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
588
589
590
591
          &:hover {
            color: #667ffd;
          }
        }
8ad80958   梁保满   教师学生管理,设备状态
592
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
593
594
595
596
597
598
599
600
        &:hover {
          .el-icon-edit {
            display: inline;
          }
        }
      }
  
      .clazz-item {
55eb13fd   梁保满   中天提出的交互优化
601
        width: 96px;
5cfb0264   梁保满   班级管理交互优化
602
        padding: 14px 18px 14px 14px;
0454f787   梁保满   班级管理,班级列表修改,科目设置
603
604
        border-radius: 10px;
        box-shadow: 1px 1px 3px #888;
55eb13fd   梁保满   中天提出的交互优化
605
606
607
        box-sizing: content-box;
        position: relative;
      }
8ad80958   梁保满   教师学生管理,设备状态
608
  
55eb13fd   梁保满   中天提出的交互优化
609
610
611
612
      .el-icon-edit {
        position: absolute;
        right: 5px;
        top: 5px;
0454f787   梁保满   班级管理,班级列表修改,科目设置
613
      }
8ad80958   梁保满   教师学生管理,设备状态
614
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
615
616
      .clazz-name {
        font-size: 16px;
5cfb0264   梁保满   班级管理交互优化
617
        font-weight: 700;
0454f787   梁保满   班级管理,班级列表修改,科目设置
618
        line-height: 18px;
5cfb0264   梁保满   班级管理交互优化
619
620
        padding-bottom: 6px;
        position: relative;
0454f787   梁保满   班级管理,班级列表修改,科目设置
621
      }
8ad80958   梁保满   教师学生管理,设备状态
622
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
623
      .clazz-class {
5cfb0264   梁保满   班级管理交互优化
624
625
626
        // display: flex;
        // justify-content: space-between;
        font-size: 14px;
0454f787   梁保满   班级管理,班级列表修改,科目设置
627
628
629
      }
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
630
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
631
632
633
  .subject-box {
    overflow: hidden;
    position: relative;
8ad80958   梁保满   教师学生管理,设备状态
634
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
635
636
637
638
639
    .p1 {
      line-height: 20px;
      margin-bottom: 10px;
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
640
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
641
642
643
  :deep(.el-checkbox-group) {
    display: flex;
    flex-wrap: wrap;
8ad80958   梁保满   教师学生管理,设备状态
644
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
645
646
647
    .p1 {
      padding-right: 50px;
      position: relative;
8ad80958   梁保满   教师学生管理,设备状态
648
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
649
650
651
      &:hover {
        .el-icon {
          display: block;
8ad80958   梁保满   教师学生管理,设备状态
652
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
653
654
655
656
          &:hover {
            color: #667ffd;
          }
        }
8ad80958   梁保满   教师学生管理,设备状态
657
  
6bca489d   LH_PC   云平台二期UI
658
        .is-checked~.el-icon-delete {
0454f787   梁保满   班级管理,班级列表修改,科目设置
659
660
661
662
          display: none;
        }
      }
    }
8ad80958   梁保满   教师学生管理,设备状态
663
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
664
665
666
667
668
669
670
671
672
    .el-icon {
      font-size: 14px;
      color: #999;
      position: absolute;
      right: 10px;
      top: 3px;
      cursor: pointer;
      display: none;
    }
8ad80958   梁保满   教师学生管理,设备状态
673
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
674
675
676
677
    .el-icon-check,
    .el-icon-close {
      display: block;
    }
8ad80958   梁保满   教师学生管理,设备状态
678
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
679
680
681
682
683
    .el-icon-edit,
    .el-icon-check {
      right: 28px;
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
684
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
685
686
687
688
689
690
  .sub-ipt {
    :deep(.el-input__inner) {
      height: 24px;
      line-height: 24px;
    }
  }
8ad80958   梁保满   教师学生管理,设备状态
691
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
692
693
694
695
  .form-box {
    :deep(.el-form-item__label) {
      line-height: 28px;
    }
8ad80958   梁保满   教师学生管理,设备状态
696
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
697
698
    .el-icon-plus {
      cursor: pointer;
8ad80958   梁保满   教师学生管理,设备状态
699
  
0454f787   梁保满   班级管理,班级列表修改,科目设置
700
701
702
703
704
705
      &:hover {
        color: #667ffd;
      }
    }
  }
  </style>