mirror of
https://github.com/bringout/oca-ocb-accounting.git
synced 2026-04-20 17:22:01 +02:00
Initial commit: Accounting packages
This commit is contained in:
commit
4ef34c2317
2661 changed files with 1709616 additions and 0 deletions
40
odoo-bringout-oca-ocb-account/account/tools/__init__.py
Normal file
40
odoo-bringout-oca-ocb-account/account/tools/__init__.py
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
from itertools import zip_longest
|
||||
import requests
|
||||
from urllib3.util.ssl_ import create_urllib3_context
|
||||
|
||||
|
||||
def calc_check_digits(number: str) -> str:
|
||||
"""Calculate the extra digits that should be appended to the number to make it a valid number.
|
||||
Source: python-stdnum iso7064.mod_97_10.calc_check_digits
|
||||
"""
|
||||
number_base10 = ''.join(str(int(x, 36)) for x in number)
|
||||
checksum = int(number_base10) % 97
|
||||
return '%02d' % ((98 - 100 * checksum) % 97)
|
||||
|
||||
|
||||
def format_rf_reference(number: str) -> str:
|
||||
"""Format a string into a Structured Creditor Reference.
|
||||
|
||||
The Creditor Reference is an international standard (ISO 11649).
|
||||
Example: `123456789` -> `RF18 1234 5678 9`
|
||||
"""
|
||||
check_digits = calc_check_digits('{}RF'.format(number))
|
||||
return 'RF{} {}'.format(
|
||||
check_digits,
|
||||
" ".join("".join(x) for x in zip_longest(*[iter(str(number))]*4, fillvalue=""))
|
||||
)
|
||||
|
||||
|
||||
class LegacyHTTPAdapter(requests.adapters.HTTPAdapter):
|
||||
""" An adapter to allow unsafe legacy renegotiation necessary to connect to
|
||||
gravely outdated ETA production servers.
|
||||
"""
|
||||
|
||||
def init_poolmanager(self, *args, **kwargs):
|
||||
# This is not defined before Python 3.12
|
||||
# cfr. https://github.com/python/cpython/pull/93927
|
||||
# Origin: https://github.com/openssl/openssl/commit/ef51b4b9
|
||||
OP_LEGACY_SERVER_CONNECT = 0x04
|
||||
context = create_urllib3_context(options=OP_LEGACY_SERVER_CONNECT)
|
||||
kwargs["ssl_context"] = context
|
||||
return super().init_poolmanager(*args, **kwargs)
|
||||
Loading…
Add table
Add a link
Reference in a new issue