This commit is contained in:
@@ -20,10 +20,21 @@ class CommissionLogSerializer(serializers.ModelSerializer):
|
||||
}
|
||||
|
||||
class WeChatUserSerializer(serializers.ModelSerializer):
|
||||
is_admin = serializers.SerializerMethodField()
|
||||
has_web_account = serializers.SerializerMethodField()
|
||||
|
||||
class Meta:
|
||||
model = WeChatUser
|
||||
fields = ['id', 'openid', 'nickname', 'avatar_url', 'gender', 'country', 'province', 'city', 'phone_number', 'is_star', 'title', 'skills']
|
||||
read_only_fields = ['id', 'openid', 'phone_number', 'is_star', 'title', 'skills']
|
||||
fields = ['id', 'openid', 'nickname', 'avatar_url', 'gender', 'country', 'province', 'city', 'phone_number', 'is_star', 'title', 'skills', 'is_admin', 'has_web_account']
|
||||
read_only_fields = ['id', 'openid', 'phone_number', 'is_star', 'title', 'skills', 'is_admin', 'has_web_account']
|
||||
|
||||
def get_is_admin(self, obj):
|
||||
# 检查是否关联了系统用户且具有管理员权限
|
||||
return bool(obj.user and obj.user.is_staff)
|
||||
|
||||
def get_has_web_account(self, obj):
|
||||
# 检查是否关联了系统用户(即网页账号)
|
||||
return obj.user is not None
|
||||
|
||||
class DistributorSerializer(serializers.ModelSerializer):
|
||||
user_info = WeChatUserSerializer(source='user', read_only=True)
|
||||
|
||||
Reference in New Issue
Block a user