mirror of
https://github.com/brain-tec/account_ebics.git
synced 2026-04-26 07:36:51 +00:00
squash everything before 17.0
This commit is contained in:
22
account_ebics/migrations/13.0.1.1/noupdate_changes.xml
Normal file
22
account_ebics/migrations/13.0.1.1/noupdate_changes.xml
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version='1.0' encoding='utf-8' ?>
|
||||
<odoo>
|
||||
|
||||
<record id="ebics_config_comp_rule" model="ir.rule">
|
||||
<field name="name">EBICS Configuration model company rule</field>
|
||||
<field name="model_id" ref="model_ebics_config" />
|
||||
<field eval="True" name="global" />
|
||||
<field
|
||||
name="domain_force"
|
||||
>['|', ('company_ids', '=', False), ('company_ids', 'in', user.company_ids.ids)]</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_file_comp_rule" model="ir.rule">
|
||||
<field name="name">EBICS File model company rule</field>
|
||||
<field name="model_id" ref="model_ebics_file" />
|
||||
<field eval="True" name="global" />
|
||||
<field
|
||||
name="domain_force"
|
||||
>['|', ('company_ids', '=', False), ('company_ids', 'in', user.company_ids.ids)]</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
83
account_ebics/migrations/13.0.1.1/post-migration.py
Normal file
83
account_ebics/migrations/13.0.1.1/post-migration.py
Normal file
@@ -0,0 +1,83 @@
|
||||
# Copyright 2009-2020 Noviat.
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
import os
|
||||
|
||||
from openupgradelib import openupgrade # pylint: disable=W7936
|
||||
|
||||
|
||||
@openupgrade.migrate()
|
||||
def migrate(env, version):
|
||||
|
||||
_ebics_config_upgrade(env, version)
|
||||
_noupdate_changes(env, version)
|
||||
|
||||
|
||||
def _ebics_config_upgrade(env, version):
|
||||
env.cr.execute("SELECT * FROM ebics_config")
|
||||
cfg_datas = env.cr.dictfetchall()
|
||||
for cfg_data in cfg_datas:
|
||||
cfg = env["ebics.config"].browse(cfg_data["id"])
|
||||
journal = env["account.journal"].search(
|
||||
[("bank_account_id", "=", cfg_data["bank_id"])]
|
||||
)
|
||||
keys_fn_old = cfg_data["ebics_keys"]
|
||||
ebics_keys_root = os.path.dirname(keys_fn_old)
|
||||
if os.path.isfile(keys_fn_old):
|
||||
keys_fn = ebics_keys_root + "/" + cfg_data["ebics_user"] + "_keys"
|
||||
os.rename(keys_fn_old, keys_fn)
|
||||
state = cfg_data["state"] == "active" and "confirm" or "draft"
|
||||
cfg.write(
|
||||
{
|
||||
"company_ids": [(6, 0, [cfg_data["company_id"]])],
|
||||
"journal_ids": [(6, 0, journal.ids)],
|
||||
"ebics_keys": ebics_keys_root,
|
||||
"state": state,
|
||||
}
|
||||
)
|
||||
|
||||
user_vals = {
|
||||
"ebics_config_id": cfg_data["id"],
|
||||
"name": cfg_data["ebics_user"],
|
||||
}
|
||||
for fld in [
|
||||
"signature_class",
|
||||
"ebics_passphrase",
|
||||
"ebics_ini_letter_fn",
|
||||
"ebics_public_bank_keys_fn",
|
||||
"ebics_key_x509",
|
||||
"ebics_key_x509_dn_cn",
|
||||
"ebics_key_x509_dn_o",
|
||||
"ebics_key_x509_dn_ou",
|
||||
"ebics_key_x509_dn_c",
|
||||
"ebics_key_x509_dn_st",
|
||||
"ebics_key_x509_dn_l",
|
||||
"ebics_key_x509_dn_e",
|
||||
"ebics_file_format_ids",
|
||||
"state",
|
||||
]:
|
||||
if cfg_data.get(fld):
|
||||
if fld == "ebics_file_format_ids":
|
||||
user_vals[fld] = [(6, 0, cfg_data[fld])]
|
||||
elif fld == "state" and cfg_data["state"] == "active":
|
||||
user_vals["state"] = "active_keys"
|
||||
else:
|
||||
user_vals[fld] = cfg_data[fld]
|
||||
ebics_userid = env["ebics.userid"].create(user_vals)
|
||||
env.cr.execute(
|
||||
"""
|
||||
UPDATE ir_attachment
|
||||
SET res_model = 'ebics.userid', res_id = %s
|
||||
WHERE name in ('ebics_ini_letter', 'ebics_public_bank_keys');
|
||||
"""
|
||||
% ebics_userid.id
|
||||
)
|
||||
|
||||
if len(cfg_datas) == 1:
|
||||
env.cr.execute("UPDATE ebics_file SET ebics_userid_id = %s" % ebics_userid.id)
|
||||
|
||||
|
||||
def _noupdate_changes(env, version):
|
||||
openupgrade.load_data(
|
||||
env.cr, "account_ebics", "migrations/13.0.1.1/noupdate_changes.xml"
|
||||
)
|
||||
9
account_ebics/migrations/13.0.1.1/pre-migration.py
Normal file
9
account_ebics/migrations/13.0.1.1/pre-migration.py
Normal file
@@ -0,0 +1,9 @@
|
||||
# Copyright 2009-2020 Noviat.
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
|
||||
def migrate(cr, version):
|
||||
if not version:
|
||||
return
|
||||
|
||||
cr.execute("DELETE FROM ebics_xfer;")
|
||||
44
account_ebics/migrations/13.0.1.3/post-migration.py
Normal file
44
account_ebics/migrations/13.0.1.3/post-migration.py
Normal file
@@ -0,0 +1,44 @@
|
||||
# Copyright 2009-2020 Noviat.
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
_FILE_FORMATS = [
|
||||
{
|
||||
"xml_id_name": "ebics_ff_C52",
|
||||
"download_process_method": "camt.052",
|
||||
},
|
||||
{
|
||||
"xml_id_name": "ebics_ff_C53",
|
||||
"download_process_method": "camt.053",
|
||||
},
|
||||
{
|
||||
"xml_id_name": "ebics_ff_FDL_camt_xxx_cfonb120_stm",
|
||||
"download_process_method": "cfonb120",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
def migrate(cr, version):
|
||||
for ff in _FILE_FORMATS:
|
||||
_update_file_format(cr, ff)
|
||||
|
||||
|
||||
def _update_file_format(cr, ff):
|
||||
cr.execute( # pylint: disable=E8103
|
||||
"""
|
||||
SELECT res_id FROM ir_model_data
|
||||
WHERE module='account_ebics' AND name='{}'
|
||||
""".format(
|
||||
ff["xml_id_name"]
|
||||
)
|
||||
)
|
||||
res = cr.fetchone()
|
||||
if res:
|
||||
cr.execute( # pylint: disable=E8103
|
||||
"""
|
||||
UPDATE ebics_file_format
|
||||
SET download_process_method='{download_process_method}'
|
||||
WHERE id={ff_id};
|
||||
""".format(
|
||||
download_process_method=ff["download_process_method"], ff_id=res[0]
|
||||
)
|
||||
)
|
||||
81
account_ebics/migrations/13.0.1.3/pre-migration.py
Normal file
81
account_ebics/migrations/13.0.1.3/pre-migration.py
Normal file
@@ -0,0 +1,81 @@
|
||||
# Copyright 2009-2020 Noviat.
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
_FILE_FORMATS = [
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_camt_052_001_02_stm",
|
||||
"new_xml_id_name": "ebics_ff_C52",
|
||||
"new_name": "camt.052",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_camt_053_001_02_stm",
|
||||
"new_xml_id_name": "ebics_ff_C53",
|
||||
"new_name": "camt.053",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_camt_xxx_cfonb120_stm",
|
||||
"new_xml_id_name": "ebics_ff_FDL_camt_xxx_cfonb120_stm",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_001_001_03_sct",
|
||||
"new_xml_id_name": "ebics_ff_CCT",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_001",
|
||||
"new_xml_id_name": "ebics_ff_XE2",
|
||||
"new_name": "pain.001.001.03",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_008_001_02_sdd",
|
||||
"new_xml_id_name": "ebics_ff_CDD",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_008",
|
||||
"new_xml_id_name": "ebics_ff_XE3",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_008_001_02_sbb",
|
||||
"new_xml_id_name": "ebics_ff_CDB",
|
||||
},
|
||||
{
|
||||
"old_xml_id_name": "ebics_ff_pain_001_001_02_sct",
|
||||
"new_xml_id_name": "ebics_ff_FUL_pain_001_001_02_sct",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
def migrate(cr, version):
|
||||
if not version:
|
||||
return
|
||||
|
||||
for ff in _FILE_FORMATS:
|
||||
_update_file_format(cr, ff)
|
||||
|
||||
|
||||
def _update_file_format(cr, ff):
|
||||
cr.execute( # pylint: disable=E8103
|
||||
"""
|
||||
SELECT id, res_id FROM ir_model_data
|
||||
WHERE module='account_ebics' AND name='{}'
|
||||
""".format(
|
||||
ff["old_xml_id_name"]
|
||||
)
|
||||
)
|
||||
res = cr.fetchone()
|
||||
if res:
|
||||
query = """
|
||||
UPDATE ir_model_data
|
||||
SET name='{new_xml_id_name}'
|
||||
WHERE id={xml_id};
|
||||
""".format(
|
||||
new_xml_id_name=ff["new_xml_id_name"], xml_id=res[0]
|
||||
)
|
||||
if ff.get("new_name"):
|
||||
query += """
|
||||
UPDATE ebics_file_format
|
||||
SET name='{new_name}'
|
||||
WHERE id={ff_id};
|
||||
""".format(
|
||||
new_name=ff["new_name"], ff_id=res[1]
|
||||
)
|
||||
cr.execute(query) # pylint: disable=E8103
|
||||
54
account_ebics/migrations/15.0.1.1/pre-migration.py
Normal file
54
account_ebics/migrations/15.0.1.1/pre-migration.py
Normal file
@@ -0,0 +1,54 @@
|
||||
# Copyright 2009-2022 Noviat.
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
|
||||
def migrate(cr, version):
|
||||
if not version:
|
||||
return
|
||||
|
||||
cr.execute("select id from ebics_config")
|
||||
cfg_ids = [x[0] for x in cr.fetchall()]
|
||||
for cfg_id in cfg_ids:
|
||||
cr.execute(
|
||||
"""
|
||||
SELECT DISTINCT aj.company_id
|
||||
FROM account_journal_ebics_config_rel rel
|
||||
JOIN account_journal aj ON rel.account_journal_id = aj.id
|
||||
WHERE ebics_config_id = %s
|
||||
""",
|
||||
(cfg_id,),
|
||||
)
|
||||
new_cpy_ids = [x[0] for x in cr.fetchall()]
|
||||
cr.execute(
|
||||
"""
|
||||
SELECT DISTINCT res_company_id
|
||||
FROM ebics_config_res_company_rel
|
||||
WHERE ebics_config_id = %s
|
||||
""",
|
||||
(cfg_id,),
|
||||
)
|
||||
old_cpy_ids = [x[0] for x in cr.fetchall()]
|
||||
|
||||
to_add = []
|
||||
for cid in new_cpy_ids:
|
||||
if cid in old_cpy_ids:
|
||||
old_cpy_ids.remove(cid)
|
||||
else:
|
||||
to_add.append(cid)
|
||||
if old_cpy_ids:
|
||||
cr.execute(
|
||||
"""
|
||||
DELETE FROM ebics_config_res_company_rel
|
||||
WHERE res_company_id IN %s
|
||||
""",
|
||||
(tuple(old_cpy_ids),),
|
||||
)
|
||||
if to_add:
|
||||
for cid in to_add:
|
||||
cr.execute(
|
||||
"""
|
||||
INSERT INTO ebics_config_res_company_rel(ebics_config_id, res_company_id)
|
||||
VALUES (%s, %s);
|
||||
""",
|
||||
(cfg_id, cid),
|
||||
)
|
||||
Reference in New Issue
Block a user