|
|
@ -1,5 +1,6 @@ |
|
|
from django.db import models |
|
|
from django.db import models |
|
|
from django.conf import settings |
|
|
from django.conf import settings |
|
|
|
|
|
from edivorce.apps.core.models import BceidUser |
|
|
|
|
|
|
|
|
from edivorce.apps.core import redis |
|
|
from edivorce.apps.core import redis |
|
|
|
|
|
|
|
|
@ -9,12 +10,35 @@ class Document(models.Model): |
|
|
This is only a POC model and should not be loaded on a production system. |
|
|
This is only a POC model and should not be loaded on a production system. |
|
|
""" |
|
|
""" |
|
|
filename = models.CharField(max_length=128, null=True) # saving the original filename separately |
|
|
filename = models.CharField(max_length=128, null=True) # saving the original filename separately |
|
|
|
|
|
""" File name and extension """ |
|
|
|
|
|
|
|
|
|
|
|
length = models.IntegerField(default=0) |
|
|
|
|
|
""" Size of the file (size and name uniquely identify each file on the input) """ |
|
|
|
|
|
|
|
|
file = models.FileField(upload_to=redis.generate_unique_filename, storage=redis.RedisStorage()) |
|
|
file = models.FileField(upload_to=redis.generate_unique_filename, storage=redis.RedisStorage()) |
|
|
docType = models.CharField(max_length=4, null=True, blank=True) |
|
|
|
|
|
partyId = models.IntegerField(default=0) |
|
|
|
|
|
|
|
|
""" File temporarily stored in Redis """ |
|
|
|
|
|
|
|
|
|
|
|
doc_type = models.CharField(max_length=4, null=True, blank=True) |
|
|
|
|
|
""" CEIS Document Type Code (2-4 letters) """ |
|
|
|
|
|
|
|
|
|
|
|
party_id = models.IntegerField(default=0) |
|
|
|
|
|
""" 1 = You, 2 = Your Spouse, 0 = Shared """ |
|
|
|
|
|
|
|
|
|
|
|
order = models.IntegerField(default=1) |
|
|
|
|
|
""" file order (page number in the PDF) """ |
|
|
|
|
|
|
|
|
|
|
|
rotation = models.IntegerField(default=0) |
|
|
|
|
|
""" 0, 90, 180 or 270 """ |
|
|
|
|
|
|
|
|
|
|
|
bceid_user = models.ForeignKey(BceidUser, related_name='uploads', on_delete=models.CASCADE) |
|
|
|
|
|
""" User who uploaded the attachment """ |
|
|
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
|
unique_together = ("bceid_user", "doc_type", "party_id", "filename", "length") |
|
|
|
|
|
|
|
|
def save(self, *args, **kwargs): |
|
|
def save(self, *args, **kwargs): |
|
|
self.filename = self.file.name |
|
|
self.filename = self.file.name |
|
|
|
|
|
self.length = self.file.size |
|
|
|
|
|
|
|
|
super(Document, self).save(*args, **kwargs) |
|
|
super(Document, self).save(*args, **kwargs) |
|
|
|
|
|
|
|
|
|