Merge branch 'master' of https://e.coding.net/ctcdevteam/examtest
This commit is contained in:
commit
ab5472bda3
|
@ -70,6 +70,12 @@
|
|||
<el-table-column align="left" label="所属考试">
|
||||
<template slot-scope="scope">{{ scope.row.exam_name }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="left" label="是否通过" sortable='custom' prop="is_pass">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.is_pass" type="success">是</el-tag>
|
||||
<el-tag v-else type="danger">否</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="left" label="得分" sortable='custom' prop="score">
|
||||
<template slot-scope="scope">{{ scope.row.score }}</template>
|
||||
</el-table-column>
|
||||
|
|
|
@ -19,7 +19,7 @@ function request(url, method, data) {
|
|||
}
|
||||
else {
|
||||
var msg = '请求错误'
|
||||
if(res.data.msg){
|
||||
if(res.data.msg && typeof(res.data.msg) == "string"){
|
||||
msg = res.data.msg
|
||||
}
|
||||
if (msg.indexOf('该操作的权限')!=-1){
|
||||
|
|
|
@ -551,7 +551,7 @@ class ExamTestViewSet(PageOrNot, ModelViewSet):
|
|||
@transaction.atomic
|
||||
def create(self, request, *args, **kwargs):
|
||||
serializer = MoniTestSerializer(data = request.data)
|
||||
if serializer.is_valid():
|
||||
serializer.is_valid(raise_exception=True)
|
||||
instance = serializer.save(consumer = request.user)
|
||||
if 'questions' in request.data:
|
||||
questions = []
|
||||
|
@ -565,7 +565,7 @@ class ExamTestViewSet(PageOrNot, ModelViewSet):
|
|||
question['is_right'] = i['is_right']
|
||||
questions.append(question)
|
||||
serializer_detail = AnswerDetailCreateSerializer(data=questions, many=True)
|
||||
if serializer_detail.is_valid():
|
||||
serializer_detail.is_valid(raise_exception=True)
|
||||
serializer_detail.save()
|
||||
# 关联正式考试如有
|
||||
if request.data.get('exam', None):
|
||||
|
@ -576,13 +576,7 @@ class ExamTestViewSet(PageOrNot, ModelViewSet):
|
|||
if exam.auto_issue and instance.is_pass:
|
||||
issue(instance)
|
||||
return Response(MoniTestSerializer(instance).data,status=status.HTTP_200_OK)
|
||||
else:
|
||||
return Response(serializer_detail.errors)
|
||||
|
||||
else:
|
||||
return Response({'error':'答题记录不存在'})
|
||||
else:
|
||||
return Response(serializer.errors)
|
||||
raise ParseError('答题记录不存在')
|
||||
|
||||
@action(methods=['get'], detail=False,
|
||||
url_path='export', url_name='export_test', perms_map=[{'*':'export_test'}])
|
||||
|
@ -645,6 +639,7 @@ class PaperViewSet(PageOrNot, ModelViewSet):
|
|||
instance = serializer.save()
|
||||
if 'questions' in data:
|
||||
questions = []
|
||||
Question.objects.get_queryset(all=True).filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False)
|
||||
for i in data['questions']:
|
||||
question = {}
|
||||
question['question'] = i['id']
|
||||
|
@ -669,6 +664,7 @@ class PaperViewSet(PageOrNot, ModelViewSet):
|
|||
self.perform_update(serializer)
|
||||
if 'questions' in data:
|
||||
questions = []
|
||||
Question.objects.get_queryset(all=True).filter(is_delete=True, id__in=[i['id'] for i in data['questions']]).update(is_delete=False)
|
||||
for i in data['questions']:
|
||||
question = {}
|
||||
question['question'] = i['id']
|
||||
|
|
|
@ -32,14 +32,15 @@ class SoftDeletableManagerMixin(object):
|
|||
"""
|
||||
_queryset_class = SoftDeletableQuerySet
|
||||
|
||||
def get_queryset(self):
|
||||
def get_queryset(self, all=False):
|
||||
"""
|
||||
Return queryset limited to not deleted entries.
|
||||
"""
|
||||
kwargs = {'model': self.model, 'using': self._db}
|
||||
if hasattr(self, '_hints'):
|
||||
kwargs['hints'] = self._hints
|
||||
|
||||
if all:
|
||||
return self._queryset_class(**kwargs)
|
||||
return self._queryset_class(**kwargs).filter(is_delete=False)
|
||||
|
||||
|
||||
|
|
|
@ -50,6 +50,8 @@ class FitJSONRenderer(JSONRenderer):
|
|||
data = data[list(data.keys())[0]]
|
||||
if isinstance(data, list):
|
||||
data = data[0]
|
||||
if not isinstance(data, str):
|
||||
data = '请求错误'
|
||||
response_body.msg = data
|
||||
elif data and 'error' in data and data['error']:# 自传异常,key为error
|
||||
response_body.code = data.get("code",400)
|
||||
|
|
Loading…
Reference in New Issue