2026-03-24 20:10:48 +03:30
|
|
|
from rest_framework import serializers
|
|
|
|
|
|
|
|
|
|
from drf_spectacular.utils import inline_serializer
|
|
|
|
|
|
|
|
|
|
|
2026-03-25 16:19:28 +03:30
|
|
|
class AuthTokenSerializer(serializers.Serializer):
|
|
|
|
|
token = serializers.CharField()
|
2026-03-24 20:10:48 +03:30
|
|
|
|
|
|
|
|
|
|
|
|
|
def code_response(name, data=None, token=False, extra_fields=None):
|
|
|
|
|
fields = {
|
|
|
|
|
"code": serializers.IntegerField(),
|
|
|
|
|
"msg": serializers.CharField(),
|
|
|
|
|
}
|
|
|
|
|
if data is not None:
|
|
|
|
|
fields["data"] = data
|
|
|
|
|
if token:
|
2026-03-25 16:19:28 +03:30
|
|
|
fields["token"] = serializers.CharField()
|
2026-03-24 20:10:48 +03:30
|
|
|
if extra_fields:
|
|
|
|
|
fields.update(extra_fields)
|
|
|
|
|
return inline_serializer(name=name, fields=fields)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def status_response(name, data=None):
|
|
|
|
|
fields = {
|
|
|
|
|
"status": serializers.CharField(default="success"),
|
|
|
|
|
}
|
|
|
|
|
if data is not None:
|
|
|
|
|
fields["data"] = data
|
|
|
|
|
return inline_serializer(name=name, fields=fields)
|