2024-05-30 13:39:36 +08:00
|
|
|
from rest_framework import serializers
|
2024-06-12 16:40:51 +08:00
|
|
|
from .models import PrimaryDepartment, SecondaryDepartment, EntityChangeRecord, CompanyBankAccount
|
2024-05-30 13:39:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
class PrimaryDepartmentSerializer(serializers.ModelSerializer):
|
|
|
|
class Meta:
|
|
|
|
model = PrimaryDepartment
|
|
|
|
fields = '__all__'
|
|
|
|
|
|
|
|
|
|
|
|
class SecondaryDepartmentSerializer(serializers.ModelSerializer):
|
|
|
|
class Meta:
|
|
|
|
model = SecondaryDepartment
|
|
|
|
fields = '__all__' # 序列化模型的所有字段
|
2024-06-06 15:08:38 +08:00
|
|
|
|
|
|
|
|
|
|
|
class EntityChangeRecordSerializer(serializers.ModelSerializer):
|
2024-06-19 16:58:27 +08:00
|
|
|
change_date = serializers.DateField(format='%Y-%m-%d')
|
|
|
|
modified_obj = serializers.SerializerMethodField()
|
|
|
|
modified_field_verbose = serializers.SerializerMethodField()
|
|
|
|
|
2024-06-06 15:08:38 +08:00
|
|
|
class Meta:
|
|
|
|
model = EntityChangeRecord
|
2024-06-19 16:58:27 +08:00
|
|
|
fields = ('modified_obj', 'modified_field_verbose', 'content_before_change', 'content_after_change', 'change_date', 'change_executed_by')
|
|
|
|
|
|
|
|
def get_modified_obj(self, obj):
|
|
|
|
company_entity = obj.company_entity
|
|
|
|
return f"{company_entity.company_name}"
|
|
|
|
|
|
|
|
def get_modified_field_verbose(self, obj):
|
|
|
|
# 获取模型类
|
|
|
|
model_class = obj.company_entity._meta.model
|
|
|
|
# 获取字段的 verbose_name
|
|
|
|
field = model_class._meta.get_field(obj.change_type)
|
|
|
|
return field.verbose_name
|
2024-06-12 16:40:51 +08:00
|
|
|
|
|
|
|
|
|
|
|
class CompanyBankAccountSerializer(serializers.ModelSerializer):
|
|
|
|
class Meta:
|
|
|
|
model = CompanyBankAccount
|
|
|
|
fields = '__all__'
|