From 0445e3dcca90cbe63bed4fccb18923960829624f Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Mon, 15 Apr 2024 10:33:28 -0700 Subject: [PATCH 1/6] Add in Federal Agency models for domain request or domain info --- src/registrar/models/domain_information.py | 9 +++++++++ src/registrar/models/domain_request.py | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/src/registrar/models/domain_information.py b/src/registrar/models/domain_information.py index 2ed27504c..e8ba4f83f 100644 --- a/src/registrar/models/domain_information.py +++ b/src/registrar/models/domain_information.py @@ -29,8 +29,17 @@ class DomainInformation(TimeStampedModel): BranchChoices = DomainRequest.BranchChoices + # TODO for #1975: Delete this after we run the new migration AGENCY_CHOICES = DomainRequest.AGENCY_CHOICES + # TODO: Confirm if we want federal_agency or just agency + federal_agency = models.ForeignKey( + "registrar.FederalAgency", + on_delete=models.PROTECT, + help_text="Associated federal agency", + unique=False, + ) + # This is the domain request user who created this domain request. The contact # information that they gave is in the `submitter` field creator = models.ForeignKey( diff --git a/src/registrar/models/domain_request.py b/src/registrar/models/domain_request.py index bd529f7e6..396c3006f 100644 --- a/src/registrar/models/domain_request.py +++ b/src/registrar/models/domain_request.py @@ -449,6 +449,14 @@ class RejectionReasons(models.TextChoices): blank=True, ) + # TODO: Confirm if we want federal_agency or just agency + federal_agency = models.ForeignKey( + "registrar.FederalAgency", + on_delete=models.PROTECT, + help_text="Associated federal agency", + unique=False, + ) + # This is the domain request user who created this domain request. The contact # information that they gave is in the `submitter` field creator = models.ForeignKey( From d0a5bddba3a74f1c4c52aee81d2c7c240a562050 Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Wed, 17 Apr 2024 14:36:28 -0700 Subject: [PATCH 2/6] Add new model field to transition federal agency for domain information and domain request --- src/registrar/admin.py | 8 +++-- ...rmation_updated_federal_agency_and_more.py | 36 +++++++++++++++++++ src/registrar/models/domain_information.py | 5 +-- src/registrar/models/domain_request.py | 5 +-- 4 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py diff --git a/src/registrar/admin.py b/src/registrar/admin.py index 1275fab79..ddca756ba 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -959,7 +959,9 @@ class DomainInformationAdmin(ListHeaderAdmin): "classes": ["collapse"], "fields": [ "federal_type", - "federal_agency", + "updated_federal_agency", + # The above field will be commented out after approval so we don't display to everyone + "federal_agency", # TODO: remove later "tribe_name", "federally_recognized_tribe", "state_recognized_tribe", @@ -1198,7 +1200,9 @@ def custom_election_board(self, obj): "classes": ["collapse"], "fields": [ "federal_type", - "federal_agency", + "updated_federal_agency", + # The above field will be commented out after approval so we don't display to everyone + "federal_agency", # TODO: remove later "tribe_name", "federally_recognized_tribe", "state_recognized_tribe", diff --git a/src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py b/src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py new file mode 100644 index 000000000..8f109abe0 --- /dev/null +++ b/src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py @@ -0,0 +1,36 @@ +# Generated by Django 4.2.10 on 2024-04-17 20:28 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ("registrar", "0084_create_groups_v11"), + ] + + operations = [ + migrations.AddField( + model_name="domaininformation", + name="updated_federal_agency", + field=models.ForeignKey( + blank=True, + help_text="Associated federal agency", + null=True, + on_delete=django.db.models.deletion.PROTECT, + to="registrar.federalagency", + ), + ), + migrations.AddField( + model_name="domainrequest", + name="updated_federal_agency", + field=models.ForeignKey( + blank=True, + help_text="Associated federal agency", + null=True, + on_delete=django.db.models.deletion.PROTECT, + to="registrar.federalagency", + ), + ), + ] diff --git a/src/registrar/models/domain_information.py b/src/registrar/models/domain_information.py index e8ba4f83f..9e56fad77 100644 --- a/src/registrar/models/domain_information.py +++ b/src/registrar/models/domain_information.py @@ -32,12 +32,13 @@ class DomainInformation(TimeStampedModel): # TODO for #1975: Delete this after we run the new migration AGENCY_CHOICES = DomainRequest.AGENCY_CHOICES - # TODO: Confirm if we want federal_agency or just agency - federal_agency = models.ForeignKey( + updated_federal_agency = models.ForeignKey( "registrar.FederalAgency", on_delete=models.PROTECT, help_text="Associated federal agency", unique=False, + blank=True, + null=True, ) # This is the domain request user who created this domain request. The contact diff --git a/src/registrar/models/domain_request.py b/src/registrar/models/domain_request.py index 396c3006f..45efb8b8c 100644 --- a/src/registrar/models/domain_request.py +++ b/src/registrar/models/domain_request.py @@ -449,12 +449,13 @@ class RejectionReasons(models.TextChoices): blank=True, ) - # TODO: Confirm if we want federal_agency or just agency - federal_agency = models.ForeignKey( + updated_federal_agency = models.ForeignKey( "registrar.FederalAgency", on_delete=models.PROTECT, help_text="Associated federal agency", unique=False, + blank=True, + null=True, ) # This is the domain request user who created this domain request. The contact From 24acf8cc9876353f102158006d089e9bf40ebc71 Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Wed, 17 Apr 2024 14:46:31 -0700 Subject: [PATCH 3/6] Fix unit test --- src/registrar/tests/test_admin.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/registrar/tests/test_admin.py b/src/registrar/tests/test_admin.py index bf54efe60..ba19c2959 100644 --- a/src/registrar/tests/test_admin.py +++ b/src/registrar/tests/test_admin.py @@ -1786,6 +1786,8 @@ def test_readonly_when_restricted_creator(self): "updated_at", "status", "rejection_reason", + "updated_federal_agency", + # TODO: once approved, we'll have to remove above from test "creator", "investigator", "generic_org_type", From 4d2a04a19918d0269fcbe5242650191818b8110a Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Wed, 17 Apr 2024 14:55:01 -0700 Subject: [PATCH 4/6] Fix linting --- src/registrar/tests/test_admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/registrar/tests/test_admin.py b/src/registrar/tests/test_admin.py index ba19c2959..39a56b872 100644 --- a/src/registrar/tests/test_admin.py +++ b/src/registrar/tests/test_admin.py @@ -1786,7 +1786,7 @@ def test_readonly_when_restricted_creator(self): "updated_at", "status", "rejection_reason", - "updated_federal_agency", + "updated_federal_agency", # TODO: once approved, we'll have to remove above from test "creator", "investigator", From e55490bad994b8be357294bc31dfbe21ed58e3a9 Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Thu, 18 Apr 2024 15:48:41 -0700 Subject: [PATCH 5/6] Update to new migration --- ...0086_domaininformation_updated_federal_agency_and_more.py} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename src/registrar/migrations/{0085_domaininformation_updated_federal_agency_and_more.py => 0086_domaininformation_updated_federal_agency_and_more.py} (87%) diff --git a/src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py b/src/registrar/migrations/0086_domaininformation_updated_federal_agency_and_more.py similarity index 87% rename from src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py rename to src/registrar/migrations/0086_domaininformation_updated_federal_agency_and_more.py index 8f109abe0..52f5955d0 100644 --- a/src/registrar/migrations/0085_domaininformation_updated_federal_agency_and_more.py +++ b/src/registrar/migrations/0086_domaininformation_updated_federal_agency_and_more.py @@ -1,4 +1,4 @@ -# Generated by Django 4.2.10 on 2024-04-17 20:28 +# Generated by Django 4.2.10 on 2024-04-18 22:45 from django.db import migrations, models import django.db.models.deletion @@ -7,7 +7,7 @@ class Migration(migrations.Migration): dependencies = [ - ("registrar", "0084_create_groups_v11"), + ("registrar", "0085_alter_contact_first_name_alter_contact_last_name_and_more"), ] operations = [ From 02861c2e5ec7a422e0d0f4e77728140405097896 Mon Sep 17 00:00:00 2001 From: Rebecca Hsieh Date: Fri, 19 Apr 2024 09:06:51 -0700 Subject: [PATCH 6/6] Hiding updatedfederalagency for now --- src/registrar/admin.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/registrar/admin.py b/src/registrar/admin.py index 8413424af..fb4c79b8e 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -979,8 +979,8 @@ class DomainInformationAdmin(ListHeaderAdmin): "classes": ["collapse"], "fields": [ "federal_type", - "updated_federal_agency", - # The above field will be commented out after approval so we don't display to everyone + # "updated_federal_agency", + # Above field commented out so it won't display "federal_agency", # TODO: remove later "tribe_name", "federally_recognized_tribe", @@ -1220,8 +1220,8 @@ def custom_election_board(self, obj): "classes": ["collapse"], "fields": [ "federal_type", - "updated_federal_agency", - # The above field will be commented out after approval so we don't display to everyone + # "updated_federal_agency", + # Above field commented out so it won't display "federal_agency", # TODO: remove later "tribe_name", "federally_recognized_tribe",