From c7d22fbc356102a3d1474de9b6a5df9e3df930f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Valenta?= <git@imaniti.org> Date: Sun, 23 Apr 2023 23:11:08 +0200 Subject: [PATCH] normalization, files --- .../commands/import_old_contracts.py | 61 +++++++++++++++++-- 1 file changed, 56 insertions(+), 5 deletions(-) diff --git a/contracts/management/commands/import_old_contracts.py b/contracts/management/commands/import_old_contracts.py index 74c4a69..6af1031 100644 --- a/contracts/management/commands/import_old_contracts.py +++ b/contracts/management/commands/import_old_contracts.py @@ -276,10 +276,38 @@ class Command(BaseCommand): r"^(Předsednictvo krajského sdružení |Předsednictvo |Místní předsednictvo )", "" ), + ( + r"^Krajské předsednictvo ", + "Krajské sdružení " + ), ( r"ého kraje$", "ý kraj" - ) + ), + ( + r"^Olomouc$", + "Místní sdružení Olomouc" + ), + ( + r"^Olomoucký kraj$", + "Krajské sdružení Olomoucký kraj" + ), + ( + r"^Pardubický kraj$", + "Krajské sdružení Pardubický kraj" + ), + ( + r"^Jihočeský kraj$", + "Krajské sdružení Jihočeský kraj" + ), + ( + r"^Královehradecký kraj$", + "Krajské sdružení Královehradecký kraj" + ), + ( + r"^Pardubický kraj$", + "Krajské sdružení Pardubický kraj" + ), ) for pattern in patterns: @@ -584,7 +612,7 @@ class Command(BaseCommand): signing_party_value = signing_party_value.strip() match signing_party_key: - case "sídlo": + case ["sídlo" | "bydliště"]: if is_contractee: continue @@ -648,7 +676,7 @@ class Command(BaseCommand): continue - instance.ico_number = signing_party_value + instance.ico_number = str(signing_party_value) case "zástupce": if not isinstance(signing_party_value, str|list): issue_count += 1 @@ -787,7 +815,14 @@ class Command(BaseCommand): ).first() if existing_instance is not None: - instance = existing_instance + if existing_instance.ico_number is None and instance.ico_number is not None: + existing_instance.ico_number = instance.ico_number + existing_instance.save() + instance = existing_instance + elif existing_instance.ico_number == instance.ico_number or instance.ico_number is None: + instance = existing_instance + else: + instance.save() else: instance.save() @@ -1019,7 +1054,6 @@ class Command(BaseCommand): f"Contract {slug} has an invalid filing area: {value}." ) ) - case "smluvní strany": if not isinstance(value, list): observed_issues_count += 1 @@ -1061,6 +1095,23 @@ class Command(BaseCommand): contractees.append(instance) else: signees.append(instance) + case "soubory": + if not isinstance(value, list): + observed_issues_count += 1 + contract.notes += f"Špatně zadané soubory.\n" + + if self.verbosity >= 2: + self.stderr.write( + self.style.NOTICE( + f"Files for {slug} are not a list: {value}." + ) + ) + + continue + + for filename in value: + if not isinstance(filename, str): + if not is_already_imported: if contract.name in (None, "") or ( -- GitLab