sysnet-persons-model 1.2.6__tar.gz → 1.2.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/PKG-INFO +1 -1
  2. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/individual.py +10 -3
  3. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/person_entity.py +10 -3
  4. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/role.py +8 -2
  5. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/pyproject.toml +1 -1
  6. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/sysnet_persons_model.egg-info/PKG-INFO +1 -1
  7. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/LICENSE +0 -0
  8. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/README.md +0 -0
  9. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/__init__.py +0 -0
  10. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/common.py +0 -0
  11. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/config.py +0 -0
  12. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/context.py +0 -0
  13. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/country.py +0 -0
  14. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/legal_form.py +0 -0
  15. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/persons_model/tag.py +0 -0
  16. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/requirements.txt +0 -0
  17. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/setup.cfg +0 -0
  18. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/sysnet_persons_model.egg-info/SOURCES.txt +0 -0
  19. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/sysnet_persons_model.egg-info/dependency_links.txt +0 -0
  20. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/sysnet_persons_model.egg-info/requires.txt +0 -0
  21. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/sysnet_persons_model.egg-info/top_level.txt +0 -0
  22. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_common.py +0 -0
  23. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_config.py +0 -0
  24. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_context.py +0 -0
  25. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_country.py +0 -0
  26. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_individual.py +0 -0
  27. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_legal_form.py +0 -0
  28. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_person_entity.py +0 -0
  29. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_role.py +0 -0
  30. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_scope.py +0 -0
  31. {sysnet_persons_model-1.2.6 → sysnet_persons_model-1.2.8}/tests/test_tag.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sysnet-persons-model
3
- Version: 1.2.6
3
+ Version: 1.2.8
4
4
  Summary: SYSNET Persons Data Model
5
5
  Author-email: Data Developer <info@sysnet.cz>
6
6
  License-Expression: LicenseRef-SYSNET-FreeForHomeUse
@@ -1,9 +1,9 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from datetime import datetime
4
- from typing import List, Optional
4
+ from typing import Any, List, Optional
5
5
 
6
- from pydantic import BaseModel, Field, SecretStr, StrictBool
6
+ from pydantic import BaseModel, Field, SecretStr, StrictBool, AliasChoices
7
7
  from sysnet_pyutils.models.general import LocationType, ListTypeBase, MetadataEssentialType
8
8
 
9
9
  from persons_model.common import ContactType, RegistryType
@@ -26,6 +26,7 @@ class IndividualBaseType(BaseModel):
26
26
  birthdate: Optional[datetime] = Field(default=None, description="Datum narození")
27
27
  gdpr: Optional[StrictBool] = Field(default=True, description="Udělen souhlas se zpracováním dat GDPR")
28
28
  note: Optional[str] = Field(default=None, description='Libovolná poznámka')
29
+ agenda: Optional[dict[str, dict[str, Any]]] = Field(default=None, description='Agendově specifická data. Klíč = kód agendy (hnvo, ippc, cites). Hodnota = libovolný objekt parsovaný konzumentem.')
29
30
 
30
31
 
31
32
  class IndividualEntryType(BaseModel):
@@ -46,7 +47,13 @@ class IndividualType(IndividualBaseType):
46
47
  pid: Optional[str] = Field(default=None, description="identifikátor PID")
47
48
  registry: Optional[RegistryType] = Field(default=None, description="Referenční registr")
48
49
  tags: Optional[TagType] = Field(default=None, description="Seznam tagů objektu")
49
- document: Optional[MetadataEssentialType] = Field(default=None, description="Metadata")
50
+ """Sekce metadat životního cyklu pod aliasem 'metadata' (Redmine #9850)."""
51
+ document: Optional[MetadataEssentialType] = Field(
52
+ default=None,
53
+ description='Metadata životního cyklu objektu (vytvoření, modifikace, smazání). Přístupné i jako alias "metadata".',
54
+ validation_alias=AliasChoices('document', 'metadata'),
55
+ serialization_alias='document',
56
+ )
50
57
 
51
58
 
52
59
  class IndividualListType(ListTypeBase):
@@ -1,9 +1,9 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from datetime import datetime
4
- from typing import TYPE_CHECKING, List, Optional, Union
4
+ from typing import TYPE_CHECKING, Any, List, Optional, Union
5
5
 
6
- from pydantic import BaseModel, Field, StrictBool
6
+ from pydantic import BaseModel, Field, StrictBool, AliasChoices
7
7
  from sysnet_pyutils.models.general import LocationType, PersonTypeEnum, ListTypeBase, MetadataEssentialType
8
8
 
9
9
  from persons_model.common import RedundantType, DepartmentType, ContactType, IssuingType, RegistryType, MemberType, ScopeType
@@ -64,6 +64,7 @@ class PersonEntityBaseType(BaseModel):
64
64
  note: Optional[str] = Field(default=None, description="Poznámka")
65
65
  issuing: Optional[List[Optional[IssuingType]]] = Field(default=None, description="Osoba je autoritou vydávající nějaké dokumenty")
66
66
  scope: Optional[ScopeType] = Field(default=None, description="Rozsah působnosti subjektu")
67
+ agenda: Optional[dict[str, dict[str, Any]]] = Field(default=None, description="Agendově specifická data. Klíč = kód agendy (hnvo, ippc, cites). Hodnota = libovolný objekt parsovaný konzumentem.")
67
68
 
68
69
  def set_legal_form(self, code: Union[LegalFormEnum, str]) -> "PersonEntityBaseType":
69
70
  """Nastaví atribut legal_form podle kódu právní formy.
@@ -116,4 +117,10 @@ class PersonEntityType(PersonEntityBaseType):
116
117
  members: Optional[List[Optional[MemberType]]] = Field(default=None, description="Členové subjektu")
117
118
  linked_persons: Optional[List[Optional[PersonEntityLinkType]]] = Field(default=None, description="Vazba na jiný subjekt")
118
119
  tags: Optional[TagType] = Field(default=None, description="Seznam tagů")
119
- document: Optional[MetadataEssentialType] = Field(default=None, description='Document metadata')
120
+ """Sekce metadat životního cyklu pod aliasem 'metadata' (Redmine #9850)."""
121
+ document: Optional[MetadataEssentialType] = Field(
122
+ default=None,
123
+ description='Metadata životního cyklu objektu (vytvoření, modifikace, smazání). Přístupné i jako alias "metadata".',
124
+ validation_alias=AliasChoices('document', 'metadata'),
125
+ serialization_alias='document',
126
+ )
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  from typing import Optional, List
4
4
 
5
- from pydantic import BaseModel, Field, StrictBool
5
+ from pydantic import BaseModel, Field, StrictBool, AliasChoices
6
6
  from sysnet_pyutils.models.general import ListTypeBase, BaseEnum, MetadataEssentialType
7
7
 
8
8
  from persons_model.common import RegistryType
@@ -43,7 +43,13 @@ class RoleType(RoleBaseType):
43
43
  admins_individual: Optional[List[Optional[str]]] = Field(default=None, description="Správci role - jednotlivci")
44
44
  admins_personal: Optional[List[Optional[str]]] = Field(default=None, description="Správci role - osoby")
45
45
  tags: Optional[TagType] = Field(default=None, description="Seznam značek")
46
- document: Optional[MetadataEssentialType] = Field(default=None, description='Metadata')
46
+ """Sekce metadat životního cyklu pod aliasem 'metadata' (Redmine #9850)."""
47
+ document: Optional[MetadataEssentialType] = Field(
48
+ default=None,
49
+ description='Metadata životního cyklu objektu (vytvoření, modifikace, smazání). Přístupné i jako alias "metadata".',
50
+ validation_alias=AliasChoices('document', 'metadata'),
51
+ serialization_alias='document',
52
+ )
47
53
 
48
54
 
49
55
  class RoleEntryType(RoleBaseType):
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "sysnet-persons-model"
7
- version = "1.2.6"
7
+ version = "1.2.8"
8
8
  authors = [
9
9
  { name="Data Developer", email="info@sysnet.cz" },
10
10
  ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sysnet-persons-model
3
- Version: 1.2.6
3
+ Version: 1.2.8
4
4
  Summary: SYSNET Persons Data Model
5
5
  Author-email: Data Developer <info@sysnet.cz>
6
6
  License-Expression: LicenseRef-SYSNET-FreeForHomeUse