diff --git a/apps/locales/zh_CN/LC_MESSAGES/django.po b/apps/locales/zh_CN/LC_MESSAGES/django.po index 68b41992b..bbdd7fc3f 100644 --- a/apps/locales/zh_CN/LC_MESSAGES/django.po +++ b/apps/locales/zh_CN/LC_MESSAGES/django.po @@ -3691,7 +3691,7 @@ msgstr "获取工作空间下用户列表" #: users/views/user.py:87 users/views/user.py:88 users/views/user.py:89 msgid "Create user" -msgstr "创建者" +msgstr "创建用户" #: users/views/user.py:101 users/views/user.py:102 users/views/user.py:103 msgid "Get default password" diff --git a/apps/users/api/user.py b/apps/users/api/user.py index bd5da3a6b..fb5c8a0c5 100644 --- a/apps/users/api/user.py +++ b/apps/users/api/user.py @@ -22,6 +22,19 @@ class ApiUserProfileResponse(ResultSerializer): return UserProfileResponse() +class RoleSettingRequestSerializer(serializers.Serializer): + role_id = serializers.CharField(required=True, label=_('Role ID')) + workspace_ids = serializers.ListField( + child=serializers.CharField(required=True), + required=True, + label=_('Workspace IDs') + ) + + +class CreateUserRequestSerializer(CreateUserSerializer): + role_setting = RoleSettingRequestSerializer(required=False, label=_('Role Setting'), allow_null=True, many=True) + + class UserProfileAPI(APIMixin): @staticmethod @@ -30,7 +43,7 @@ class UserProfileAPI(APIMixin): @staticmethod def get_request(): - return CreateUserSerializer + return CreateUserRequestSerializer @staticmethod def get_parameters(): @@ -85,6 +98,10 @@ class PasswordResponse(ResultSerializer): return Password() +class EditUserRequestSerializer(UserManageSerializer.UserEditInstance): + role_setting = RoleSettingRequestSerializer(required=False, label=_('Role Setting'), allow_null=True, many=True) + + class EditUserApi(APIMixin): @staticmethod def get_parameters(): @@ -98,7 +115,7 @@ class EditUserApi(APIMixin): @staticmethod def get_request(): - return UserManageSerializer.UserEditInstance + return EditUserRequestSerializer class DeleteUserApi(APIMixin):