From 6c73245c03c2a3fd249f184f126033a2b3f3e6f9 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Fri, 13 Dec 2024 12:59:20 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0userfullinfoserialize?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/system/serializers.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/apps/system/serializers.py b/apps/system/serializers.py index f522f8ad..c3225709 100755 --- a/apps/system/serializers.py +++ b/apps/system/serializers.py @@ -14,6 +14,7 @@ from django.db import transaction from rest_framework.validators import UniqueValidator from django.conf import settings from django.db.models import Q +from apps.utils.permission import get_user_perms_map # from django_q.models import Task as QTask, Schedule as QSchedule @@ -332,6 +333,23 @@ class UserUpdateSerializer(CustomModelSerializer): return super().update(instance, validated_data) +class UserFullInfoSerializer(CustomModelSerializer): + """ + 用户信息序列化 + """ + perms = serializers.SerializerMethodField() + belong_dept_name = serializers.CharField(source="belong_dept.name", read_only=True) + post_name = serializers.CharField(source="post.name", read_only=True) + + class Meta: + model = User + fields = ['id', 'username', 'type', 'name', 'avatar', 'belong_dept', + 'belong_dept_name', 'post', 'post_name', 'perms', + 'is_superuser', 'wxmp_openid', 'wx_openid'] + + def get_perms(self, obj): + return get_user_perms_map(obj, update_cache=True) + class UserCreateSerializer(CustomModelSerializer): """ 创建用户序列化