From 51351869613cf6763542504925e1f2d09dbe88c2 Mon Sep 17 00:00:00 2001 From: wangruidong <940853815@qq.com> Date: Thu, 25 Apr 2024 16:12:53 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E7=A4=BE=E5=8C=BA=E7=89=88=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E4=B8=80=E4=BA=9B=E4=B8=9C=E8=A5=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/settings/serializers/public.py | 1 + apps/users/serializers/user.py | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/apps/settings/serializers/public.py b/apps/settings/serializers/public.py index 0925df490..4f94f99bc 100644 --- a/apps/settings/serializers/public.py +++ b/apps/settings/serializers/public.py @@ -42,6 +42,7 @@ class PrivateSettingSerializer(PublicSettingSerializer): AUTH_DINGTALK = serializers.BooleanField() AUTH_FEISHU = serializers.BooleanField() AUTH_LARK = serializers.BooleanField() + AUTH_SLACK = serializers.BooleanField() AUTH_TEMP_TOKEN = serializers.BooleanField() TERMINAL_RAZOR_ENABLED = serializers.BooleanField() diff --git a/apps/users/serializers/user.py b/apps/users/serializers/user.py index 04b71cd62..2a78291dd 100644 --- a/apps/users/serializers/user.py +++ b/apps/users/serializers/user.py @@ -3,6 +3,7 @@ from functools import partial +from django.conf import settings from django.utils.translation import gettext_lazy as _ from rest_framework import serializers @@ -181,7 +182,11 @@ class UserSerializer(RolesSerializerMixin, CommonBulkSerializerMixin, ResourceLa "is_otp_secret_key_bound": {"label": _("Is OTP bound")}, 'mfa_level': {'label': _("MFA level")}, } - + if not settings.XPACK_LICENSE_IS_VALID: + # 社区版去掉企业微信、钉钉、飞书、Lark、Slack + fields = [f for f in fields if f not in ["wecom_id", "dingtalk_id", + "feishu_id", "lark_id", "slack_id"]] + def get_fields(self): fields = super().get_fields() self.pop_fields_if_need(fields) @@ -192,7 +197,7 @@ class UserSerializer(RolesSerializerMixin, CommonBulkSerializerMixin, ResourceLa if not current_org.is_root(): for f in self.Meta.fields_only_root_org: fields.pop(f, None) - + def validate_password(self, password): password_strategy = self.initial_data.get("password_strategy") if self.instance is None and password_strategy != PasswordStrategy.custom: