Blame view

src/views/examinationPaper/index.vue 22.3 KB
77ebf04d   梁保满   个人版
1
2
3
4
5
6
7
  <template>
    <div>
      <back-box>
        <template slot="title">
          <span>备题组卷</span>
        </template>
        <template slot="btns">
f45b3c05   LH_PC   云平台新UI界面
8
9
          <el-tooltip v-if="!code && gdClass" effect="dark" content="已归档试卷" placement="bottom">
            <el-button type="primary" icon="fa fa-archive" size="mini" plain circle @click="toArchiving"></el-button>
799818f7   梁保满   背题组卷
10
          </el-tooltip>
77ebf04d   梁保满   个人版
11
12
        </template>
      </back-box>
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
13
14
      <div class="examinationPaper-type">
        <el-button-group>
f45b3c05   LH_PC   云平台新UI界面
15
16
17
18
          <el-button size="large" :type="query.type == 1 ? 'primary' : 'default'"
            @click="changPaperType(1)">备题</el-button>
          <el-button size="large" :type="query.type == 2 ? 'primary' : 'default'"
            @click="changPaperType(2)">组卷</el-button>
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
19
        </el-button-group>
77ebf04d   梁保满   个人版
20
  
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
21
        <p>
f45b3c05   LH_PC   云平台新UI界面
22
23
          <el-button v-if="query.type == 1" type="primary" size="mini" icon="el-icon-plus" round @click="diaUp = true">
            导入课件</el-button>
b0cd2598   梁保满   fix:测试问题
24
  
f45b3c05   LH_PC   云平台新UI界面
25
26
          <el-dropdown v-if="query.type == 2" trigger="click" @command="handleAdd">
            <el-button type="primary" size="mini" icon="el-icon-plus" round>添加试卷</el-button>
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
27
28
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item :command="1">导入试卷</el-dropdown-item>
49a203f1   梁保满   添加试卷流程绣花
29
              <el-dropdown-item :command="2">创建答题卡</el-dropdown-item>
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
30
31
32
33
            </el-dropdown-menu>
          </el-dropdown>
        </p>
      </div>
77ebf04d   梁保满   个人版
34
35
      <div class="answer-header">
        <div class="sel-box">
f45b3c05   LH_PC   云平台新UI界面
36
37
          <el-select class="sel" v-model="query.classId" placeholder="选择班级" @change="changClazz">
            <el-option v-for="item in classList" :key="item.value" :label="item.label" :value="item.value">
77ebf04d   梁保满   个人版
38
39
            </el-option>
          </el-select>
f45b3c05   LH_PC   云平台新UI界面
40
41
          <el-select class="sel" v-model="query.subjectName" placeholder="选择科目" @change="getData(false)">
            <el-option v-for="item in subjectList" :key="item.value" :label="item.label" :value="item.value">
77ebf04d   梁保满   个人版
42
43
            </el-option>
          </el-select>
f45b3c05   LH_PC   云平台新UI界面
44
45
          <el-select v-if="query.type == 2" class="sel" v-model="query.tagId" placeholder="选择类型" @change="getData(false)">
            <el-option v-for="item in typeList" :key="item.label" :label="item.label" :value="item.value">{{ item.label }}
ce278878   梁保满   2-2 bugfix
46
47
            </el-option>
          </el-select>
f45b3c05   LH_PC   云平台新UI界面
48
49
50
          <el-input placeholder="试卷名称" v-model="query.title" class="input-with-select"
            @keyup.enter.native="getData(true)">
            <el-button slot="append" icon="el-icon-search" @click="getData(true)"></el-button>
77ebf04d   梁保满   个人版
51
52
53
54
          </el-input>
        </div>
      </div>
      <p class="tips" v-show="archivedTotal">
cffc1a98   梁保满   3-8BUG
55
        <span>回收站内已有{{ archivedTotal }}份答题卡,</span>
77ebf04d   梁保满   个人版
56
57
        <router-link to="/examinationPaperRecycle">点击查看&gt;&gt;</router-link>
      </p>
352c53cc   梁保满   上传word回传数据
58
59
      <div class="content">
        <p class="tab-box">
f45b3c05   LH_PC   云平台新UI界面
60
61
62
63
          <span :class="['tab-s', query.share == 0 ? 'active' : '']" @click="changShare(0)">我自编的 ({{ totalCount.my
            }})</span>
          <span :class="['tab-s', query.share == 1 ? 'active' : '']" @click="changShare(1)">年级共享的 ({{ totalCount.share
            }})</span>
352c53cc   梁保满   上传word回传数据
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
        </p>
        <ul v-if="tableData && tableData.length" v-loading="loading">
          <li class="item" v-for="item in tableData" :key="item.id">
            <div class="pic-box">
              <p class="i-box"><i class="fa fa-map-o"></i></p>
              <p class="ids">{{ item.id }}</p>
            </div>
            <div class="info">
              <p class="title">
                {{ item.title }}
                <span class="label" v-if="!!item.tag">{{ item.tag }}</span>
              </p>
              <p class="num">
                总题数:{{ item.questionNum }}
                <em class="s-line">|</em>
77da338a   梁保满   自测问题修改
79
80
81
82
                <template v-if="query.type == 2">
                  预计时长:{{ item.examsDuration }}
                  <em class="s-line">|</em>
                </template>
352c53cc   梁保满   上传word回传数据
83
84
                <template v-if="role != 'ROLE_PERSONAL'">
                  授课端同步:
f45b3c05   LH_PC   云平台新UI界面
85
86
87
88
89
90
91
92
                  <span class="clazz" v-for="(clazzChild, indexs) in item.classList" :key="clazzChild.classId"
                    :class="clazzChild.keepStatus == 1 ? 'active' : ''">{{
            `${clazzChild.className}${indexs != item.classList.length - 1 ? "、" : ""
            }`
          }}
                    <i v-if="clazzChild.keepStatus == 1" class="el-icon-success"></i></span>
                  <el-tooltip effect="dark" content="刷新同步状态" placement="right">
                    <i class="icon-refresh el-icon-refresh" @click="refreshStic"></i>
352c53cc   梁保满   上传word回传数据
93
94
95
96
                  </el-tooltip>
                </template>
              </p>
              <p class="person">
f45b3c05   LH_PC   云平台新UI界面
97
                {{ item.realName }}<em class="s-line">|</em><span class="date">{{ item.modifiedTime }}</span>
352c53cc   梁保满   上传word回传数据
98
99
100
101
              </p>
            </div>
            <div class="btn-box">
              <el-tooltip effect="dark" content="修改答案" placement="bottom">
f45b3c05   LH_PC   云平台新UI界面
102
103
                <el-button class="edit" type="primary" size="mini" circle icon="el-icon-edit"
                  @click="toEdit(item)"></el-button>
352c53cc   梁保满   上传word回传数据
104
              </el-tooltip>
f45b3c05   LH_PC   云平台新UI界面
105
106
              <el-dropdown trigger="click" @command="handleDropdownClick($event, item)">
                <el-button type="info" size="mini" circle icon="el-icon-more"></el-button>
352c53cc   梁保满   上传word回传数据
107
                <el-dropdown-menu slot="dropdown">
f45b3c05   LH_PC   云平台新UI界面
108
109
                  <el-dropdown-item :command="1"
                    v-if="userName == item.realName && role != 'ROLE_PERSONAL'">修改分享范围</el-dropdown-item>
ce278878   梁保满   2-2 bugfix
110
                  <el-dropdown-item :command="2">复制</el-dropdown-item>
f45b3c05   LH_PC   云平台新UI界面
111
                  <el-dropdown-item v-show="query.share == 0" :command="3">放入回收站</el-dropdown-item>
352c53cc   梁保满   上传word回传数据
112
113
114
115
116
117
                </el-dropdown-menu>
              </el-dropdown>
            </div>
          </li>
        </ul>
        <div class="pagination-box">
f45b3c05   LH_PC   云平台新UI界面
118
119
          <el-pagination small="" layout="total,prev, pager, next" :hide-on-single-page="true" :total="total"
            @current-change="changePage" :current-page="page" :page-size="size">
352c53cc   梁保满   上传word回传数据
120
121
          </el-pagination>
        </div>
f45b3c05   LH_PC   云平台新UI界面
122
        <el-empty v-if="!loading && tableData.length == 0" content="没有更多数据" :image-size="100"></el-empty>
77ebf04d   梁保满   个人版
123
      </div>
352c53cc   梁保满   上传word回传数据
124
  
f45b3c05   LH_PC   云平台新UI界面
125
      <el-dialog :append-to-body="true" :close-on-click-modal="false" title="选择分享范围" :visible.sync="dialogVisible" width="400px">
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
126
127
128
129
130
131
132
133
134
135
136
137
138
        <el-form :model="shareForm" :rules="shareRulesForm" label-width="160px">
          <el-form-item prop="share" label="分享范围:">
            <el-radio-group v-model="shareForm.sharingType">
              <el-radio :label="0">任课班级分享</el-radio>
              <el-radio :label="1">全年级分享</el-radio>
            </el-radio-group>
          </el-form-item>
        </el-form>
        <div slot="footer" class="dialog-footer">
          <el-button type="primary" @click="saveShare">确 定</el-button>
          <el-button @click="dialogVisible = false">取 消</el-button>
        </div>
      </el-dialog>
f45b3c05   LH_PC   云平台新UI界面
139
140
      <el-dialog :append-to-body="true" :close-on-click-modal="false" title="上传word文档" :visible.sync="diaUp" width="600px">
        <upload :url="url" :params="{ type: query.type }" @upSuccess="upSuccess" fileName="下载">
49a203f1   梁保满   添加试卷流程绣花
141
142
143
144
          <div class="down-box p0" slot="down">
            <p class="down-head" v-if="query.type == 1">
              <span>第一步:</span>
              <el-link type="primary" @click="downExcel">下载模板,</el-link>
f45b3c05   LH_PC   云平台新UI界面
145
146
              <span>或者导出菁优网试卷/组卷网(学科网)试卷;
                为保证第三方试卷导入成功,请注意参考导出示例:</span>
49a203f1   梁保满   添加试卷流程绣花
147
              <span class="img-box">
f45b3c05   LH_PC   云平台新UI界面
148
                <el-image class="img" :src="examplePic" :preview-src-list="examplePicList">
49a203f1   梁保满   添加试卷流程绣花
149
                </el-image>
f45b3c05   LH_PC   云平台新UI界面
150
                菁优网示例 </span>/
bd6ad607   梁保满   查看图片
151
              <span class="img-box">
f45b3c05   LH_PC   云平台新UI界面
152
                <el-image class="img" :src="examplePic2" :preview-src-list="examplePicList2">
bd6ad607   梁保满   查看图片
153
154
                </el-image>
                组卷网(学科网)示例。
49a203f1   梁保满   添加试卷流程绣花
155
156
157
              </span>
            </p>
            <p class="down-head" v-if="query.type == 2">
f45b3c05   LH_PC   云平台新UI界面
158
              <span>第一步:导出菁优网试卷/组卷网(学科网)试卷;为保证第三方试卷导入成功,请注意参考导出示例:</span>
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
159
              <span class="img-box">
f45b3c05   LH_PC   云平台新UI界面
160
                <el-image class="img" :src="examplePic" :preview-src-list="examplePicList">
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
161
                </el-image>
bd6ad607   梁保满   查看图片
162
163
164
165
                菁优网示例
              </span>
              /
              <span class="img-box">
f45b3c05   LH_PC   云平台新UI界面
166
                <el-image class="img" :src="examplePic2" :preview-src-list="examplePicList2">
bd6ad607   梁保满   查看图片
167
168
                </el-image>
                组卷网(学科网)示例。
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
169
              </span>
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
170
171
172
173
174
175
176
177
            </p>
            <p>第二步:上传完成编辑好的试卷。</p>
          </div>
        </upload>
        <div class="dialog-footer" slot="footer">
          <el-button @click="diaUp = false">取 消</el-button>
        </div>
      </el-dialog>
77ebf04d   梁保满   个人版
178
179
180
181
    </div>
  </template>
  
  <script>
23659274   梁保满   备题接口对接
182
  import { downloadFile } from "@/utils";
5f80d60e   梁保满   备题试卷模版
183
  import axios from "axios";
6bca489d   LH_PC   云平台二期UI
184
  import example from "@/assets/images/example.png";
49a203f1   梁保满   添加试卷流程绣花
185
  import example2 from "@/assets/images/example2.png";
77ebf04d   梁保满   个人版
186
187
188
189
  export default {
    name: "examinationPaper",
    data() {
      return {
e5e4a3e6   梁保满   v1.3
190
        code: "",
47a01cb6   梁保满   v1.3测试问题
191
        gdClass: 0, //已归档班级数量
77ebf04d   梁保满   个人版
192
193
        loading: false,
        userName: "",
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
194
        dialogVisible: false,
77ebf04d   梁保满   个人版
195
196
197
        query: {
          classId: "",
          subjectName: "",
ce278878   梁保满   2-2 bugfix
198
          tagId: "",
77ebf04d   梁保满   个人版
199
          title: "",
352c53cc   梁保满   上传word回传数据
200
          type: 1, //试卷类型
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
201
          share: 0, //分享类型
77ebf04d   梁保满   个人版
202
203
204
        },
        classList: [],
        subjectList: [],
ce278878   梁保满   2-2 bugfix
205
        typeList: [],
77ebf04d   梁保满   个人版
206
        archivedTotal: 0, //已归档答题卡数量
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
207
        tableData: [],
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
208
209
210
211
212
213
214
215
216
        shareForm: {
          id: "",
          sharingType: 0, //0-任课班级/1-全年级
        },
        shareRulesForm: {
          sharingType: [
            { required: true, message: "选择分享范围", trigger: "blur" },
          ],
        },
77ebf04d   梁保满   个人版
217
218
219
        total: 0,
        page: 1,
        size: 20,
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
220
221
  
        // v1.5
b0cd2598   梁保满   fix:测试问题
222
223
        totalCount: {
          //数量统计
352c53cc   梁保满   上传word回传数据
224
225
226
          my: 0,
          share: 0,
        },
b0cd2598   梁保满   fix:测试问题
227
228
        diaUp: false, //上传word弹窗开关
        url: "/api_html/common/paper/upload", //上传文档地址
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
229
        examplePic: example,
bd6ad607   梁保满   查看图片
230
231
232
        examplePic2: example2,
        examplePicList: [example],
        examplePicList2: [example2],
77ebf04d   梁保满   个人版
233
234
235
      };
    },
    async created() {
7812e986   梁保满   班主任查看报表添加额外信息
236
      this.code = this.$store.getters.csCode;
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
237
238
239
      this.role =
        this.$store.getters.info.showRole ||
        this.$store.getters.info.permissions[0].role;
77ebf04d   梁保满   个人版
240
      this.userName = this.$store.getters.info.name || "";
77da338a   梁保满   自测问题修改
241
242
      this.query.type = this.$route.query.type || 1;
      this.query.share = this.$route.query.share || 0;
b0cd2598   梁保满   fix:测试问题
243
      this._QueryClassList2();
352c53cc   梁保满   上传word回传数据
244
245
246
247
      await this._QueryClassList();
      if (!this.query.classId) {
        return;
      }
b0cd2598   梁保满   fix:测试问题
248
      this._QueryTypeList();
352c53cc   梁保满   上传word回传数据
249
250
      await this._QuerySubjectList();
      this._QueryData();
77ebf04d   梁保满   个人版
251
252
    },
    methods: {
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
253
      refreshStic() {
77da338a   梁保满   自测问题修改
254
255
256
        this.loading = true;
        setTimeout(() => {
          this._QueryData();
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
257
258
        }, 500);
      },
e5e4a3e6   梁保满   v1.3
259
260
261
262
263
      toArchiving() {
        this.$router.push({
          path: "/examinationPaperArchiving",
        });
      },
ce278878   梁保满   2-2 bugfix
264
      //去组卷
77ebf04d   梁保满   个人版
265
      toAdd(query) {
c3cdce9c   梁保满   bug
266
267
268
269
        if (!this.query.classId) {
          this.$message.warning("没有任课班级,请先设置。");
          return;
        }
77ebf04d   梁保满   个人版
270
271
        let routerItem = {
          path: "/examinationPaperAdd",
384a2a54   梁保满   请求头添加班主任信息,bug修改
272
273
274
275
          query: {
            ...query,
            listType: this.query.type,
            listShare: this.query.share,
b0cd2598   梁保满   fix:测试问题
276
277
            subjectName: this.query.subjectName,
          },
77ebf04d   梁保满   个人版
278
        };
77ebf04d   梁保满   个人版
279
280
        this.$router.push(routerItem);
      },
ce278878   梁保满   2-2 bugfix
281
282
      //去备题
      toAddQs(query) {
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
283
284
285
286
287
        if (!this.query.classId) {
          this.$message.warning("没有任课班级,请先设置。");
          return;
        }
        let routerItem = {
ce278878   梁保满   2-2 bugfix
288
          path: "/examinationPaperAddQs",
384a2a54   梁保满   请求头添加班主任信息,bug修改
289
290
291
292
          query: {
            ...query,
            listType: this.query.type,
            listShare: this.query.share,
03cd547e   梁保满   单体型以及其他类型试卷修改答案逻辑
293
            subjectName: this.query.subjectName,
b0cd2598   梁保满   fix:测试问题
294
          },
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
295
        };
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
296
297
        this.$router.push(routerItem);
      },
77ebf04d   梁保满   个人版
298
299
300
301
302
      toEdit(item) {
        this.$router.push({
          path: "/examinationPaperEdit",
          query: {
            paperId: item.id,
b0cd2598   梁保满   fix:测试问题
303
            paperType: this.query.type,
77ebf04d   梁保满   个人版
304
305
306
          },
        });
      },
b0cd2598   梁保满   fix:测试问题
307
308
      handleDropdownClick(value, item) {
        //更多
77ebf04d   梁保满   个人版
309
310
        const that = this;
        switch (value) {
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
311
312
313
314
315
316
          case 1:
            //修改分享范围
            that.shareForm.id = item.id;
            that.shareForm.sharingType = item.sharingType;
            that.dialogVisible = true;
            break;
77ebf04d   梁保满   个人版
317
318
          case 2:
            //复制
98dec083   梁保满   复制试卷问题,题干列表样式,题目解...
319
            if (that.query.type == 2) {
ce278878   梁保满   2-2 bugfix
320
321
322
323
              that.toAdd({ type: 2, paperId: item.id });
            } else {
              that.toAddQs({ type: 2, paperId: item.id });
            }
77ebf04d   梁保满   个人版
324
325
326
327
328
329
330
            break;
          case 3:
            //归档
            that.recovery(item);
            break;
        }
      },
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
331
      changPaperType(type) {
b0cd2598   梁保满   fix:测试问题
332
333
334
        this.query.type = type;
        this.query.tagId = "";
        this.changShare(0);
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
335
      },
77ebf04d   梁保满   个人版
336
337
338
339
      changePage(page) {
        this.page = page;
        this._QueryData(this.query.title);
      },
352c53cc   梁保满   上传word回传数据
340
      //修改分享范围
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
341
      async saveShare() {
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
342
343
344
345
346
347
348
349
350
351
352
353
354
355
        const { data, status, info } = await this.$request.modifyPaper({
          paperId: this.shareForm.id,
          sharingType: this.shareForm.sharingType,
        });
        if (status === 0) {
          this.shareForm.id = "";
          this.shareForm.sharingType = 1;
          this.dialogVisible = false;
          this.$message.success(info);
          this._QueryData(this.query.title == "");
        } else {
          this.$message.error(info);
        }
      },
352c53cc   梁保满   上传word回传数据
356
      //归档
77ebf04d   梁保满   个人版
357
      async recovery(item) {
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
358
359
360
361
362
        let modifyPaper =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pModifyPaper
            : this.$request.modifyPaper;
        const { data, status, info } = await modifyPaper({
77ebf04d   梁保满   个人版
363
364
365
366
          paperId: item.id,
          status: 2,
        });
        if (status === 0) {
352c53cc   梁保满   上传word回传数据
367
          let type = this.query.title ? true : false;
77ebf04d   梁保满   个人版
368
369
370
371
372
373
          this.page = 1;
          this._QueryData(type);
        } else {
          this.$message.error(info);
        }
      },
352c53cc   梁保满   上传word回传数据
374
375
      //根据试卷名称查找
      async getData(bool) {
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
376
        this.page = 1;
352c53cc   梁保满   上传word回传数据
377
        this._QueryData(bool);
352c53cc   梁保满   上传word回传数据
378
      },
77ebf04d   梁保满   个人版
379
380
      //切换班级
      async changClazz() {
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
381
        this.page = 1;
ce278878   梁保满   2-2 bugfix
382
        if (this.query.type == 2) {
b0cd2598   梁保满   fix:测试问题
383
          await this._QueryTypeList();
ce278878   梁保满   2-2 bugfix
384
        }
77ebf04d   梁保满   个人版
385
        await this._QuerySubjectList();
77ebf04d   梁保满   个人版
386
        this._QueryData(false);
352c53cc   梁保满   上传word回传数据
387
388
      },
      //切换类型
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
389
      async changShare(share) {
b0cd2598   梁保满   fix:测试问题
390
        this.query.share = share;
352c53cc   梁保满   上传word回传数据
391
        this.page = 1;
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
392
393
394
395
396
        this.$router.replace({
          name: "examinationPaper",
          query: {
            type: this.query.type,
            share: this.query.share,
b0cd2598   梁保满   fix:测试问题
397
398
          },
        });
352c53cc   梁保满   上传word回传数据
399
        this._QueryData(false);
77ebf04d   梁保满   个人版
400
      },
47a01cb6   梁保满   v1.3测试问题
401
402
403
404
405
406
407
408
409
410
411
412
413
      // 查找班级
      async _QueryClassList2() {
        this.loading = true;
        let fetchClassList =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pClassList
            : this.$request.fetchClassList;
  
        const { data, status, info } = await fetchClassList({ status: 1 });
        if (status === 0) {
          this.gdClass = data?.list?.length || 0;
        } else {
          this.$message.error(info);
77ebf04d   梁保满   个人版
414
415
416
417
418
        }
      },
      // 查找班级
      async _QueryClassList() {
        this.loading = true;
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
419
420
421
422
423
424
        let fetchClassList =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pClassList
            : this.$request.fetchClassList;
  
        const { data, status, info } = await fetchClassList();
77ebf04d   梁保满   个人版
425
426
427
428
429
        if (status === 0) {
          if (!!data.list) {
            this.classList =
              data.list?.map((item) => {
                return {
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
430
                  value: this.role == "ROLE_PERSONAL" ? item.id : item.classId,
77ebf04d   梁保满   个人版
431
432
433
434
435
436
437
438
439
440
441
                  label: item.className,
                };
              }) || [];
            this.query.classId = this.classList[0]?.value;
          }
        } else {
          this.$message.error(info);
        }
      },
      // 查找科目
      async _QuerySubjectList() {
34b574e0   梁保满   细节优化
442
        if (!this.query.classId) return;
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
443
444
445
446
447
448
        let fetchSubjectList =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pSubjectList
            : this.$request.fetchSubjectList;
  
        const { data, status, info } = await fetchSubjectList({
77ebf04d   梁保满   个人版
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
          classId: this.query.classId,
        });
        if (status === 0) {
          this.subjectList =
            data.subjectNames?.map((item) => {
              return {
                value: item,
                label: item,
              };
            }) || [];
          this.query.subjectName = this.subjectList[0]?.value;
        } else {
          this.$message.error(info);
        }
      },
ce278878   梁保满   2-2 bugfix
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
      // 查找答题卡类型
      async _QueryTypeList() {
        if (!this.query.classId) return;
        let fetchTypeNames =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pPaperTagList
            : this.$request.fetchTypeNames;
  
        const { data, status, info } = await fetchTypeNames({
          classId: this.query.classId,
          type: 0,
        });
        if (status === 0) {
          this.typeList =
            data.list.map((item) => {
              return {
                value: item.tagId,
                label: item.tag,
              };
            }) || [];
          this.typeList.unshift({
            value: "",
            label: "请选择标签",
          });
b0cd2598   梁保满   fix:测试问题
488
          this.query.tagId = "";
ce278878   梁保满   2-2 bugfix
489
490
491
492
        } else {
          this.$message.error(info);
        }
      },
77ebf04d   梁保满   个人版
493
      async _QueryData(type) {
34b574e0   梁保满   细节优化
494
        if (!this.query.classId) return;
77ebf04d   梁保满   个人版
495
496
497
498
499
        this.loading = true;
        //获取答题卡列表
        let query = {};
        if (!type) {
          this.query.title = "";
77ebf04d   梁保满   个人版
500
        }
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
501
        query = { ...this.query };
77ebf04d   梁保满   个人版
502
        for (let key in query) {
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
503
          if (!query[key] && query[key] !== 0) {
b0cd2598   梁保满   fix:测试问题
504
            delete query[key];
77ebf04d   梁保满   个人版
505
506
507
508
509
510
511
512
513
          }
        }
        if (!query.classId) {
          this.total = 0;
          this.tableData = [];
          this.loading = false;
          return;
        }
        this.loading = true;
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
514
515
516
517
518
519
        let fetchPaperList =
          this.role == "ROLE_PERSONAL"
            ? this.$request.pPaperList
            : this.$request.fetchPaperList;
  
        const { data, status, info } = await fetchPaperList({
77ebf04d   梁保满   个人版
520
521
522
523
524
525
526
          ...query,
          status: 1,
          page: this.page,
          size: this.size,
        });
        this.loading = false;
        if (status === 0) {
e17ec739   梁保满   随堂问,即时测导出爆表修改
527
528
          this.totalCount.my = data?.myCount || 0;
          this.totalCount.share = data?.gradeCount || 0;
77ebf04d   梁保满   个人版
529
530
531
532
533
534
535
          this.archivedTotal = data.archivedTotal;
          this.total = data.total;
          this.tableData = (data.list && [...data.list]) || [];
        } else {
          this.$message.error(info);
        }
      },
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
536
  
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
537
538
      //v1.5
      upSuccess(res) {
352c53cc   梁保满   上传word回传数据
539
540
541
542
543
544
545
546
547
548
        if (res.status == 0) {
          //导入成功
          this.$message.closeAll();
          this.$message({
            showClose: true,
            message: `${res.info}`,
            type: "success",
            duration: 2000,
          });
          this.diaUp = false;
b0cd2598   梁保满   fix:测试问题
549
          let params = JSON.stringify(res.data);
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
550
          if (this.query.type == 2) {
b0cd2598   梁保满   fix:测试问题
551
            this.toAdd({ params, isUpload: 1 });
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
552
          } else {
b0cd2598   梁保满   fix:测试问题
553
            this.toAddQs({ params });
3ca58022   梁保满   修改添加组卷题目解析,知识点梳理等
554
          }
352c53cc   梁保满   上传word回传数据
555
        }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
556
557
558
      },
      handleAdd(value) {
        if (value == 2) {
b0cd2598   梁保满   fix:测试问题
559
          this.toAdd();
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
560
        } else {
b0cd2598   梁保满   fix:测试问题
561
          this.diaUp = true;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
562
563
564
        }
      },
  
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
565
      async downExcel() {
b248db27   梁保满   课件模版区分,错别字修改,录分成功...
566
567
568
569
570
571
572
573
        let url;
        let that = this;
        if (that.query.type == 1) {
          url = "static/课件模板.docx";
        } else {
          url = "static/试卷模板.docx";
        }
        axios(url, {
b0cd2598   梁保满   fix:测试问题
574
575
          responseType: "arraybuffer",
        }).then((res) => {
5f80d60e   梁保满   备题试卷模版
576
577
          let blob = new Blob([res.data], {
            type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
578
          });
b248db27   梁保满   课件模版区分,错别字修改,录分成功...
579
580
581
582
          downloadFile(
            that.query.type == 1 ? "课件模板.docx" : "试卷模板.docx",
            blob
          );
b0cd2598   梁保满   fix:测试问题
583
        });
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
584
      },
77ebf04d   梁保满   个人版
585
586
587
588
589
    },
  };
  </script>
  
  <style scoped lang="scss">
49a203f1   梁保满   添加试卷流程绣花
590
591
  .down-box {
    padding-left: 20px;
f45b3c05   LH_PC   云平台新UI界面
592
  
49a203f1   梁保满   添加试卷流程绣花
593
594
    .down-head {
      display: block;
f45b3c05   LH_PC   云平台新UI界面
595
  
49a203f1   梁保满   添加试卷流程绣花
596
597
598
599
600
601
      span,
      a {
        vertical-align: middle;
      }
    }
  }
f45b3c05   LH_PC   云平台新UI界面
602
  
77ebf04d   梁保满   个人版
603
604
605
606
607
608
609
610
  .tips {
    display: flex;
    padding-left: 30px;
    line-height: 16px;
    font-size: 14px;
    color: #999;
    margin-bottom: 10px;
  }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
611
  
77ebf04d   梁保满   个人版
612
613
614
615
616
  .content {
    margin: 0 20px;
    background: #f8f8f8;
    padding: 12px;
    border-radius: 20px;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
617
  
77ebf04d   梁保满   个人版
618
619
620
621
622
623
624
625
626
627
    .item {
      display: flex;
      align-items: center;
      width: 100%;
      overflow: hidden;
      box-sizing: border-box;
      padding: 12px;
      border-radius: 20px;
      background: #fff;
      margin-bottom: 12px;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
628
  
77ebf04d   梁保满   个人版
629
630
631
      &:last-of-type {
        margin-bottom: 0;
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
632
  
77ebf04d   梁保满   个人版
633
634
635
636
637
638
639
640
641
642
      .pic-box {
        width: 80px;
        height: 80px;
        border-radius: 10px;
        margin-right: 10px;
        flex-shrink: 0;
        background: #667ffd;
        text-align: center;
        color: #fff;
        font-weight: 500;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
643
  
77ebf04d   梁保满   个人版
644
645
646
647
648
649
        .i-box {
          padding-top: 10px;
          font-size: 32px;
          margin-bottom: 3px;
        }
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
650
  
77ebf04d   梁保满   个人版
651
652
653
654
655
656
657
      .info {
        min-height: 80px;
        flex: 1;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
658
  
77ebf04d   梁保满   个人版
659
660
661
662
        .s-line {
          padding: 0 5px;
          color: #e2e2e2;
        }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
663
  
77ebf04d   梁保满   个人版
664
665
666
667
        .title {
          font-size: 16px;
          color: #222;
          font-weight: 500;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
668
  
77ebf04d   梁保满   个人版
669
670
671
672
673
674
675
676
677
678
679
          .label {
            display: inline-block;
            font-size: 12px;
            color: #2e9afe;
            line-height: 16px;
            padding: 0 10px;
            border: 1px solid #2e9afe;
            border-radius: 10px;
            transform: translateY(-2px);
          }
        }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
680
  
77ebf04d   梁保满   个人版
681
682
683
684
        .person {
          color: #666;
        }
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
685
  
77ebf04d   梁保满   个人版
686
687
688
689
690
      .clazz {
        font-size: 14px;
        font-weight: 500;
        position: relative;
        position: relative;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
691
  
77ebf04d   梁保满   个人版
692
693
694
        &.active {
          color: #667ffd;
        }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
695
  
77ebf04d   梁保满   个人版
696
697
698
699
700
701
        .el-icon-success {
          position: absolute;
          right: 0;
          top: -5px;
          color: #667ffd;
        }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
702
  
77ebf04d   梁保满   个人版
703
704
705
706
707
708
        &:last-of-type {
          .el-icon-success {
            right: -18px;
          }
        }
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
709
  
77ebf04d   梁保满   个人版
710
711
      .btn-box {
        flex-shrink: 0;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
712
  
77ebf04d   梁保满   个人版
713
714
715
716
        .edit {
          margin-right: 12px;
        }
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
717
  
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
718
719
      .icon-refresh {
        margin-left: 20px;
77ebf04d   梁保满   个人版
720
        cursor: pointer;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
721
  
e371f2dc   梁保满   软件下载,学校,班级老师等报表导入...
722
723
        &:hover {
          color: #2e9afe;
77ebf04d   梁保满   个人版
724
725
726
727
        }
      }
    }
  }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
728
  
77ebf04d   梁保满   个人版
729
730
731
732
733
  .answer-header {
    .sel-box {
      .sel {
        min-width: 160px;
      }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
734
  
77ebf04d   梁保满   个人版
735
736
737
738
739
      :deep(.el-cascader__tags) {
        flex-wrap: nowrap;
      }
    }
  }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
740
  
77ebf04d   梁保满   个人版
741
742
  .dialog-footer {
    text-align: center;
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
743
  
77ebf04d   梁保满   个人版
744
745
746
747
748
749
    :deep(.el-button) {
      border-radius: 20px;
      padding: 8px 20px 7px;
      margin: 0 12px;
    }
  }
6192eba8   梁保满   引用上传文件组件问题,备题组卷顶部
750
751
752
753
754
755
756
757
758
  
  // v1.5
  .examinationPaper-type {
    padding: 16px 40px 0 20px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
  }
352c53cc   梁保满   上传word回传数据
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
  
  .content {
    .tab-box {
      padding-bottom: 10px;
  
      .tab-s {
        margin: 0 10px;
        font-size: 17px;
        line-height: 24px;
        font-weight: 500;
        cursor: pointer;
  
        &:hover {
          color: #667ffd;
        }
  
        &.active {
          color: #667ffd;
b0cd2598   梁保满   fix:测试问题
777
          border-bottom: 1px solid #667ffd;
352c53cc   梁保满   上传word回传数据
778
779
780
781
        }
      }
    }
  }
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
782
783
784
785
786
787
788
789
  
  .down-head {
    display: flex;
    align-items: center;
    line-height: 22px;
  
    .img-box {
      position: relative;
03cd547e   梁保满   单体型以及其他类型试卷修改答案逻辑
790
      color: #409eff;
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
791
792
793
794
795
796
  
      .img {
        position: absolute;
        left: -1px;
        top: -1px;
        opacity: 0;
bd6ad607   梁保满   查看图片
797
        width: 100%;
4d5235d7   梁保满   学生,教师修改,顶部返回备题组卷记...
798
799
800
801
        height: 22px;
      }
    }
  }
77ebf04d   梁保满   个人版
802
  </style>