Files
api-bashgah/apps/projectcode/services.py
T
2026-06-15 10:57:28 +03:30

24 lines
656 B
Python

from apps.projectcode.models import ProjectCodeHead as ProjectCodeHeadModel, ProjectCode as ProjectCodeModel
from apps.projectcode.task import generate_code
from rest_framework.validators import ValidationError
from django.db import transaction
@transaction.atomic
def create_project_code(title: str, count: int) -> ProjectCodeHeadModel:
try:
project_code_head = ProjectCodeHeadModel.objects.create(
title=title,
count=count
)
generate_code.delay(count=count, project_code_head_id=project_code_head.id)
return project_code_head
except Exception as e:
raise ValidationError(e)