Compare commits

..

No commits in common. "6c28df7617c46c9a3b0a4e2d72513ac395197b94" and "2b7ad0c72438f3421d1fc4ec5b8c583ecfe56969" have entirely different histories.

4 changed files with 6 additions and 51 deletions

View File

@ -95,7 +95,7 @@ def start_task(task_id: int):
add_to_group_task.delay(task_id=task_id)
case 'parse':
parse_users_task.run(task_id=task_id)
parse_users_task.apply(task_id=task_id)
delete_task(task_id)
return '', 204

View File

@ -1,11 +1,10 @@
import datetime
import time
from celery import shared_task
import asyncio
from telethon.tl.types import UserStatusOnline, UserStatusOffline
from app.models.session import Session
from app.models.user import User
from paper.parser import PaperParser
from app.models.task import Task
from app.extensions import db
@ -55,17 +54,7 @@ def parse_users_task(self, task_id: int):
)
for user in users:
if not user.username and user.bot:
continue
is_active = False
if isinstance(user.status, UserStatusOffline):
is_active = user.status.was_online + datetime.timedelta(day=5) >= datetime.now()
if isinstance(user.status, UserStatusOnline):
is_active = True
if not is_active:
if not user.username:
continue
if not User.exist(user.username, collection):

View File

@ -12,8 +12,8 @@ class User(db.Model):
first_name: Mapped[str] = mapped_column(nullable=True)
last_name: Mapped[str] = mapped_column(nullable=True)
phone: Mapped[str] = mapped_column(nullable=True)
username: Mapped[str] = mapped_column(nullable=True)
phone: Mapped[str] = mapped_column(nullable=True, unique=True)
username: Mapped[str] = mapped_column(nullable=True, unique=True)
collection_id = Column(Integer, ForeignKey("collection.id"))
collection: Mapped["Collection"] = relationship("Collection", back_populates="users")

View File

@ -1,34 +0,0 @@
"""phone and username not unique
Revision ID: 11ed77b4dbe8
Revises: d573f6529ad5
Create Date: 2024-03-09 22:59:14.088171
"""
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = '11ed77b4dbe8'
down_revision = 'd573f6529ad5'
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
with op.batch_alter_table('user', schema=None) as batch_op:
batch_op.drop_constraint('user_phone_key', type_='unique')
batch_op.drop_constraint('user_username_key', type_='unique')
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
with op.batch_alter_table('user', schema=None) as batch_op:
batch_op.create_unique_constraint('user_username_key', ['username'])
batch_op.create_unique_constraint('user_phone_key', ['phone'])
# ### end Alembic commands ###