feat: deals viewer mode and links for viewers

This commit is contained in:
2025-07-04 15:12:21 +04:00
parent bd7d9a19d3
commit 0caf1f3f42
19 changed files with 246 additions and 83 deletions

View File

@@ -10,8 +10,10 @@ from external.chat.chat_client import ChatClient
from external.chat.schemas import *
from external.kafka.services.producer_service import ProducerService
from models import Message, Chat, MessageStatus, TgGroup, Client, Card, MessageFile, User
from schemas.auth import UserUnion
from schemas.chat import *
from services.base import BaseService
from utils.auth import verify_user_deal_editor
class ChatService(BaseService):
@@ -163,7 +165,9 @@ class ChatService(BaseService):
return CreateChatResponse(ok=True, message='Чат успешно создан')
async def create_chat(self, request: CreateChatRequest) -> CreateChatResponse:
async def create_chat(self, request: CreateChatRequest, user: UserUnion) -> CreateChatResponse:
verify_user_deal_editor(user, request.card_id)
client: Optional[Client] = await self.session.get(Client, request.client_id)
if not client:
return CreateChatResponse(ok=False, message=f'Клиент с ID {request.client_id} не найден')