Skip to content
Snippets Groups Projects
Commit 8b71b3dc authored by Alexa Valentová's avatar Alexa Valentová
Browse files

update importer

parent 9d9a7cec
No related branches found
No related tags found
No related merge requests found
Pipeline #19839 passed
......@@ -86,7 +86,7 @@ class Command(BaseCommand):
issue.delete()
else:
issue = ContractIssue(name=name)
issue = ContractIssue(name=name, is_auto_imported=True)
issue.save()
return issue
......@@ -172,18 +172,18 @@ class Command(BaseCommand):
patterns = (
(r"\s\s+", " "),
(r"^Kraské sdružení Praha$", "Krajské sdružení Praha"),
(r"^Kraské sdružení Praha$", "KS Praha"),
(r"^republikové předsednictvo$", "Republikové předsednictvo"),
(r"^KS ", "Krajské sdružení "),
(r"^(MS |místní sdružení )", "Místní sdružení "),
(r"^(Ústecký kraj|Ustecký kraj)$", "Krajské sdružení Ústecký kraj"),
(r"^KS ", "KS "),
(r"^(MS |místní sdružení )", "MS "),
(r"^(Ústecký kraj|Ustecký kraj)$", "KS Ústecký kraj"),
(
r"^Moravskoslezský kraj$",
"Krajské sdružení Moravskoslezský kraj",
"KS Moravskoslezský kraj",
),
(
r"^Karlovarský kraj$",
"Krajské sdružení Karlovarský kraj",
"KS Karlovarský kraj",
),
(
r"Jihočeská kraj",
......@@ -208,21 +208,23 @@ class Command(BaseCommand):
(r"olomoucký", "Olomoucký"),
(r"^místní ", "Místní "),
(r"^celostátní ", "Celostátní "),
(r"odbor", "Odbor"),
(r"(o|O)dbor", "odbor"),
(r"PKS", "Předsednictvo krajského sdružení"),
(r"( KS | Krajského sdružení )", " krajského sdružení "),
(
r"^(Předsednictvo krajského sdružení |Předsednictvo |Místní předsednictvo )",
"",
),
(r"^Krajské předsednictvo ", "Krajské sdružení "),
(r"^Krajské předsednictvo", "KS"),
(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"),
(r"^Olomouc$", "MS Olomouc"),
(r"^Olomoucký kraj$", "KS Olomoucký kraj"),
(r"^Pardubický kraj$", "KS Pardubický kraj"),
(r"^Jihočeský kraj$", "KS Jihočeský kraj"),
(r"^Královehradecký kraj$", "KS Královehradecký kraj"),
(r"^Pardubický kraj$", "KS Pardubický kraj"),
(r"^Krajské sdružení", "KS"),
(r"^Místní sdružení", "MS"),
)
for pattern in patterns:
......@@ -376,7 +378,7 @@ class Command(BaseCommand):
def assign_signing_party_metadata(
self, slug: str, contract: Contract, signing_party: dict
) -> tuple[
Contract | Signee,
Contractee | Signee,
list[ContractIssue],
list[ContracteeSignatureRepresentative | SigneeSignatureRepresentative],
bool,
......@@ -631,12 +633,12 @@ class Command(BaseCommand):
):
model = Contractee
representative_model = ContracteeSignatureRepresentative
instance = model()
instance = model(is_auto_imported=True)
is_contractee = True
else:
model = Signee
representative_model = SigneeSignatureRepresentative
instance = model(name=name, address_country="Česká republika")
instance = model(name=name, is_auto_imported=True, address_country="Česká republika")
if model is Signee:
if (
......@@ -1083,7 +1085,7 @@ class Command(BaseCommand):
try:
type_instance = ContractType.objects.get(name=value)
except ContractType.DoesNotExist:
type_instance = ContractType(name=value)
type_instance = ContractType(is_auto_imported=True, name=value)
types.append(type_instance)
......@@ -1232,6 +1234,7 @@ class Command(BaseCommand):
except ContractFilingArea.DoesNotExist:
if isinstance(value, str) and not value.startswith("Neznám"):
filing_area = ContractFilingArea(
is_auto_imported=True,
name=value,
person_responsible="Doplň osobu!",
)
......@@ -1385,6 +1388,7 @@ class Command(BaseCommand):
with open(file_path, "rb") as open_file:
self.normalization_count += 1
file = ContractFile(
is_auto_imported=True,
contract=contract,
name=self.normalize_filename(file_key),
is_public=True,
......@@ -1428,6 +1432,7 @@ class Command(BaseCommand):
contractee.save()
signature = ContracteeSignature(
is_auto_imported=True,
contract=contract,
contractee=contractee,
date=contract.valid_start_date,
......@@ -1445,6 +1450,7 @@ class Command(BaseCommand):
signee.save()
signature = SigneeSignature(
is_auto_imported=True,
contract=contract,
signee=signee,
date=contract.valid_start_date,
......@@ -1471,7 +1477,7 @@ class Command(BaseCommand):
def import_contract_from_files(
self, contract_root: str, files: list[str], valid_start_date: datetime
) -> None:
contract = Contract(notes="")
contract = Contract(is_auto_imported=True, notes="")
for file_ in files:
with open(
......@@ -1635,7 +1641,7 @@ class Command(BaseCommand):
Signee,
SigneeSignature,
):
model.objects.filter().delete()
model.objects.filter(is_auto_imported=True).delete()
if self.verbosity >= 1:
self.stdout.write(self.style.SUCCESS("Deleted all previous records."))
......
# Generated by Django 5.1.1 on 2024-09-26 12:49
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('contracts', '0071_signeehistoricalname'),
]
operations = [
migrations.AlterModelOptions(
name='signeehistoricalname',
options={'verbose_name': 'Historické jméno smluvní strany', 'verbose_name_plural': 'Historická jména smluvní strany'},
),
migrations.AddField(
model_name='contract',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contractee',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contracteesignature',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contractfile',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contractfilingarea',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contractissue',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='contracttype',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='signee',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
migrations.AddField(
model_name='signeesignature',
name='is_auto_imported',
field=models.BooleanField(default=False, verbose_name='Je automaticky importovaná'),
),
]
......@@ -121,6 +121,11 @@ class Signee(
InlineNameMixin,
models.Model,
):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
verbose_name="Jméno",
......@@ -338,6 +343,11 @@ class Contractee(
InlineNameMixin,
models.Model,
):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
default=get_default_contractee_name,
......@@ -414,6 +424,11 @@ class Contractee(
class ContractType(ContractCountMixin, NameStrMixin, models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
verbose_name="Jméno",
......@@ -433,6 +448,11 @@ class ContractType(ContractCountMixin, NameStrMixin, models.Model):
class ContractIssue(ContractCountMixin, NameStrMixin, models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
verbose_name="Jméno",
......@@ -452,6 +472,11 @@ class ContractIssue(ContractCountMixin, NameStrMixin, models.Model):
class ContractFilingArea(ContractCountMixin, NameStrMixin, models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
verbose_name="Jméno",
......@@ -486,6 +511,11 @@ get_created_on_timestamp = get_current_utc_timestamp
class Contract(NameStrMixin, models.Model):
# BEGIN Automatically set fields
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
created_by = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.SET_NULL,
......@@ -952,6 +982,11 @@ class ContractFileField(models.FileField):
class ContractFile(NameStrMixin, models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
name = models.CharField(
max_length=256,
verbose_name="Jméno",
......@@ -988,6 +1023,11 @@ class ContractFile(NameStrMixin, models.Model):
class ContracteeSignature(models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
contractee = models.ForeignKey(
Contractee,
on_delete=models.CASCADE,
......@@ -1028,6 +1068,11 @@ class ContracteeSignature(models.Model):
class SigneeSignature(models.Model):
is_auto_imported = models.BooleanField(
"Je automaticky importovaná",
default=False,
)
signee = models.ForeignKey(
Signee,
on_delete=models.CASCADE,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment