sbt-idp/cope2n-api/fwd_api/models/SubscriptionRequest.py

36 lines
1.8 KiB
Python
Raw Normal View History

2023-11-30 11:19:06 +00:00
from django.db import models
from django.utils import timezone
from fwd_api.models.Subscription import Subscription
class SubscriptionRequest(models.Model):
id = models.AutoField(primary_key=True)
pages: int = models.IntegerField()
2023-12-08 12:49:00 +00:00
pages_left: int = models.IntegerField(default=1)
2023-11-30 11:19:06 +00:00
doc_type: str = models.CharField(max_length=100)
request_id = models.CharField(max_length=200) # Change to request_id
2024-01-11 10:38:12 +00:00
redemption_id = models.CharField(max_length=200, null=True)
2023-11-30 11:19:06 +00:00
process_type = models.CharField(max_length=200) # driver/id/invoice
provider_code = models.CharField(max_length=200, default="Guest") # Request source FWD/CTel
predict_result = models.JSONField(null=True)
2023-12-08 12:49:00 +00:00
feedback_result = models.JSONField(null=True)
2024-01-05 07:18:16 +00:00
reviewed_result = models.JSONField(null=True)
2023-11-30 11:19:06 +00:00
status = models.IntegerField() # 1: Processing(Pending) 2: PredictCompleted 3: ReturnCompleted
subscription = models.ForeignKey(Subscription, on_delete=models.CASCADE)
2023-12-15 05:43:19 +00:00
created_at = models.DateTimeField(default=timezone.now, db_index=True)
2023-12-25 03:32:09 +00:00
updated_at = models.DateTimeField(auto_now=True)
2023-12-21 10:31:55 +00:00
is_test_request = models.BooleanField(default=False)
2023-12-25 03:32:09 +00:00
S3_uploaded = models.BooleanField(default=False)
2023-12-21 10:31:55 +00:00
ai_inference_profile = models.JSONField(null=True)
2023-12-21 10:31:55 +00:00
preprocessing_time = models.FloatField(default=-1)
2024-01-05 07:18:16 +00:00
client_request_time = models.FloatField(default=-1)
2023-12-22 07:03:56 +00:00
ai_inference_start_time = models.FloatField(default=0)
ai_inference_time = models.FloatField(default=0)
2023-12-21 10:31:55 +00:00
cpu_percent = models.FloatField(default=-1)
gpu_percent = models.FloatField(default=-1)
used_memory = models.FloatField(default=-1)
total_memory = models.FloatField(default=-1)
gpu_stats = models.CharField(max_length=100, null=True)
is_reviewed = models.BooleanField(default=False)