| | |
| | | </el-select> --> |
| | | <el-cascader |
| | | clearable |
| | | @change="getSubject" |
| | | v-model="form.deptId" |
| | | :options="depts" |
| | | :props="{ emitPath: false, value: 'id', label: 'name', checkStrictly: true }" |
| | |
| | | </el-col> |
| | | </el-row> |
| | | </el-form-item> |
| | | <el-form-item :key="item.subjectId" :label="item.label" required v-for="(item, key) in form.questionTypeVMS" |
| | | <!-- <el-form-item :key="item.subjectId" :label="item.label" required v-for="(item, key) in form.questionTypeVMS" |
| | | v-if="form.paperType == 7"> |
| | | <el-row> |
| | | <el-col :span="3"> |
| | |
| | | <el-input v-model="form.questionTypeVMS[key].trueFalse" style="width: 80%" /> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form-item> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="总数分:" v-if="form.paperType==7" prop="name" required>--> |
| | | <!-- <el-input v-model="form.name"/>--> |
| | | <!-- </el-form-item>--> |
| | |
| | | |
| | | <el-dialog :visible.sync="studentDialog" width="70%"> |
| | | <el-form :model="student" ref="queryForm" :inline="true"> |
| | | <el-form-item label="标签:"> |
| | | <el-select v-model="student.tagIds" clearable multiple> |
| | | <el-form-item> |
| | | <el-select v-model="student.tagIds" clearable multiple placeholder="标签"> |
| | | <el-option v-for="item in tags" :key="item.id" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="排除标签:"> |
| | | <el-select v-model="student.excludeTagIds" clearable multiple> |
| | | <el-form-item> |
| | | <el-select v-model="student.excludeTagIds" clearable multiple placeholder="排除标签"> |
| | | <el-option v-for="item in tags" :key="item.id" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="部门:"> |
| | | <el-form-item> |
| | | <!-- <el-select v-model="student.deptIds" clearable multiple> |
| | | <el-option v-for="item in depts" :key="item.id" :value="item.id" :label="item.name"></el-option> |
| | | </el-select> --> |
| | | <el-cascader |
| | | filterable |
| | | placeholder="请选择部门" |
| | | clearable |
| | | collapse-tags |
| | | v-model="student.deptIds" |
| | | :options="depts" |
| | | :props="{ multiple: true, emitPath: false, value: 'id', label: 'name', checkStrictly: true }" |
| | | ></el-cascader> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-input v-model="student.realName" clearable placeholder="请输入姓名"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" @click="selectStudent">查询</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-button type="danger" @click="selectAllBoolean ? selectAll() : unselectAll()" size="small" style="margin-bottom: 3px">{{ selectAllBoolean ? '全选' : '取消全选' }}</el-button> |
| | | <el-table ref="multipleTable" v-loading="student.listLoading" :data="tableData" border fit highlight-current-row |
| | | style="width: 100%" @selection-change="handleSelection" row-key="id" @select-all="selectAll"> |
| | | style="width: 100%" @selection-change="handleSelection" row-key="id"> |
| | | <el-table-column type="selection" :reserve-selection="true"></el-table-column> |
| | | <el-table-column prop="realName" label="学员" /> |
| | | </el-table> |
| | |
| | | |
| | | data() { |
| | | return { |
| | | selectAllBoolean: true, |
| | | tags: [], |
| | | studentDialog: false, |
| | | student: { |
| | |
| | | }, |
| | | subjectIdList: [], |
| | | form: { |
| | | deptId: '', |
| | | aggregateSource: '100', |
| | | id: null, |
| | | departmentIds: [], |
| | |
| | | limitDateTime: [], |
| | | name: '', |
| | | suggestTime: null, |
| | | titleItems: [], |
| | | titleItems: [{ |
| | | name: '', |
| | | questionItems: [] |
| | | }], |
| | | subjectSource: {}, |
| | | questionTypeVMS: [], |
| | | examineeList: [], |
| | |
| | | }); |
| | | }, |
| | | async mounted() { |
| | | departmentApi.getCurrentDeptId().then(res => { |
| | | if (res.response && res.response[0]) { |
| | | this.form.deptId = res.response[0]; |
| | | } |
| | | }); |
| | | |
| | | let id = this.$route.query.id; |
| | | let _this = this; |
| | |
| | | _this.subjectFilter = _this.subjects; |
| | | }); |
| | | if (id && parseInt(id) !== 0) { |
| | | this.selectAllBoolean = false; |
| | | _this.formLoading = true; |
| | | await examPaperApi.selfselect(id).then(re => { |
| | | const { userIds, userNames } = re.response; |
| | |
| | | }) |
| | | }, |
| | | handleSelection(val) { |
| | | console.log('val', val); |
| | | this.student.multipleSelection = val; |
| | | }, |
| | | selectAll() { |
| | | selectAll () { |
| | | this.preSelectAll(); |
| | | let param = { ...this.student }; |
| | | param.pageSize = 999999; |
| | | examPaperApi.selectStudent(param).then(res => { |
| | | this.handleSelection(res.response.list); |
| | | res.response.list.forEach(item => { |
| | | this.$refs.multipleTable.toggleRowSelection(item, true); |
| | | this.selectAllBoolean = false; |
| | | }) |
| | | this.getStudent(); |
| | | }); |
| | | }, |
| | | unselectAll () { |
| | | this.$refs.multipleTable.clearSelection(); |
| | | this.selectAllBoolean = true; |
| | | }, |
| | | confirmStudentSelect() { |
| | | this.form.userIds = this.student.multipleSelection.map((item) => item.id); |
| | |
| | | }); |
| | | this.student.multipleSelection = []; |
| | | this.studentDialog = false; |
| | | }, |
| | | preSelectAll() { |
| | | this.selectAllBoolean = true; |
| | | this.$refs.multipleTable.clearSelection(); |
| | | this.form.userIds = this.student.multipleSelection.map((item) => item.id); |
| | | this.form.examineeList = this.student.multipleSelection.map((item) => { |
| | | return { |
| | | id: item.id, |
| | | realName: item.realName |
| | | }; |
| | | }); |
| | | this.student.multipleSelection = []; |
| | | }, |
| | | getTags() { |
| | | userApi.tagList(null).then(data => { |
| | |
| | | console.log(this.form.subjectSource); |
| | | console.log(this.form.questionTypeVMS); |
| | | // this.form.paperType = 7 |
| | | this.form.titleItems = []; |
| | | this.form.titleItems = [{ |
| | | name: '', |
| | | questionItems: [] |
| | | }]; |
| | | } else { |
| | | this.form.subjectSource = {}; |
| | | this.subjectIdList = []; |