Skip to content

Commit

Permalink
KAAV-1473
Browse files Browse the repository at this point in the history
Set initial values for periaatteet lautakuntaan and jarjestetaan
  • Loading branch information
henrihaapalasiili committed Aug 26, 2024
1 parent 2a4135a commit 58a541e
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
17 changes: 17 additions & 0 deletions projects/management/commands/update_attribute_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@

KAAVALUONNOS_LAUTAKUNTAAN = "kaavaluonnos_lautakuntaan_1"
JARJESTETAAN_LUONNOS_ESILLAOLO = "jarjestetaan_luonnos_esillaolo_1"
PERIAATTEET_LAUTAKUNTAAN = "periaatteet_lautakuntaan_1"
JARJESTETAAN_PERIAATTEET_ESILLAOLO = "jarjestetaan_periaatteet_esillaolo_1"

class Command(BaseCommand):
help = "Update attribute data for V1.1"
Expand Down Expand Up @@ -43,6 +45,21 @@ def handle(self, *args, **options):
if project.attribute_data.get(JARJESTETAAN_LUONNOS_ESILLAOLO, None) is not None:
project.attribute_data.pop(JARJESTETAAN_LUONNOS_ESILLAOLO, None)
changed = True

if project.subtype.name == "XL" and project.attribute_data.get("periaatteet_luotu", None):
if project.attribute_data.get(PERIAATTEET_LAUTAKUNTAAN, None) is None:
project.attribute_data[PERIAATTEET_LAUTAKUNTAAN] = True
changed = True
if project.attribute_data.get(JARJESTETAAN_PERIAATTEET_ESILLAOLO, None) is None:
project.attribute_data[JARJESTETAAN_PERIAATTEET_ESILLAOLO] = True
changed = True
elif project.subtype.name != "XL" or project.attribute_data.get("periaatteet_luotu", False) is False:
if project.attribute_data.get(PERIAATTEET_LAUTAKUNTAAN, None) is not None:
project.attribute_data.pop(PERIAATTEET_LAUTAKUNTAAN, None)
changed = True
if project.attribute_data.get(JARJESTETAAN_PERIAATTEET_ESILLAOLO, None) is not None:
project.attribute_data.pop(JARJESTETAAN_PERIAATTEET_ESILLAOLO, None)
changed = True

if changed:
logger.info(f"Updated attribute_data for project {project.name}")
Expand Down
15 changes: 15 additions & 0 deletions projects/serializers/project.py
Original file line number Diff line number Diff line change
Expand Up @@ -1751,9 +1751,13 @@ def create(self, validated_data: dict) -> Project:

def set_initial_data(self, attribute_data, validated_data):
kokoluokka = validated_data["phase"].project_subtype.name

if kokoluokka == "XL" and validated_data.get("create_draft", None) is True:
attribute_data["kaavaluonnos_lautakuntaan_1"] = True
attribute_data["jarjestetaan_luonnos_esillaolo_1"] = True
if kokoluokka == "XL" and validated_data.get("create_principles", None) is True:
attribute_data["periaatteet_lautakuntaan_1"] = True
attribute_data["jarjestetaan_periaatteet_esillaolo_1"] = True
attribute_data["kaavaprosessin_kokoluokka_readonly"] = kokoluokka
try:
attribute_data["projektityyppi"] = AttributeValueChoice.objects.get(value="Asemakaava")
Expand Down Expand Up @@ -1845,6 +1849,8 @@ def update_initial_data(self, validated_data):
try:
kokoluokka = validated_data["phase"].project_subtype.name
create_draft = validated_data.get("create_draft", None)
create_principles = validated_data.get("create_principles", None)

if kokoluokka == "XL" and create_draft:
if attribute_data.get("kaavaluonnos_lautakuntaan_1", None) is None:
attribute_data["kaavaluonnos_lautakuntaan_1"] = True
Expand All @@ -1853,6 +1859,15 @@ def update_initial_data(self, validated_data):
else:
attribute_data.pop("kaavaluonnos_lautakuntaan_1", None)
attribute_data.pop("jarjestetaan_luonnos_esillaolo_1", None)

if kokoluokka == "XL" and create_principles:
if attribute_data.get("periaatteet_lautakuntaan_1", None) is None:
attribute_data["periaatteet_lautakuntaan_1"] = True
if attribute_data.get("jarjestetaan_periaatteet_esillaolo_1", None) is None:
attribute_data["jarjestetaan_periaatteet_esillaolo_1"] = True
else:
attribute_data.pop("periaatteet_lautakuntaan_1", None)
attribute_data.pop("jarjestetaan_periaatteet_esillaolo_1", None)
except KeyError as exc:
pass

Expand Down

0 comments on commit 58a541e

Please sign in to comment.