This commit is contained in:
@fawn-nine
2024-08-29 16:26:10 +08:00
parent e92c285844
commit 0e54268b83
2 changed files with 49 additions and 26 deletions

View File

@@ -44,20 +44,19 @@
style="display: inline-block;margin-left: 10px;" style="display: inline-block;margin-left: 10px;"
:limit="1" :limit="1"
class="upload-demo" class="upload-demo"
:action="baseUrl + '/common/classExam/importSubject'" :action="baseUrl + '/oss/fileoss'"
:data="{
courseId: this.course.id
}"
:show-file-list="false" :show-file-list="false"
multiple multiple
:on-exceed="handleExceed" :on-exceed="handleExceed"
:on-success="handleSuccess" :on-success="handleSuccess"
:before-upload="beforeUploadHandle"
accept=".xlsx,.xls" accept=".xlsx,.xls"
:on-remove="handleRemoveNovel" :on-remove="handleRemoveNovel"
> >
<el-button size="small" type="primary" plain>导入考题</el-button> <el-button size="small" type="primary" plain :loading="showLoadIcon">导入考题 {{loadText}}</el-button>
</el-upload> </el-upload>
<!-- </el-form-item> --> <!-- </el-form-item> -->
<!-- <div :loading="showLoadIcon">{{loadText}}</div> -->
</el-form> </el-form>
<el-table <el-table
tooltip-effect="dark custom-tooltip-effect" tooltip-effect="dark custom-tooltip-effect"
@@ -194,6 +193,8 @@ export default {
props: ["course"], props: ["course"],
data() { data() {
return { return {
showLoadIcon:false,
loadText:'',
baseUrl: global.baseUrl, baseUrl: global.baseUrl,
selectType: [], selectType: [],
shopTableVisible: false, shopTableVisible: false,
@@ -295,8 +296,19 @@ export default {
str = numList.join(","); str = numList.join(",");
return str; return str;
}, },
beforeUploadHandle(){
// this.$message.info('正在上传中')
this.showLoadIcon = true
this.loadText = '正在上传中'
},
handleSuccess(file, fileList) { handleSuccess(file, fileList) {
// this.form.imageList.push(file.url); this.showLoadIcon = false
this.loadText = ''
console.log('fileurl', file.url)
// this.form.imageList.push('file.url',file.url);
},
handleRemoveNovel(){
console.log('删除文件')
}, },
handleExceed(files, fileList) { handleExceed(files, fileList) {
this.$message.warning(`当前限制选择 3 个文件`); this.$message.warning(`当前限制选择 3 个文件`);

View File

@@ -17,7 +17,7 @@
> >
<el-form-item label="题目名称" prop="content"> <el-form-item label="题目名称" prop="content">
<el-input <el-input
clearable clearable
v-model="dataForm.content" v-model="dataForm.content"
placeholder="题目名称" placeholder="题目名称"
type="textarea" type="textarea"
@@ -31,21 +31,27 @@
<el-radio :label="1">多选题</el-radio> <el-radio :label="1">多选题</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="章节名称" prop="chapter"> <el-form-item label="章节名称" prop="chapter">
<el-input clearable v-model="dataForm.chapter" placeholder="章节名称"></el-input> <el-input
clearable
v-model="dataForm.chapter"
placeholder="章节名称"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="音视频" prop="media"> <el-form-item label="音视频" prop="media">
<div <div
style="display: flex;align-items: center;justify-content: space-between;" style="display: flex;align-items: center;justify-content: space-between;"
> >
<el-input clearable <el-input
clearable
v-model="dataForm.media" v-model="dataForm.media"
placeholder="音视频" placeholder="音视频"
style="width: calc(100% - 200px);" style="width: calc(100% - 200px);"
></el-input> ></el-input>
<el-input clearable <el-input
clearable
style="width: 180px;" style="width: 180px;"
v-model="dataForm.mediaTime" v-model="dataForm.mediaTime"
placeholder="音视频时间" placeholder="音视频时间"
@@ -53,7 +59,11 @@
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="出题人" prop="createUser"> <el-form-item label="出题人" prop="createUser">
<el-input v-model="dataForm.createUser" clearable placeholder="出题人"></el-input> <el-input
v-model="dataForm.createUser"
clearable
placeholder="出题人"
></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
label="答案选项" label="答案选项"
@@ -400,31 +410,31 @@ export default {
var selectIds = []; var selectIds = [];
if (this.dataForm.type == 0) { if (this.dataForm.type == 0) {
var data = this.$refs.xTable.getRadioRecord(); var data = this.$refs.xTable.getRadioRecord();
if (data && data.id) { console.log("data at line 402:", data);
selectIds.push(data.id); if (data && (data.id || data._X_ROW_KEY)) {
console.log('selectIds.push at line 404:', selectIds.push) selectIds.push(data.id || data._X_ROW_KEY);
console.log("selectIds.push at line 404:", selectIds);
} }
} else { } else {
var data = this.$refs.xTable.getCheckboxRecords(); var data = this.$refs.xTable.getCheckboxRecords();
selectIds = data.map(e => { selectIds = data.map(e => {
return e.id; return e.id || e._X_ROW_KEY;
}); });
console.log("selectIds at line 369:", selectIds); console.log("selectIds at line 369:", selectIds);
} }
console.log("list at line 363:", list);
var list = [...this.tableData]; var list = [...this.tableData];
list.map(e => { list.map(e => {
e.rightWrong = 0; e.rightWrong = 0;
}); });
if (selectIds.length > 0) { if (selectIds.length > 0) {
list.map(e => { list.map(e => {
if (selectIds.includes(e.id)) { if (selectIds.includes(e.id || e._X_ROW_KEY)) {
e.rightWrong = 1; e.rightWrong = 1;
} }
}); });
} }
console.log("list at line 428:", list);
return list; return list;
}, },
@@ -491,6 +501,7 @@ export default {
// console.log('editor ready!', quill) // console.log('editor ready!', quill)
}, },
init(row) { init(row) {
this.tableData = [];
console.log("11111", row); console.log("11111", row);
if (row && row.id) { if (row && row.id) {
this.courseId = row.id; this.courseId = row.id;
@@ -530,21 +541,22 @@ export default {
this.$refs["dataForm"].validate(valid => { this.$refs["dataForm"].validate(valid => {
if (valid) { if (valid) {
var list = this.getRadioEvent1(); var list = this.getRadioEvent1();
if(list.length==0){ if (list.length == 0) {
this.$message.error("请新增答案选项"); this.$message.error("请新增答案选项");
return false return false;
} }
var conditionMet = list.some(e => e.rightWrong == 1); var conditionMet = list.some(e => e.rightWrong == 1);
var conditionContent = list.some(e => e.content == '' ||!e.content); var conditionContent = list.some(e => e.content == "" || !e.content);
console.log("list at line 476:", conditionMet); console.log("list at line 476:", conditionMet);
if (conditionContent) { if (conditionContent) {
this.$message.error("请输入选项"); this.$message.error("请输入选项");
return false; return false;
} if (!conditionMet) { }
if (!conditionMet) {
this.$message.error("请选择正确答案"); this.$message.error("请选择正确答案");
return false; return false;
} }
this.$http({ this.$http({
url: this.$http.adornUrl( url: this.$http.adornUrl(
`${ `${
@@ -678,5 +690,4 @@ export default {
/deep/ .vxe-table--render-default .vxe-cell--radio .vxe-radio--icon { /deep/ .vxe-table--render-default .vxe-cell--radio .vxe-radio--icon {
color: #17b3a3 !important; color: #17b3a3 !important;
} }
</style> </style>