From 88a25232d841229ed39fa980db1baf0936fd9236 Mon Sep 17 00:00:00 2001 From: zty Date: Thu, 6 Jun 2024 10:27:04 +0800 Subject: [PATCH] =?UTF-8?q?fix:edu=20=E5=A2=9E=E5=8A=A0=E7=94=A8=E6=88=B7I?= =?UTF-8?q?D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../0009_alter_certificate_用户id.py | 21 +++++++++++++++++++ server/apps/edu/models.py | 4 ++-- server/apps/exam/views.py | 4 +++- .../0050_alter_qualification_change_date.py | 20 ++++++++++++++++++ 4 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 server/apps/edu/migrations/0009_alter_certificate_用户id.py create mode 100644 server/apps/information/migrations/0050_alter_qualification_change_date.py diff --git a/server/apps/edu/migrations/0009_alter_certificate_用户id.py b/server/apps/edu/migrations/0009_alter_certificate_用户id.py new file mode 100644 index 0000000..0424bf8 --- /dev/null +++ b/server/apps/edu/migrations/0009_alter_certificate_用户id.py @@ -0,0 +1,21 @@ +# Generated by Django 3.2.12 on 2024-06-06 02:26 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('edu', '0008_certificate_用户id'), + ] + + operations = [ + migrations.AlterField( + model_name='certificate', + name='用户ID', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/server/apps/edu/models.py b/server/apps/edu/models.py index ac25761..adbf6d2 100644 --- a/server/apps/edu/models.py +++ b/server/apps/edu/models.py @@ -26,8 +26,8 @@ class Certificate(CommonADModel): 是否需要北京标研培训合格 = models.BooleanField(default=False) 课程列表 = models.ManyToManyField(Course, blank=True) 培训日期 = models.DateField(null=True, blank=True) - 培训结束日期 = models.DateField(null=True, blank=True) + 培训结束日期 = models.DateField(null=True, blank=True) 发证日期 = models.DateField(null=True, blank=True) 证书地址 = models.CharField(max_length=100, null=True, blank=True) - 用户ID = models.IntegerField(null=True, blank=True, max_length=32) + 用户ID = models.ForeignKey(null=True, blank=True, to='system.User', on_delete=models.CASCADE) examrecord = models.OneToOneField('exam.ExamRecord', on_delete=models.CASCADE, null=True, blank=True, related_name='cert_er') diff --git a/server/apps/exam/views.py b/server/apps/exam/views.py index 4e835c3..f425400 100644 --- a/server/apps/exam/views.py +++ b/server/apps/exam/views.py @@ -557,7 +557,9 @@ class ExamRecordViewSet(ListModelMixin, DestroyModelMixin, RetrieveModelMixin, G def get_serializer_class(self): if self.action == 'retrieve': - return ExamRecordDetailSerializer + now = timezone.now() + if now > self.get_object().exam.end_time: + return ExamRecordDetailSerializer return super().get_serializer_class() def perform_destroy(self, instance): # 考试记录物理删除 diff --git a/server/apps/information/migrations/0050_alter_qualification_change_date.py b/server/apps/information/migrations/0050_alter_qualification_change_date.py new file mode 100644 index 0000000..e2122ab --- /dev/null +++ b/server/apps/information/migrations/0050_alter_qualification_change_date.py @@ -0,0 +1,20 @@ +# Generated by Django 3.2.12 on 2024-06-06 02:26 + +import datetime +from django.db import migrations, models +from django.utils.timezone import utc + + +class Migration(migrations.Migration): + + dependencies = [ + ('information', '0049_alter_qualification_change_date'), + ] + + operations = [ + migrations.AlterField( + model_name='qualification', + name='change_date', + field=models.DateField(blank=True, default=datetime.datetime(2024, 6, 6, 2, 26, 43, 23224, tzinfo=utc), null=True, verbose_name='变更日期'), + ), + ]