From 9e63c5dbdebfea2a8fb02da59282779de6db3005 Mon Sep 17 00:00:00 2001 From: saladgg Date: Tue, 14 Sep 2021 12:07:31 +0300 Subject: [PATCH] fix: modifify facility_system model --- fahari/ops/filters.py | 2 +- .../ops/migrations/0026_auto_20210914_1059.py | 29 +++++++++++++++++++ fahari/ops/models.py | 5 ++++ fahari/ops/serializers.py | 1 + fahari/ops/tests/test_api.py | 13 +++++++-- fahari/templates/pages/ops/versions.html | 2 ++ 6 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 fahari/ops/migrations/0026_auto_20210914_1059.py diff --git a/fahari/ops/filters.py b/fahari/ops/filters.py index ecb105fe..92cbdb1d 100644 --- a/fahari/ops/filters.py +++ b/fahari/ops/filters.py @@ -28,7 +28,7 @@ class FacilitySystemFilter(CommonFieldsFilterset): class Meta: model = FacilitySystem - fields = "__all__" + exclude = ("attachment",) class FacilitySystemTicketFilter(CommonFieldsFilterset): diff --git a/fahari/ops/migrations/0026_auto_20210914_1059.py b/fahari/ops/migrations/0026_auto_20210914_1059.py new file mode 100644 index 00000000..ad7bce27 --- /dev/null +++ b/fahari/ops/migrations/0026_auto_20210914_1059.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.7 on 2021-09-14 07:59 + +from django.db import migrations, models +import fahari.common.models + + +class Migration(migrations.Migration): + + dependencies = [ + ('ops', '0025_securityincidence'), + ] + + operations = [ + migrations.AddField( + model_name='facilitysystem', + name='attachment', + field=models.FileField(blank=True, null=True, upload_to=fahari.common.models.get_directory, verbose_name='Attach File or Photo'), + ), + migrations.AddField( + model_name='facilitysystem', + name='release_notes', + field=models.TextField(default='-'), + ), + migrations.AddField( + model_name='facilitysystem', + name='trainees', + field=models.TextField(default='-'), + ), + ] diff --git a/fahari/ops/models.py b/fahari/ops/models.py index 51b314dc..53df8c74 100644 --- a/fahari/ops/models.py +++ b/fahari/ops/models.py @@ -110,6 +110,11 @@ class FacilitySystem(AbstractBase): facility = models.ForeignKey(Facility, on_delete=models.PROTECT) system = models.ForeignKey(System, on_delete=models.PROTECT) version = models.CharField(max_length=64) + release_notes = models.TextField(default="-") + trainees = models.TextField(default="-") + attachment = models.FileField( + upload_to=get_directory, verbose_name="Attach File or Photo", null=True, blank=True + ) def get_absolute_url(self): update_url = reverse_lazy("ops:version_update", kwargs={"pk": self.pk}) diff --git a/fahari/ops/serializers.py b/fahari/ops/serializers.py index 39de6e09..8938ec65 100644 --- a/fahari/ops/serializers.py +++ b/fahari/ops/serializers.py @@ -25,6 +25,7 @@ class FacilitySystemSerializer(BaseSerializer): facility_name = serializers.ReadOnlyField() system_name = serializers.ReadOnlyField() + updated = serializers.DateTimeField(format="%d/%m/%Y", required=False) class Meta(BaseSerializer.Meta): model = FacilitySystem diff --git a/fahari/ops/tests/test_api.py b/fahari/ops/tests/test_api.py index 1bb68352..7a14028e 100644 --- a/fahari/ops/tests/test_api.py +++ b/fahari/ops/tests/test_api.py @@ -123,6 +123,9 @@ def test_create(self): "system": self.system.pk, "version": fake.name()[:63], "organisation": self.global_organisation.pk, + "release_notes": fake.text(), + "trainees": fake.text(), + "attachment": fake.file_name(), } response = self.client.post(reverse("ops:version_create"), data=data) self.assertEqual( @@ -138,9 +141,12 @@ def test_update(self): data = { "pk": instance.pk, "facility": self.facility.pk, + "organisation": self.global_organisation.pk, "system": self.system.pk, "version": fake.name()[:63], - "organisation": self.global_organisation.pk, + "release_notes": fake.text(), + "trainees": fake.text(), + "attachment": fake.file_name(), } response = self.client.post( reverse("ops:version_update", kwargs={"pk": instance.pk}), data=data @@ -260,10 +266,13 @@ def setUp(self): def test_create(self): data = { "facility_system": self.facility_system.pk, + "organisation": self.global_organisation.pk, "details": fake.text(), "raised": timezone.now().isoformat(), "raised_by": fake.name(), - "organisation": self.global_organisation.pk, + "resolved": timezone.now().isoformat(), + "resolved_by": fake.name(), + "resolved_note": fake.text(), } response = self.client.post(reverse("ops:ticket_create"), data=data) self.assertEqual( diff --git a/fahari/templates/pages/ops/versions.html b/fahari/templates/pages/ops/versions.html index 08c21db9..e7fa2b03 100644 --- a/fahari/templates/pages/ops/versions.html +++ b/fahari/templates/pages/ops/versions.html @@ -37,6 +37,7 @@

Facility System Version + Last Updated @@ -56,6 +57,7 @@

{data: "facility_name", name: "facility__name"}, {data: "system_name", name: "system__name"}, {data: "version", name: "version"}, + {data: "updated", name: "updated"}, { data: "url", name: "id",