user ariza uchun requesty yaratish uchun api chiqarildi
This commit is contained in:
27
core/apps/evaluation/signals/request.py
Normal file
27
core/apps/evaluation/signals/request.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from django.db.models.signals import pre_save
|
||||
from django.dispatch import receiver
|
||||
|
||||
from core.apps.evaluation.choices.request import RequestStatus
|
||||
from core.apps.evaluation.models import EvaluationrequestModel
|
||||
|
||||
|
||||
@receiver(pre_save, sender=EvaluationrequestModel)
|
||||
def create_evaluation_on_approve(sender, instance, **kwargs):
|
||||
if not instance.pk:
|
||||
return
|
||||
|
||||
try:
|
||||
old = EvaluationrequestModel.objects.get(pk=instance.pk)
|
||||
except EvaluationrequestModel.DoesNotExist:
|
||||
return
|
||||
|
||||
if old.status != RequestStatus.COMPLETED and instance.status == RequestStatus.COMPLETED:
|
||||
from core.apps.evaluation.models import AutoEvaluationModel
|
||||
|
||||
if instance.rate_type == "auto" and not hasattr(instance, "_evaluation_created"):
|
||||
AutoEvaluationModel.objects.create(
|
||||
object_type=instance.object_type or "",
|
||||
tex_passport_serie_num=instance.tex_passport or "",
|
||||
rating_goal=instance.rate_goal or "",
|
||||
)
|
||||
instance._evaluation_created = True
|
||||
Reference in New Issue
Block a user