From 64d085c14b3cbff75597cc3a39656833cc01383b Mon Sep 17 00:00:00 2001 From: Michael Olund Date: Wed, 4 Nov 2020 13:31:07 -0800 Subject: [PATCH] DIV-1234 - Added a field to core_documents for storing initial or final (i or f) --- .../migrations/0027_document_filing_type.py | 18 ++++++++++++++++++ edivorce/apps/core/models.py | 5 +++++ edivorce/apps/core/serializer.py | 7 +++++-- .../core/templates/dashboard/final_filing.html | 1 + .../templates/dashboard/initial_filing.html | 1 + vue/src/components/Uploader/Uploader.vue | 2 ++ .../pages/filing-uploader/FilingUploader.vue | 7 ++++++- 7 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 edivorce/apps/core/migrations/0027_document_filing_type.py diff --git a/edivorce/apps/core/migrations/0027_document_filing_type.py b/edivorce/apps/core/migrations/0027_document_filing_type.py new file mode 100644 index 00000000..da04c955 --- /dev/null +++ b/edivorce/apps/core/migrations/0027_document_filing_type.py @@ -0,0 +1,18 @@ +# Generated by Django 2.2.15 on 2020-11-04 21:06 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('core', '0026_auto_20201028_1741'), + ] + + operations = [ + migrations.AddField( + model_name='document', + name='filing_type', + field=models.CharField(default='i', max_length=1), + ), + ] diff --git a/edivorce/apps/core/models.py b/edivorce/apps/core/models.py index 30cbcb90..38e89d27 100644 --- a/edivorce/apps/core/models.py +++ b/edivorce/apps/core/models.py @@ -126,6 +126,9 @@ class Document(models.Model): party_code = models.IntegerField(default=0) """ 1 = You, 2 = Your Spouse, 0 = Shared """ + filing_type = models.CharField(max_length=1, default='i') + """ 'i'='initial' / 'f'=final """ + sort_order = models.IntegerField(default=1) """ File order (page number in the PDF) """ @@ -174,6 +177,8 @@ class Document(models.Model): self.sort_order = num_docs + 1 if self.doc_type not in self.form_types: raise ValueError(f"Invalid doc_type '{self.doc_type}'") + if self.filing_type not in ['i', 'f']: + raise ValueError(f"Invalid filing_type '{self.filing_type}'") super(Document, self).save(*args, **kwargs) diff --git a/edivorce/apps/core/serializer.py b/edivorce/apps/core/serializer.py index 4662d6a2..a9dffc20 100644 --- a/edivorce/apps/core/serializer.py +++ b/edivorce/apps/core/serializer.py @@ -36,7 +36,8 @@ class CreateDocumentSerializer(serializers.ModelSerializer): class Meta: model = Document - fields = ('file', 'doc_type', 'party_code', 'filename', 'size', 'rotation', 'sort_order', 'file_url') + fields = ('file', 'doc_type', 'party_code', 'filename', 'size', + 'rotation', 'sort_order', 'file_url', 'filing_type') def create(self, validated_data): filename = validated_data['file'].name @@ -61,6 +62,7 @@ class CreateDocumentSerializer(serializers.ModelSerializer): class DocumentMetadataSerializer(serializers.ModelSerializer): doc_type = serializers.CharField(read_only=True) party_code = serializers.IntegerField(read_only=True) + filing_type = serializers.CharField(read_only=True) filename = serializers.CharField(read_only=True) size = serializers.IntegerField(read_only=True) rotation = serializers.IntegerField(min_value=0, max_value=270, validators=[valid_rotation]) @@ -69,4 +71,5 @@ class DocumentMetadataSerializer(serializers.ModelSerializer): class Meta: model = Document - fields = ('doc_type', 'party_code', 'filename', 'size', 'rotation', 'sort_order', 'file_url') + fields = ('doc_type', 'party_code', 'filename', 'size', + 'rotation', 'sort_order', 'file_url', 'filing_type') diff --git a/edivorce/apps/core/templates/dashboard/final_filing.html b/edivorce/apps/core/templates/dashboard/final_filing.html index 1e11a9fc..29f5fd1d 100644 --- a/edivorce/apps/core/templates/dashboard/final_filing.html +++ b/edivorce/apps/core/templates/dashboard/final_filing.html @@ -114,6 +114,7 @@
diff --git a/edivorce/apps/core/templates/dashboard/initial_filing.html b/edivorce/apps/core/templates/dashboard/initial_filing.html index 66a70a55..72bed9f9 100644 --- a/edivorce/apps/core/templates/dashboard/initial_filing.html +++ b/edivorce/apps/core/templates/dashboard/initial_filing.html @@ -87,6 +87,7 @@
diff --git a/vue/src/components/Uploader/Uploader.vue b/vue/src/components/Uploader/Uploader.vue index a7439775..a57cec7f 100644 --- a/vue/src/components/Uploader/Uploader.vue +++ b/vue/src/components/Uploader/Uploader.vue @@ -136,6 +136,7 @@ props: { docType: String, party: { type: Number, default: 0 }, + filingType: String, }, data: function() { return { @@ -163,6 +164,7 @@ return { doc_type: this.docType, party_code: this.party, + filing_type: this.filingType, }; }, formDef() { diff --git a/vue/src/pages/filing-uploader/FilingUploader.vue b/vue/src/pages/filing-uploader/FilingUploader.vue index 863262d0..ead2b047 100644 --- a/vue/src/pages/filing-uploader/FilingUploader.vue +++ b/vue/src/pages/filing-uploader/FilingUploader.vue @@ -2,7 +2,11 @@
@@ -18,6 +22,7 @@ }, props: { formTypes: Array, + filingType: String, proxyRootPath: String, }, };