sysnet-pyutils 1.2.3__py3-none-any.whl → 1.2.4__py3-none-any.whl

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.
@@ -1,10 +1,12 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import json
3
4
  from datetime import datetime
4
5
  from enum import Enum
5
6
  from typing import Optional, List, Tuple, Any
6
7
 
7
8
  from pydantic import BaseModel, Field, EmailStr
9
+ from typing_extensions import Self
8
10
 
9
11
  from sysnet_pyutils.utils import local_now, is_valid_unid, is_valid_pid, is_valid_uuid
10
12
 
@@ -58,6 +60,10 @@ class BaseEnum(str, Enum):
58
60
  def has_value(cls, value):
59
61
  return value in cls._value2member_map_
60
62
 
63
+ @classmethod
64
+ def from_json(cls, json_str: str) -> Self:
65
+ """Create an instance of PersonTypeType from a JSON string"""
66
+ return cls(json.loads(json_str))
61
67
 
62
68
 
63
69
  class AclLevelEnum(BaseEnum):
@@ -66,6 +72,20 @@ class AclLevelEnum(BaseEnum):
66
72
  MANAGE = 'M'
67
73
 
68
74
 
75
+ class PersonTypeEnum(BaseEnum):
76
+ """
77
+ Typ osoby (zdroj CRŽP): - legalEntity: tuzemská právnická osoba - legalEntityWithoutIco: tuzemská právnická osoba bez IČO - foreignLegalEntity: zahraniční právnická osoba - businessNaturalPerson: tuzemská fyzická osoba podnikající - naturalPerson: tuzemská fyzická osoba nepodnikající - foreignNaturalPerson: zahraniční fyzická osoba podnikající
78
+ """
79
+ LEGAL_ENTITY = 'legalEntity'
80
+ LEGAL_ENTITY_WO_ICO = 'legalEntityWithoutIco'
81
+ FOREIGN_LEGAL_ENTITY = 'foreignLegalEntity'
82
+ NATURAL_PERSON = 'naturalPerson'
83
+ BUSINESS_NATURAL_PERSON = 'businessNaturalPerson'
84
+ FOREIGN_NATURAL_PERSON = 'foreignNaturalPerson'
85
+ EMPTY = ''
86
+ NULL = None
87
+
88
+
69
89
  class CodeValueType(BaseModel):
70
90
  # kód/hodnota
71
91
  code: Optional[str] = Field(default=None, description='Kód položky', examples=['CZ'])
@@ -293,3 +313,5 @@ class WorkflowType(BaseModel):
293
313
  executor: Optional[UserType] = Field(default='SYSTEM', description='Uživatel, který provedl událost')
294
314
  status_from: Optional[str] = Field(default=None, description='Předchozí stav')
295
315
  status_to: Optional[str] = Field(default=None, description='Následný stav')
316
+
317
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sysnet-pyutils
3
- Version: 1.2.3
3
+ Version: 1.2.4
4
4
  Summary: Python Utilities
5
5
  Author-email: Data Developer <info@sysnet.cz>
6
6
  Project-URL: Homepage, https://github.com/SYSNET-CZ/pyutils
@@ -353,3 +353,15 @@ která naplní atribut **identifier** z unid, pid nebo uuid.
353
353
 
354
354
  1. Místo typu `UUID` se v modelu používá pouze `str`. Je tomu tak kvůli ukládání do **MongoDb**.
355
355
  2. Doplněn abstraktní typ `BaseEnum`, který obsahuje metodu `has_value`.
356
+
357
+
358
+ ### verze 1.2.4
359
+
360
+ Z modelu CITES přenesena třída **PersonTypeEnum**
361
+ Typ osoby (zdroj CRŽP):
362
+ - legalEntity: tuzemská právnická osoba
363
+ - legalEntityWithoutIco: tuzemská právnická osoba bez IČO
364
+ - foreignLegalEntity: zahraniční právnická osoba
365
+ - businessNaturalPerson: tuzemská fyzická osoba podnikající
366
+ - naturalPerson: tuzemská fyzická osoba nepodnikající
367
+ - foreignNaturalPerson: zahraniční fyzická osoba podnikající
@@ -9,9 +9,9 @@ sysnet_pyutils/ses.py,sha256=WJzs0y2QnF4XGDGjls_W0p0v6DJ4fZ4_97m3XbzpaFw,2713
9
9
  sysnet_pyutils/tools.py,sha256=ZioHvUIufrhuJyZLdPnuMUD8Li5LTljSMSCxqRnKIi4,377
10
10
  sysnet_pyutils/utils.py,sha256=4dOqlP8JhKaIzWlbYw4PLckBf1SigBJK-MzK1EWTgYk,23523
11
11
  sysnet_pyutils/models/__init__.py,sha256=oozOr_DKhenkM9BDaPOmtbLXhP5vtMUCjBPEjZDW4GQ,167
12
- sysnet_pyutils/models/general.py,sha256=Xe06pfmvcqNJ8AfVuMkF9h_Y81UXmcJYX8R9RrHs8MI,16273
13
- sysnet_pyutils-1.2.3.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
14
- sysnet_pyutils-1.2.3.dist-info/METADATA,sha256=OK2O7Ur_J69TJdpUqO9xOO2juCVFuMAnCAaiQzgmHls,15285
15
- sysnet_pyutils-1.2.3.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
16
- sysnet_pyutils-1.2.3.dist-info/top_level.txt,sha256=ZKTltQWbLlWBXw4oovo1w7ui-JQ1WoyECqMSWdBj6XE,15
17
- sysnet_pyutils-1.2.3.dist-info/RECORD,,
12
+ sysnet_pyutils/models/general.py,sha256=N3meFkl5v3wxEkP9jOy-leOobRhfhKDKgzu2b0BCmrc,17228
13
+ sysnet_pyutils-1.2.4.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
14
+ sysnet_pyutils-1.2.4.dist-info/METADATA,sha256=ZxxTqw45stJQZY4tP1hiB2E5_zDwNHJMkQPvgcX9txM,15747
15
+ sysnet_pyutils-1.2.4.dist-info/WHEEL,sha256=0CuiUZ_p9E4cD6NyLD6UG80LBXYyiSYZOKDm5lp32xk,91
16
+ sysnet_pyutils-1.2.4.dist-info/top_level.txt,sha256=ZKTltQWbLlWBXw4oovo1w7ui-JQ1WoyECqMSWdBj6XE,15
17
+ sysnet_pyutils-1.2.4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (79.0.1)
2
+ Generator: setuptools (80.3.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5