diff options
author | cyfraeviolae <cyfraeviolae> | 2024-04-03 03:10:44 -0400 |
---|---|---|
committer | cyfraeviolae <cyfraeviolae> | 2024-04-03 03:10:44 -0400 |
commit | 6d7ba58f880be618ade07f8ea080fe8c4bf8a896 (patch) | |
tree | b1c931051ffcebd2bd9d61d98d6233ffa289bbce /venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ | |
parent | 4f884c9abc32990b4061a1bb6997b4b37e58ea0b (diff) |
venv
Diffstat (limited to 'venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ')
2 files changed, 42 insertions, 0 deletions
diff --git a/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__init__.py b/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__init__.py new file mode 100644 index 0000000..804439a --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__init__.py @@ -0,0 +1,42 @@ +from math import ceil +from typing import List, Tuple + +from .. import Provider as BaseProvider + + +class Provider(BaseProvider): + vat_id_formats: Tuple[str, ...] = ( + "CZ########", + "CZ#########", + "CZ##########", + ) + + national_id_months: List[str] = ["%.2d" % i for i in range(1, 13)] + ["%.2d" % i for i in range(51, 63)] + + def vat_id(self) -> str: + """ + http://ec.europa.eu/taxation_customs/vies/faq.html#item_11 + :return: A random Czech VAT ID + """ + return self.bothify(self.random_element(self.vat_id_formats)) + + def birth_number(self) -> str: + """ + Birth Number (Czech/Slovak: rodné číslo (RČ)) + https://en.wikipedia.org/wiki/National_identification_number#Czech_Republic_and_Slovakia + """ + birthdate = self.generator.date_of_birth() + year = f"{birthdate:%y}" + month: str = self.random_element(self.national_id_months) + day = f"{birthdate:%d}" + if birthdate.year > 1953: + sn = self.random_number(4, True) + else: + sn = self.random_number(3, True) + number = int(f"{year}{month}{day}{sn}") + birth_number = str(ceil(number / 11) * 11) + if year == "00": + birth_number = "00" + birth_number + elif year[0] == "0": + birth_number = "0" + birth_number + return f"{birth_number[:6]}/{birth_number[6:]}" diff --git a/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__pycache__/__init__.cpython-311.pyc b/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__pycache__/__init__.cpython-311.pyc Binary files differnew file mode 100644 index 0000000..75c0369 --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/providers/ssn/cs_CZ/__pycache__/__init__.cpython-311.pyc |