40 lines
1.7 KiB
Python
40 lines
1.7 KiB
Python
from django.db import models
|
|
from django.utils import timezone
|
|
from fwd_api.models.Subscription import Subscription
|
|
from fwd_api.models.SubscriptionRequest import SubscriptionRequest
|
|
from fwd_api.models.Report import Report
|
|
|
|
class ReportFile(models.Model):
|
|
# Metadata
|
|
id = models.AutoField(primary_key=True)
|
|
correspond_request_id = models.CharField(max_length=200, default="")
|
|
correspond_request_created_at = models.DateTimeField(default=timezone.now, db_index=True)
|
|
correspond_redemption_id = models.CharField(max_length=200, default="")
|
|
subsidiary = models.CharField(default="", null=True, max_length=200)
|
|
created_at = models.DateTimeField(default=timezone.now, db_index=True)
|
|
updated_at = models.DateTimeField(auto_now=True)
|
|
report = models.ForeignKey(Report, related_name="files", on_delete=models.CASCADE)
|
|
|
|
# Data
|
|
S3_uploaded = models.BooleanField(default=False)
|
|
doc_type = models.CharField(max_length=200)
|
|
is_bad_image = models.BooleanField(default=False)
|
|
|
|
predict_result = models.JSONField(null=True)
|
|
feedback_result = models.JSONField(null=True)
|
|
reviewed_result = models.JSONField(null=True)
|
|
|
|
feedback_accuracy = models.JSONField(null=True)
|
|
reviewed_accuracy = models.JSONField(null=True)
|
|
acc = models.FloatField(default=0, null=True)
|
|
|
|
time_cost = models.FloatField(default=None, null=True)
|
|
is_reviewed = models.CharField(default="NA", max_length=5) # NA, No, Yes
|
|
bad_image_reason = models.TextField(default="")
|
|
counter_measures = models.TextField(default="")
|
|
error = models.TextField(default="")
|
|
review_status = models.IntegerField(default=-1) # -1: No need review, 0: not reviewed, 1: reviewed
|
|
|
|
|
|
|