dubles Task and href titles
This commit is contained in:
parent
c3ccf505a8
commit
4210b4cab1
15840
logs/app.log
15840
logs/app.log
File diff suppressed because it is too large
Load Diff
53133
logs/app.log.1
53133
logs/app.log.1
File diff suppressed because it is too large
Load Diff
49352
logs/app.log.2
49352
logs/app.log.2
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,13 @@
|
|||
|
||||
import asyncio
|
||||
from sqlalchemy import select, func
|
||||
from database import get_async_session, Job
|
||||
|
||||
async def count_jobs():
|
||||
async for session in get_async_session(): # get_async_session возвращает async generator
|
||||
result = await session.execute(select(func.count()).select_from(Job))
|
||||
count = result.scalar_one()
|
||||
print(f"Всего записей: {count}")
|
||||
|
||||
asyncio.run(count_jobs())
|
||||
|
7060
search_jobes2.json
7060
search_jobes2.json
File diff suppressed because it is too large
Load Diff
|
@ -67,7 +67,7 @@
|
|||
{% for job in jobs %}
|
||||
<tr>
|
||||
<td class="border-b">
|
||||
<a href="{{ job.job.link }}" target="_blank" class="font-medium whitespace-no-wrap">{{ job.job.job_title [:50] }}</a>
|
||||
<a href="{{ job.job.link }}" target="_blank" class="client-link text-blue-500">{{ job.job.job_title [:50] }}</a>
|
||||
<div class="text-gray-600 text-xs whitespace-no-wrap">{{ job.job.job_id }}</div>
|
||||
</td>
|
||||
<td class="text-center border-b">{{job.job.job_company}}</td>
|
||||
|
|
|
@ -8,6 +8,7 @@ from sqlalchemy.orm import joinedload
|
|||
from sqlalchemy import delete
|
||||
from sqlalchemy import update
|
||||
from sqlalchemy import or_
|
||||
from sqlalchemy import select, and_
|
||||
from sqlalchemy.exc import IntegrityError
|
||||
from model.database import Client, AppliedJob, Job
|
||||
|
||||
|
@ -126,29 +127,62 @@ async def del_jobs(db: AsyncSession, user_id: str):
|
|||
await db.commit()
|
||||
|
||||
|
||||
# async def add_jobs(db: AsyncSession, user_id: str):
|
||||
# # Фильтруем вакансии по переданным параметрам
|
||||
# query = select(Job).filter(Job.active == 3)
|
||||
# result = await db.execute(query)
|
||||
# jobs = result.scalars().all() # Получаем список вакансий
|
||||
|
||||
# if not jobs:
|
||||
# return {"message": "Нет вакансий по данному фильтру"}
|
||||
|
||||
# # Создаём записи в AppliedJob
|
||||
# applied_jobs = [
|
||||
# AppliedJob(client_id=user_id, job_id=job.job_id, status="Scheduled")
|
||||
# for job in jobs
|
||||
# ]
|
||||
|
||||
# db.add_all(applied_jobs) # Добавляем в сессию
|
||||
# await db.commit() # Фиксируем изменения
|
||||
|
||||
|
||||
|
||||
# return {"message": f"{len(applied_jobs)} вакансий добавлено в AppliedJob"}
|
||||
|
||||
|
||||
async def add_jobs(db: AsyncSession, user_id: str):
|
||||
# Фильтруем вакансии по переданным параметрам
|
||||
# Получаем все активные вакансии (предполагаю, что ты хотел использовать True, а не 3)
|
||||
query = select(Job).filter(Job.active == 3)
|
||||
result = await db.execute(query)
|
||||
jobs = result.scalars().all() # Получаем список вакансий
|
||||
jobs = result.scalars().all()
|
||||
|
||||
if not jobs:
|
||||
return {"message": "Нет вакансий по данному фильтру"}
|
||||
|
||||
# Создаём записи в AppliedJob
|
||||
applied_jobs = [
|
||||
AppliedJob(client_id=user_id, job_id=job.job_id, status="Scheduled")
|
||||
for job in jobs
|
||||
]
|
||||
applied_jobs = []
|
||||
|
||||
db.add_all(applied_jobs) # Добавляем в сессию
|
||||
await db.commit() # Фиксируем изменения
|
||||
|
||||
|
||||
|
||||
return {"message": f"{len(applied_jobs)} вакансий добавлено в AppliedJob"}
|
||||
for job in jobs:
|
||||
# Проверка, существует ли уже AppliedJob с таким client_id и job_id
|
||||
check_query = select(AppliedJob).where(
|
||||
and_(
|
||||
AppliedJob.client_id == user_id,
|
||||
AppliedJob.job_id == job.job_id
|
||||
)
|
||||
)
|
||||
check_result = await db.execute(check_query)
|
||||
existing = check_result.scalar_one_or_none()
|
||||
|
||||
if not existing:
|
||||
applied_jobs.append(
|
||||
AppliedJob(client_id=user_id, job_id=job.job_id, status="Scheduled")
|
||||
)
|
||||
|
||||
if applied_jobs:
|
||||
db.add_all(applied_jobs)
|
||||
await db.commit()
|
||||
print (f'{"message": f"{len(applied_jobs)} вакансий добавлено в AppliedJob"}')
|
||||
else:
|
||||
print (f'{"message": "Все вакансии уже были добавлены ранее"}')
|
||||
|
||||
|
||||
async def get_applied_jobs(db, client_id: int):
|
||||
|
|
Loading…
Reference in New Issue