mirror of
https://github.com/eitchtee/WYGIWYH.git
synced 2026-01-17 06:26:41 +01:00
26 lines
858 B
Python
26 lines
858 B
Python
import logging
|
|
|
|
from django.contrib.auth import get_user_model
|
|
from procrastinate.contrib.django import app
|
|
|
|
from apps.common.middleware.thread_local import write_current_user, delete_current_user
|
|
from apps.import_app.models import ImportRun
|
|
from apps.import_app.services import ImportServiceV1
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
@app.task(name="process_import")
|
|
def process_import(import_run_id: int, file_path: str, user_id: int):
|
|
user = get_user_model().objects.get(id=user_id)
|
|
write_current_user(user)
|
|
|
|
try:
|
|
import_run = ImportRun.objects.get(id=import_run_id)
|
|
import_service = ImportServiceV1(import_run)
|
|
import_service.process_file(file_path)
|
|
delete_current_user()
|
|
except ImportRun.DoesNotExist:
|
|
delete_current_user()
|
|
raise ValueError(f"ImportRun with id {import_run_id} not found")
|