diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-11-15 16:29:30 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-12-12 12:23:19 +0100 |
commit | cda77c979e232386ef24ea7a04600f16f3c32c98 (patch) | |
tree | 7d53e762723338913594ccdb42c6fa08c4bfb5ef /archaeological_files/views.py | |
parent | 4746cd2938df3cf87ae338d22eb4f67f35bac960 (diff) | |
download | Ishtar-cda77c979e232386ef24ea7a04600f16f3c32c98.tar.bz2 Ishtar-cda77c979e232386ef24ea7a04600f16f3c32c98.zip |
File module refactoring - more tests for files
Diffstat (limited to 'archaeological_files/views.py')
-rw-r--r-- | archaeological_files/views.py | 137 |
1 files changed, 89 insertions, 48 deletions
diff --git a/archaeological_files/views.py b/archaeological_files/views.py index cbe1a9f96..5988ba1c0 100644 --- a/archaeological_files/views.py +++ b/archaeological_files/views.py @@ -29,7 +29,8 @@ from django.urls import reverse from ishtar_common.utils import ugettext_lazy as _ from archaeological_operations.utils import parse_parcels -from ishtar_common.views import wizard_is_available +from ishtar_common.views import wizard_is_available, OrganizationPersonCreate, \ + OrganizationPersonEdit from ishtar_common.views_item import get_item, show_item, revert_item, check_permission from archaeological_operations.wizards import ( @@ -52,7 +53,6 @@ from ishtar_common.views import IshtarMixin, LoginRequiredMixin from archaeological_operations.wizards import OperationWizard from archaeological_operations.views import operation_creation_wizard -from ishtar_common.forms_common import TownFormset from archaeological_operations.forms import FinalAdministrativeActDeleteForm, \ SelectedParcelGeneralFormSet from ishtar_common.forms import ClosingDateFormSelection @@ -137,43 +137,69 @@ file_search_wizard = wizards.FileSearch.as_view( url_name="file_search", ) -file_creation_wizard = wizards.FileWizard.as_view( - [ - ("general-file_creation", forms.FileFormGeneral), - ("towns-file_creation", TownFormset), - ("preventive-file_creation", forms.FileFormPreventive), - ("research-file_creation", forms.FileFormResearch), - ("final-file_creation", forms.FinalForm), - ], +file_creation_wizard_is_preventive = is_preventive( + "general-file_creation", models.FileType, type_key="file_type" +) +file_creation_wizard_is_not_preventive = is_not_preventive( + "general-file_creation", models.FileType, type_key="file_type" +) + +file_creation_steps = [ + ("general-file_creation", forms.FileFormGeneral), + ("preventivetype-file_creation", forms.FileFormPreventiveType), + ("preventiveplanning-file_creation", forms.FileFormPlanning), + ("researchaddress-file_creation", forms.FileFormResearchAddress), + ("generalcontractor-file_creation", forms.FileFormGeneralContractor), + ("planningservice-file_creation", forms.FileFormPlanningService), + ("research-file_creation", forms.FileFormResearch), + ("instruction-file_creation", forms.FileFormInstruction), + ("final-file_creation", forms.FinalForm), +] + +file_creation_wizard = FileWizard.as_view( + file_creation_steps, label=_("New file"), condition_dict={ - "preventive-file_creation": is_preventive( - "general-file_creation", models.FileType, type_key="file_type" - ), - "research-file_creation": is_not_preventive( - "general-file_creation", models.FileType, type_key="file_type" - ), + "preventivetype-file_creation": file_creation_wizard_is_preventive, + "preventiveplanning-file_creation": file_creation_wizard_is_preventive, + "generalcontractor-file_creation": file_creation_wizard_is_preventive, + "planningservice-file_creation": file_creation_wizard_is_preventive, + "researchaddress-file_creation": file_creation_wizard_is_not_preventive, + "research-file_creation": file_creation_wizard_is_not_preventive, }, url_name="file_creation", ) -file_modification_wizard = wizards.FileModificationWizard.as_view( - [ - ("selec-file_modification", forms.FileFormSelection), - ("general-file_modification", forms.FileFormGeneralRO), - ("towns-file_modification", TownFormset), - ("preventive-file_modification", forms.FileFormPreventive), - ("research-file_modification", forms.FileFormResearch), - ("final-file_modification", forms.FinalForm), - ], +file_modification_wizard_is_preventive = is_preventive( + "general-file_modification", models.FileType, type_key="file_type" +) +file_modification_wizard_is_not_preventive = is_not_preventive( + "general-file_modification", models.FileType, type_key="file_type" +) + +file_modification_steps = [ + ("selec-file_modification", forms.FileFormSelection), + ("general-file_modification", forms.FileFormGeneral), + ("preventivetype-file_modification", forms.FileFormPreventiveType), + ("preventiveplanning-file_modification", forms.FileFormPlanning), + ("researchaddress-file_modification", forms.FileFormResearchAddress), + ("generalcontractor-file_modification", forms.FileFormGeneralContractor), + ("planningservice-file_modification", forms.FileFormPlanningService), + ("research-file_modification", forms.FileFormResearch), + ("instruction-file_modification", forms.FileFormInstructionEdit), + ("final-file_modification", forms.FinalForm), +] + +file_modification_wizard = FileModificationWizard.as_view( + file_modification_steps, label=_("File modification"), condition_dict={ - "preventive-file_modification": is_preventive( - "general-file_modification", models.FileType, type_key="file_type" - ), - "research-file_modification": is_not_preventive( - "general-file_modification", models.FileType, type_key="file_type" - ), + "preventivetype-file_modification": file_modification_wizard_is_preventive, + "preventiveplanning-file_modification": file_modification_wizard_is_preventive, + "generalcontractor-file_modification": file_modification_wizard_is_preventive, + "planningservice-file_modification": file_modification_wizard_is_preventive, + "researchaddress-file_modification": file_modification_wizard_is_not_preventive, + "research-file_modification": file_modification_wizard_is_not_preventive, }, url_name="file_modification", ) @@ -191,21 +217,25 @@ def file_modify(request, pk): ) +file_closing_steps = [ + ("selec-file_closing", forms.FileFormSelection), + ("date-file_closing", ClosingDateFormSelection), + ("final-file_closing", forms.FinalFileClosingForm), +] + file_closing_wizard = wizards.FileClosingWizard.as_view( - [ - ("selec-file_closing", forms.FileFormSelection), - ("date-file_closing", ClosingDateFormSelection), - ("final-file_closing", forms.FinalFileClosingForm), - ], + file_closing_steps, label=_("File closing"), url_name="file_closing", ) +file_deletion_steps = [ + ("selec-file_deletion", forms.FileFormMultiSelection), + ("final-file_deletion", forms.FinalFileDeleteForm), +] + file_deletion_wizard = wizards.FileDeletionWizard.as_view( - [ - ("selec-file_deletion", forms.FileFormMultiSelection), - ("final-file_deletion", forms.FinalFileDeleteForm), - ], + file_deletion_steps, label=_("File deletion"), url_name="file_deletion", ) @@ -221,6 +251,14 @@ def file_delete(request, pk): return redirect(reverse("file_deletion", kwargs={"step": "final-file_deletion"})) +class TownPlanningEdit(OrganizationPersonEdit): + relative_label = _("File followed by") + + +class TownPlanningCreate(OrganizationPersonCreate): + relative_label = _("File followed by") + + file_administrativeactfile_search_wizard = SearchWizard.as_view( [ ( @@ -232,15 +270,18 @@ file_administrativeactfile_search_wizard = SearchWizard.as_view( url_name="file_administrativeactfile_search", ) + +administrativeact_steps = [ + ("selec-file_administrativeactfile", forms.FileFormSelection), + ( + "administrativeact-file_administrativeactfile", + forms.AdministrativeActFileForm, + ), + ("final-file_administrativeactfile", forms.FinalForm), +] + file_administrativeactfile_wizard = wizards.FileAdministrativeActWizard.as_view( - [ - ("selec-file_administrativeactfile", forms.FileFormSelection), - ( - "administrativeact-file_administrativeactfile", - forms.AdministrativeActFileForm, - ), - ("final-file_administrativeactfile", forms.FinalForm), - ], + administrativeact_steps, label=_("File: new administrative act"), url_name="file_administrativeactfile", ) |