fix: edu/model 、serializers、view 删减参与部门
This commit is contained in:
parent
423eca445e
commit
5f4884e83d
|
@ -19,7 +19,6 @@ class Train(CommonADModel):
|
||||||
duration = models.PositiveIntegerField(verbose_name='时长', default=0, help_text='单位:s', editable=False)
|
duration = models.PositiveIntegerField(verbose_name='时长', default=0, help_text='单位:s', editable=False)
|
||||||
description = models.TextField(verbose_name='内容描述', default='', blank=True)
|
description = models.TextField(verbose_name='内容描述', default='', blank=True)
|
||||||
is_public = models.BooleanField('是否公开', default=False)
|
is_public = models.BooleanField('是否公开', default=False)
|
||||||
attend_departs = models.ManyToManyField(Dept, verbose_name='参与部门', blank=True)
|
|
||||||
files = models.ManyToManyField(File, verbose_name='附件', blank=True)
|
files = models.ManyToManyField(File, verbose_name='附件', blank=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -185,7 +185,7 @@ class ExamRecordSubmitSerializer(serializers.ModelSerializer):
|
||||||
model = ExamRecord
|
model = ExamRecord
|
||||||
fields = ['detail']
|
fields = ['detail']
|
||||||
|
|
||||||
class ExamTrainingSerializer(CustomModelSerializer):
|
class TrainingSerializer(CustomModelSerializer):
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Train
|
model = Train
|
||||||
|
|
|
@ -5,10 +5,10 @@ from rest_framework.exceptions import ParseError
|
||||||
from rest_framework.decorators import action
|
from rest_framework.decorators import action
|
||||||
from rest_framework.serializers import Serializer
|
from rest_framework.serializers import Serializer
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
from .models import Questioncat, Question, Paper, PaperQuestion, Exam, ExamRecord, AnswerDetail
|
from .models import Questioncat, Question, Paper, PaperQuestion, Exam, ExamRecord, AnswerDetail, Train
|
||||||
from .serializers import (QuestioncatSerializer, QuestionSerializer, ExamSerializer,
|
from .serializers import (QuestioncatSerializer, QuestionSerializer, ExamSerializer,
|
||||||
ExamRecordInitSerizlier, ExamRecordSerializer, ExamRecordDetailSerializer, ExamRecordSubmitSerializer,
|
ExamRecordInitSerizlier, ExamRecordSerializer, ExamRecordDetailSerializer, ExamRecordSubmitSerializer,
|
||||||
PaperSerializer, PaperListSerializer, PaperPatchSerializer, ExamDetailSerializer)
|
PaperSerializer, PaperListSerializer, PaperPatchSerializer, ExamDetailSerializer, TrainingSerializer)
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.permissions import IsAuthenticated
|
from rest_framework.permissions import IsAuthenticated
|
||||||
|
@ -194,4 +194,22 @@ class ExamRecordViewSet(ListModelMixin, DestroyModelMixin, RetrieveModelMixin, C
|
||||||
er.end_time = now
|
er.end_time = now
|
||||||
er.is_submited = True
|
er.is_submited = True
|
||||||
er.save()
|
er.save()
|
||||||
return Response(ExamRecordSerializer(er).data)
|
return Response(ExamRecordSerializer(er).data)
|
||||||
|
|
||||||
|
|
||||||
|
class TrainRecordViewSet(ListModelMixin, DestroyModelMixin, RetrieveModelMixin, CustomGenericViewSet):
|
||||||
|
'''
|
||||||
|
培训记录
|
||||||
|
'''
|
||||||
|
perms_map = {"get": "*", "delete": "train.delete"}
|
||||||
|
queryset = Train.objects.all()
|
||||||
|
serializer_class = TrainingSerializer
|
||||||
|
search_fields = ('create_by__name', 'create_by__username', 'name')
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
qs = super().get_queryset()
|
||||||
|
if has_perm(self.request.user, ["train.view"]):
|
||||||
|
return qs
|
||||||
|
return qs.filter(create_by=self.request.user)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue