diff --git a/server/apps/edu/views.py b/server/apps/edu/views.py index 9c53baa..7956210 100644 --- a/server/apps/edu/views.py +++ b/server/apps/edu/views.py @@ -20,7 +20,6 @@ class CertificateViewSet(CreateUpdateCustomMixin, ModelViewSet): 'put': 'certificate', 'delete': 'certificate'} queryset = Certificate.objects.all() serializer_class = CertificateSerializer - pagination_class = None search_fields = ['姓名', '证书编号', '所属单位'] filterset_fields = ['是否内审员','是否授权签字人', '是否质量负责人', '是否最高管理者', '姓名', '证书编号', '所属单位', '单位名称'] ordering = ['-create_time'] @@ -35,21 +34,24 @@ class CertificateViewSet(CreateUpdateCustomMixin, ModelViewSet): return [AllowAny()] return super().get_permissions() + def make_img_x(self, instance): + titles = [] + if instance.是否内审员: + titles.append('内审员') + if instance.是否授权签字人: + titles.append('授权签字人') + if instance.是否质量负责人: + titles.append('质量负责人') + if instance.是否最高管理者: + titles.append('最高管理者') + instance.证书地址 = make_img(instance.证书编号, instance.姓名, '、'.join(titles)) + instance.save() + def retrieve(self, request, *args, **kwargs): regen_img = request.query_params.get('regen_img', False) instance = self.get_object() if not instance.证书地址 or regen_img: - titles = [] - if instance.是否内审员: - titles.append('内审员') - if instance.是否授权签字人: - titles.append('授权签字人') - if instance.是否质量负责人: - titles.append('质量负责人') - if instance.是否最高管理者: - titles.append('最高管理者') - instance.证书地址 = make_img(instance.证书编号, instance.姓名, '、'.join(titles)) - instance.save() + self.make_img_x(instance) serializer = self.get_serializer(instance) return Response(serializer.data) @@ -86,9 +88,5 @@ class CertificateViewSet(CreateUpdateCustomMixin, ModelViewSet): data = {} data = self.make_data(data, sheet, i) obj, created = Certificate.objects.update_or_create(defaults=data, 证书编号=data['证书编号']) - # if created: - # print(f'已创建证书-{data["姓名"]}-{data["证书编号"]}') - # else: - # print(f'已更新证书-{data["姓名"]}-{data["证书编号"]}') i = i + 1 - return Response() \ No newline at end of file + return Response()