factory/apps/srm/serializers.py

64 lines
2.7 KiB
Python

from .models import PatentInfo, Papersecret, PatentRecord, PaperRecord, Platform, Platstanding
from apps.utils.serializers import CustomModelSerializer
from rest_framework import serializers
from django.db import transaction
from rest_framework.exceptions import ParseError
from apps.utils.constants import EXCLUDE_FIELDS
from apps.wf.serializers import TicketSimpleSerializer
class PatentInfoSerializer(CustomModelSerializer):
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True)
ticket_ = TicketSimpleSerializer(source='ticket', read_only=True)
class Meta:
model = PatentInfo
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS
class PaperSeSerializer(CustomModelSerializer):
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True)
ticket_ = TicketSimpleSerializer(source='ticket', read_only=True)
class Meta:
model = Papersecret
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS
class PatentRecordSerializer(CustomModelSerializer):
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True)
patent_name = serializers.CharField(source='patent.name', read_only=True, label="专利名称")
class Meta:
model = PatentRecord
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS
class PaperRecordSerializer(CustomModelSerializer):
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
belong_dept_name = serializers.CharField(source='belong_dept.name', read_only=True)
paper_name = serializers.CharField(source='paper.paper_name', read_only=True, label="论文名称")
class Meta:
model = PaperRecord
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS
class PlatformSerializer(CustomModelSerializer):
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
ticket_ = TicketSimpleSerializer(source='ticket', read_only=True)
class Meta:
model = Platform
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS
class PlatstandingSerializer(CustomModelSerializer):
platinfo_ = PlatformSerializer(source='platinfo', read_only=True)
plat_name = serializers.CharField(source='platinfo.name', read_only=True, label="平台名称")
create_by_name = serializers.CharField(source='create_by.name', read_only=True)
class Meta:
model = Platstanding
fields = '__all__'
read_only_fields = EXCLUDE_FIELDS