From 679951d753f5cbc9e924eba3169b6ba4bbaae8d9 Mon Sep 17 00:00:00 2001 From: user Date: Fri, 5 Apr 2024 11:33:25 +0300 Subject: [PATCH] dev@locazia: add user_action --- app/core/models/__init__.py | 2 +- app/core/models/content/user_content.py | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/app/core/models/__init__.py b/app/core/models/__init__.py index a067118..6276ce2 100644 --- a/app/core/models/__init__.py +++ b/app/core/models/__init__.py @@ -7,6 +7,6 @@ from app.core.models.user import User from app.core.models.wallet_connection import WalletConnection from app.core.models.messages import KnownTelegramMessage from app.core.models.user_activity import UserActivity -from app.core.models.content.user_content import UserContent +from app.core.models.content.user_content import UserContent, UserAction from app.core.models._config import ServiceConfigValue from app.core.models.asset import Asset diff --git a/app/core/models/content/user_content.py b/app/core/models/content/user_content.py index eedfdb3..2a5413a 100644 --- a/app/core/models/content/user_content.py +++ b/app/core/models/content/user_content.py @@ -27,3 +27,22 @@ class UserContent(AlchemyBase, UserContentIndexationMixin): user = relationship('User', uselist=False, foreign_keys=[user_id]) wallet_connection = relationship('WalletConnection', uselist=False, foreign_keys=[wallet_connection_id]) content = relationship('StoredContent', uselist=False, foreign_keys=[content_id]) + +class UserAction(AlchemyBase): + __tablename__ = 'users_actions' + + id = Column(Integer, autoincrement=True, primary_key=True) + type = Column(String(128), nullable=False) # 'purchase' + user_id = Column(Integer, ForeignKey('users.id'), nullable=False) + content_id = Column(Integer, ForeignKey('node_storage.id'), nullable=True) + telegram_message_id = Column(BigInteger, nullable=True) + + to_address = Column(String(1024), nullable=True) + from_address = Column(String(1024), nullable=True) + status = Column(String(128), nullable=True) + meta = Column(JSON, nullable=False, default={}) + created = Column(DateTime, nullable=False, default=0) + + user = relationship('User', uselist=False, foreign_keys=[user_id]) + content = relationship('StoredContent', uselist=False, foreign_keys=[content_id] +