ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: суточные квоты Voice Tasker по workspace и контурам

This commit is contained in:
DCCONSTRUCTIONS
2026-04-28 14:39:39 +03:00
parent a0c0db27f3
commit a0213db2fc
7 changed files with 309 additions and 64 deletions
@@ -33,6 +33,9 @@ class WorkspaceAISettingsSerializer(BaseSerializer):
"max_audio_duration_seconds",
"per_user_hourly_limit",
"workspace_hourly_limit",
"per_user_daily_limit",
"workspace_daily_limit",
"project_daily_limit",
"credential",
"openai_api_key",
"created_at",
@@ -105,6 +108,21 @@ class WorkspaceAISettingsSerializer(BaseSerializer):
raise serializers.ValidationError("Workspace hourly limit must be between 1 and 10000.")
return value
def validate_per_user_daily_limit(self, value):
if value < 1 or value > 10000:
raise serializers.ValidationError("Per-user daily limit must be between 1 and 10000.")
return value
def validate_workspace_daily_limit(self, value):
if value < 1 or value > 100000:
raise serializers.ValidationError("Workspace daily limit must be between 1 and 100000.")
return value
def validate_project_daily_limit(self, value):
if value < 1 or value > 50000:
raise serializers.ValidationError("Project daily limit must be between 1 and 50000.")
return value
def update(self, instance, validated_data):
api_key = validated_data.pop("openai_api_key", None)
default_project_id = validated_data.pop("default_project_id", serializers.empty)