Support-BOT

This commit is contained in:
2024-05-01 19:55:22 +03:00
commit 4280385d32
34 changed files with 1361 additions and 0 deletions

2
app/models/__init__.py Normal file
View File

@@ -0,0 +1,2 @@
from .user import User
from .message import Message

19
app/models/message.py Normal file
View File

@@ -0,0 +1,19 @@
from sqlalchemy import Boolean, ForeignKey, Text, BigInteger
from sqlalchemy.orm import mapped_column, relationship
from app.core.db import Base
class Message(Base):
"""Модель сообщений"""
telegram_user_id = mapped_column(BigInteger, ForeignKey(
'user.telegram_id'), nullable=False)
answer_to_user_id = mapped_column(BigInteger, ForeignKey(
'user.telegram_id'), nullable=True)
text = mapped_column(Text, nullable=True)
attachments = mapped_column(Boolean, default=False)
telegram_user = relationship('User', backref='messages', foreign_keys=[
telegram_user_id], lazy='subquery')
answer_to_user = relationship('User', backref='answers', foreign_keys=[
answer_to_user_id])

17
app/models/user.py Normal file
View File

@@ -0,0 +1,17 @@
from sqlalchemy import BigInteger, String, Boolean
from sqlalchemy.orm import mapped_column, relationship
from app.core.db import Base
class User(Base):
"""Модель пользователя телеграм"""
telegram_id = mapped_column(BigInteger, unique=True, nullable=False)
telegram_username = mapped_column(String(100), nullable=True)
is_banned = mapped_column(Boolean, default=False)
first_name = mapped_column(String(100), nullable=True)
last_name = mapped_column(String(100), nullable=True)
is_admin = mapped_column(Boolean, default=False)
# messages = relationship('Message', backref='telegram_user',
# foreign_keys=[telegram_id])