fix : 修改考试中 试题的备注
This commit is contained in:
parent
38ce78b8ee
commit
a371730008
|
@ -23,7 +23,10 @@
|
|||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.page_size"
|
||||
<pagination v-show="total > 0"
|
||||
:total="total"
|
||||
:page.sync="listQuery.page"
|
||||
:limit.sync="listQuery.page_size"
|
||||
@pagination="getList" />
|
||||
<el-dialog :visible.sync="dialogVisible" :title="dialogType === 'edit' ? '编辑分类' : '新增分类'">
|
||||
<el-form :model="questioncat" label-width="80px" label-position="right" :rules="rule1" ref="commonForm">
|
||||
|
@ -35,6 +38,7 @@
|
|||
<el-button type="danger" @click="dialogVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="confirm('commonForm')">确认</el-button>
|
||||
</div>
|
||||
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -84,21 +88,20 @@ export default {
|
|||
methods: {
|
||||
checkPermission,
|
||||
|
||||
getList(query = this.listQuery) {
|
||||
getList() {
|
||||
this.listLoading = true;
|
||||
getQuestioncatList(query).then(response => {
|
||||
getQuestioncatList(this.listQuery).then(response => {
|
||||
this.tableData = response.data.results;
|
||||
this.total = response.data.count;
|
||||
this.listLoading = false;
|
||||
});
|
||||
},
|
||||
|
||||
resetFilter() {
|
||||
this.search = ""
|
||||
this.listQuery = listQuery
|
||||
this.getList();
|
||||
},
|
||||
handleFilter() {
|
||||
this.listQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
handleAdd() {
|
||||
|
|
|
@ -10,8 +10,17 @@
|
|||
@change="handleFilter">
|
||||
<el-option v-for="item in typeOptions" :key="item.key" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
<el-input v-model="listQuery.search" placeholder="输入题干进行搜索" style="width: 200px;" class="filter-item"
|
||||
<!-- <el-input v-model="listQuery.search" placeholder="备注"
|
||||
clearable
|
||||
style="width: 200px;"
|
||||
class="filter-item"
|
||||
@keyup.enter.native="handleSearch" />
|
||||
-->
|
||||
<el-input v-model="listQuery.search" placeholder="输入题干、备注或创建日期搜索"
|
||||
style="width: 200px;"
|
||||
class="filter-item"
|
||||
clearable
|
||||
@keyup.enter.native="handleSearch" />
|
||||
<el-button class="filter-item" type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button>
|
||||
<el-button class="filter-item" type="primary" icon="el-icon-refresh-left" @click="resetFilter">刷新重置
|
||||
</el-button>
|
||||
|
@ -103,16 +112,17 @@
|
|||
<el-tag v-else type="danger">否</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="真题年份">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.year">{{ scope.row.year }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="创建日期" sortable='custom' prop="create_time">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.create_time }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.year">{{ scope.row.year }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="primary" size="small" @click="handleDetail(scope)" icon="el-icon-more"></el-button>
|
||||
|
@ -122,7 +132,10 @@
|
|||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="listQuery.page" :limit.sync="listQuery.page_size"
|
||||
<pagination v-show="total > 0"
|
||||
:total="total"
|
||||
:page.sync="listQuery.page"
|
||||
:limit.sync="listQuery.page_size"
|
||||
@pagination="getList" />
|
||||
<el-dialog title="题目详情" :visible.sync="dialogVisible" width="30%">
|
||||
<div>{{ question.type }}</div>
|
||||
|
@ -164,7 +177,9 @@ const listQuery = {
|
|||
page: 1,
|
||||
page_size: 20,
|
||||
search: '',
|
||||
questioncat:''
|
||||
questioncat:'',
|
||||
year:'',
|
||||
type:''
|
||||
};
|
||||
export default {
|
||||
components: { Pagination },
|
||||
|
@ -237,8 +252,8 @@ export default {
|
|||
});
|
||||
},
|
||||
getQuestioncatList() {
|
||||
getQuestioncatList().then(response => {
|
||||
this.questioncatData = response.data.results;
|
||||
getQuestioncatList({page:0}).then(response => {
|
||||
this.questioncatData = response.data;
|
||||
});
|
||||
},
|
||||
handleImport(){
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
# Generated by Django 3.2.12 on 2024-06-24 03:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('exam', '0005_alter_paper_questions'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='paper',
|
||||
name='paper_types',
|
||||
field=models.IntegerField(choices=[(10, '押题'), (20, '抽考')], default=10, verbose_name='试卷类型'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,28 @@
|
|||
# Generated by Django 3.2.12 on 2024-08-27 09:31
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('exam', '0005_alter_paper_questions'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='paper',
|
||||
name='category',
|
||||
field=models.ManyToManyField(blank=True, null=True, related_name='paper_category', to='exam.Questioncat', verbose_name='题库分类'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='paper',
|
||||
name='paper_types',
|
||||
field=models.CharField(choices=[('押题', '押题'), ('抽考', '抽考')], default='押题', max_length=50, verbose_name='试卷类型'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='question',
|
||||
name='year',
|
||||
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='真题年份'),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 3.2.12 on 2024-08-27 09:45
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('exam', '0006_auto_20240827_1731'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='question',
|
||||
name='year',
|
||||
field=models.CharField(blank=True, max_length=200, null=True, verbose_name='真题年份和备注'),
|
||||
),
|
||||
]
|
|
@ -40,7 +40,7 @@ class Question(CommonADModel):
|
|||
right = JSONField(verbose_name='正确答案')
|
||||
resolution = models.TextField(verbose_name='解析', blank=True)
|
||||
enabled = models.BooleanField('是否启用', default=False)
|
||||
year = models.IntegerField('真题年份', null=True, blank=True)
|
||||
year = models.CharField(max_length=200, verbose_name='真题年份和备注', null=True, blank=True)
|
||||
|
||||
class Meta:
|
||||
verbose_name = '题目'
|
||||
|
@ -56,7 +56,7 @@ class Paper(CommonAModel):
|
|||
('抽考', '抽考'),
|
||||
)
|
||||
|
||||
paper_types = models.CharField(default='押题', max_length=50,choices=cate_types, verbose_name='试卷类型')
|
||||
paper_types = models.CharField(default='押题', max_length=50, choices=cate_types, verbose_name='试卷类型')
|
||||
name = models.CharField(max_length=200, verbose_name='名称', unique=True)
|
||||
questions = models.ManyToManyField(Question, through='PaperQuestion', null=True, blank=True)
|
||||
limit = models.IntegerField(default=0, verbose_name='限时(分钟)')
|
||||
|
|
|
@ -79,8 +79,9 @@ class QuestionViewSet(CreateUpdateCustomMixin, ModelViewSet):
|
|||
perms_map = {'get': '*', 'post':'question', 'put':'question', 'delete':'question'}
|
||||
queryset = Question.objects.all()
|
||||
serializer_class = QuestionSerializer
|
||||
filterset_fields = ['level', 'type', 'year', 'questioncat']
|
||||
search_fields = ['name', 'options', 'resolution']
|
||||
filterset_fields = ['level', 'type', 'questioncat']
|
||||
search_fields = ['name', 'options', 'resolution', 'create_time', 'year']
|
||||
ordering = ['-create_time']
|
||||
|
||||
def destroy(self, request, *args, **kwargs):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue