mirror of
https://github.com/brain-tec/account_ebics.git
synced 2025-08-02 16:59:20 +00:00
13 multi bank account support (#15)
* [13.0][IMP]add support for multiple bank accounts and multiple EBICS UserIDs over a single EBICS connection * ebics refactoring fixes * ebics refactoring fixes
This commit is contained in:
@@ -1,127 +0,0 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<record id="ebics_config_view_tree" model="ir.ui.view">
|
||||
<field name="name">ebics.config.tree</field>
|
||||
<field name="model">ebics.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="EBICS Configuration" decoration-muted="state!='active'">
|
||||
<field name="name"/>
|
||||
<field name="bank_id"/>
|
||||
<field name="ebics_host"/>
|
||||
<field name="ebics_user"/>
|
||||
<field name="state"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_config_view_form" model="ir.ui.view">
|
||||
<field name="name">ebics.config.form</field>
|
||||
<field name="model">ebics.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="EBICS Configuration">
|
||||
<header>
|
||||
<button name="set_to_draft" states="active" string="Set to Draft" type="object"
|
||||
groups="account.group_account_manager"
|
||||
help="Set to Draft in order to reinitialize your bank connection."/>
|
||||
<button name="set_to_get_bank_keys" states="active" string="Renew Bank Keys" type="object"
|
||||
groups="account.group_account_manager"
|
||||
help="Use this button to update the EBICS certificates of your bank."/>
|
||||
<button name="set_to_active" states="draft" string="Force Active" type="object"
|
||||
groups="account.group_account_manager"
|
||||
help="Use this button to bypass the EBICS initialization (e.g. in case you have manually transferred active EBICS keys from another system."/>
|
||||
<field name="state" widget="statusbar"/>
|
||||
</header>
|
||||
<group col="4">
|
||||
<field name="name" colspan="2"/>
|
||||
<field name="bank_id"/>
|
||||
<field name="ebics_host"/>
|
||||
<field name="ebics_url"/>
|
||||
<field name="ebics_partner"/>
|
||||
<field name="ebics_user"/>
|
||||
<field name="ebics_version"/>
|
||||
<field name="signature_class"/>
|
||||
<field name="ebics_files"/>
|
||||
<field name="order_number"
|
||||
attrs="{'invisible': [('ebics_version', '=', 'H004')]}"/>
|
||||
<field name="active"/>
|
||||
<field name="company_id" widget='selection' groups="base.group_multi_company"/>
|
||||
<field name="company_partner_id" invisible="1"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Keys" groups="account_ebics.group_ebics_manager">
|
||||
<header>
|
||||
<button name="ebics_init_1" states="draft" string="EBICS Initialisation" type="object" class="oe_highlight"
|
||||
groups="account.group_account_manager"
|
||||
help="Initialise EBICS Bank Keys"/>
|
||||
<button name="ebics_init_2" states="init" string="Account activated" type="object" class="oe_highlight"
|
||||
groups="account.group_account_manager"
|
||||
help="EBICS Initialisation - Push this button when the account has been activated by the bank."/>
|
||||
<button name="ebics_init_3" states="get_bank_keys" string="Get Bank Keys" type="object" class="oe_highlight"
|
||||
groups="account.group_account_manager"
|
||||
help="EBICS Initialisation - After the account has been activated the public bank keys must be downloaded and checked for consistency."/>
|
||||
<button name="ebics_init_4" states="to_verify" string="Bank Keys Verified" type="object" class="oe_highlight"
|
||||
groups="account.group_account_manager"
|
||||
help="EBICS Initialisation - Push this button when the public have been checked for consistency."/>
|
||||
<button name="change_passphrase" string="Change Passphrase" type="object" class="oe_highlight"
|
||||
attrs="{'invisible': [('ebics_keys_found', '=', False)]}"
|
||||
groups="account.group_account_manager"/>
|
||||
</header>
|
||||
<group col="4" name="ebics_key">
|
||||
<field name="ebics_keys"/>
|
||||
<field name="ebics_keys_found" invisible="1"/>
|
||||
<field name="ebics_passphrase" password="True"
|
||||
attrs="{'required': [('state', '=', 'draft')], 'invisible': [('ebics_keys_found', '=', True)]}"/>
|
||||
<newline/>
|
||||
<field name="ebics_key_version"/>
|
||||
<field name="ebics_key_bitlength"/>
|
||||
<field name="ebics_key_x509"/>
|
||||
</group>
|
||||
<group colspan="4" name="ebics_ini_letter" attrs="{'invisible': [('ebics_ini_letter', '=', False)]}">
|
||||
<field name="ebics_ini_letter_fn" invisible="1"/>
|
||||
<field name="ebics_ini_letter" filename="ebics_ini_letter_fn"/>
|
||||
</group>
|
||||
<group colspan="4" name="ebics_public_bank_keys" attrs="{'invisible': [('ebics_public_bank_keys', '=', False)]}">
|
||||
<field name="ebics_public_bank_keys_fn" invisible="1"/>
|
||||
<field name="ebics_public_bank_keys" filename="ebics_public_bank_keys_fn"/>
|
||||
</group>
|
||||
<group col="4" name="dn" attrs="{'invisible': [('ebics_key_x509', '=', False)]}">
|
||||
<group colspan="4" col="1">
|
||||
<strong>Distinguished Name attributes used to create self-signed X.509 certificates:</strong>
|
||||
</group>
|
||||
<group name="dn_l" colspan="2">
|
||||
<field name="ebics_key_x509_dn_cn"/>
|
||||
<field name="ebics_key_x509_dn_o"/>
|
||||
<field name="ebics_key_x509_dn_l"/>
|
||||
<field name="ebics_key_x509_dn_c"/>
|
||||
</group>
|
||||
<group name="dn_r" colspan="2">
|
||||
<field name="ebics_key_x509_dn_e"/>
|
||||
<field name="ebics_key_x509_dn_ou"/>
|
||||
<field name="ebics_key_x509_dn_st"/>
|
||||
</group>
|
||||
</group>
|
||||
</page>
|
||||
<page string="File Formats" groups="account_ebics.group_ebics_manager">
|
||||
<field name="ebics_file_format_ids"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_config_action" model="ir.actions.act_window">
|
||||
<field name="name">EBICS Configuration</field>
|
||||
<field name="res_model">ebics.config</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem id="ebics_config_menu"
|
||||
name="EBICS Configuration"
|
||||
parent="ebics_menu"
|
||||
action="ebics_config_action"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="10"/>
|
||||
|
||||
</odoo>
|
74
account_ebics/views/ebics_config_views.xml
Normal file
74
account_ebics/views/ebics_config_views.xml
Normal file
@@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<record id="ebics_config_view_tree" model="ir.ui.view">
|
||||
<field name="name">ebics.config.tree</field>
|
||||
<field name="model">ebics.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="EBICS Configuration" decoration-muted="state == 'draft'">
|
||||
<field name="name"/>
|
||||
<field name="ebics_host"/>
|
||||
<field name="state"/>
|
||||
<field name="active"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_config_view_form" model="ir.ui.view">
|
||||
<field name="name">ebics.config.form</field>
|
||||
<field name="model">ebics.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="EBICS Configuration">
|
||||
<header>
|
||||
<button name="set_to_draft" states="confirm" string="Set to Draft" type="object"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
help="Set to Draft in order to change the EBICS configuration parameters."/>
|
||||
<button name="set_to_confirm" states="draft" string="Confirm" type="object" class="oe_highlight"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
help="The EBICS configuration must be confirmed before it can used for bank transactions."/>
|
||||
<field name="state" widget="statusbar"/>
|
||||
</header>
|
||||
<field name="active" invisible="1" />
|
||||
<widget name="web_ribbon"
|
||||
text="Archived"
|
||||
bg_color="bg-danger"
|
||||
attrs="{'invisible': [('active', '=', True)]}"/>
|
||||
<group name="main">
|
||||
<group name="main-left">
|
||||
<field name="name" colspan="2"/>
|
||||
<field name="ebics_host"/>
|
||||
<field name="ebics_url"/>
|
||||
<field name="ebics_partner"/>
|
||||
<field name="ebics_files"/>
|
||||
<field name="ebics_keys"/>
|
||||
</group>
|
||||
<group name="main-right">
|
||||
<field name="journal_ids" widget="many2many_tags" options="{'no_create': True}"/>
|
||||
<field name="ebics_version"/>
|
||||
<field name="ebics_key_version"/>
|
||||
<field name="ebics_key_bitlength"/>
|
||||
<field name="order_number"
|
||||
attrs="{'invisible': [('ebics_version', '=', 'H004')]}"/>
|
||||
</group>
|
||||
<field name="company_ids" invisible="1"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="EBICS Users" groups="account_ebics.group_ebics_manager">
|
||||
<field name="ebics_userid_ids"/>
|
||||
</page>
|
||||
<page string="File Formats" groups="account_ebics.group_ebics_manager">
|
||||
<field name="ebics_file_format_ids"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_config_action" model="ir.actions.act_window">
|
||||
<field name="name">EBICS Configuration</field>
|
||||
<field name="res_model">ebics.config</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="context">{'active_test': False}</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
@@ -39,11 +39,4 @@
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem id="ebics_file_format_menu"
|
||||
name="EBICS File Formats"
|
||||
parent="ebics_menu"
|
||||
action="ebics_file_format_action"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="20"/>
|
||||
|
||||
</odoo>
|
@@ -1,11 +1,6 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<menuitem id="ebics_file_menu"
|
||||
name="EBICS Files"
|
||||
parent="ebics_processing_menu"
|
||||
sequence="30"/>
|
||||
|
||||
<record id="ebics_file_view_search" model="ir.ui.view">
|
||||
<field name="name">ebics.file.search</field>
|
||||
<field name="model">ebics.file</field>
|
||||
@@ -17,14 +12,13 @@
|
||||
<field name="name"/>
|
||||
<field name="format_id"/>
|
||||
<field name="user_id"/>
|
||||
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
|
||||
<field name="company_ids" widget="selection" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Group By">
|
||||
<filter string="File Format" name="file_format" context="{'group_by':'format_id'}"/>
|
||||
<filter string="State" name="state" context="{'group_by':'state'}"/>
|
||||
<filter string="User" name="user" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Company" name="domain" domain="[]" groups="base.group_multi_company" context="{'group_by':'company_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
@@ -44,7 +38,7 @@
|
||||
<field name="user_id"/>
|
||||
<field name="state"/>
|
||||
<field name="format_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="company_ids" groups="base.group_multi_company"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -75,7 +69,8 @@
|
||||
<field name="date_from"/>
|
||||
<field name="date_to"/>
|
||||
<field name="user_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="ebics_userid_id"/>
|
||||
<field name="company_ids" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Additional Information">
|
||||
@@ -131,12 +126,6 @@
|
||||
<field name="act_window_id" ref="ebics_file_action_download"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="ebics_file_menu_download"
|
||||
name="Download"
|
||||
parent="ebics_file_menu"
|
||||
action="ebics_file_action_download"
|
||||
sequence="31"/>
|
||||
|
||||
<!-- Upload -->
|
||||
|
||||
<record id="ebics_file_view_tree_upload" model="ir.ui.view">
|
||||
@@ -149,7 +138,7 @@
|
||||
<field name="user_id"/>
|
||||
<field name="state"/>
|
||||
<field name="format_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="company_ids" groups="base.group_multi_company"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -171,7 +160,8 @@
|
||||
<field name="data" filename="name"/>
|
||||
<field name="format_id"/>
|
||||
<field name="user_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="ebics_userid_id"/>
|
||||
<field name="company_ids" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Additional Information">
|
||||
@@ -206,10 +196,4 @@
|
||||
<field name="act_window_id" ref="ebics_file_action_upload"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="ebics_file_menu_upload"
|
||||
name="Upload"
|
||||
parent="ebics_file_menu"
|
||||
action="ebics_file_action_upload"
|
||||
sequence="31"/>
|
||||
|
||||
</odoo>
|
82
account_ebics/views/ebics_userid_views.xml
Normal file
82
account_ebics/views/ebics_userid_views.xml
Normal file
@@ -0,0 +1,82 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<record id="ebics_userid_view_tree" model="ir.ui.view">
|
||||
<field name="name">ebics.userid.tree</field>
|
||||
<field name="model">ebics.userid</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="EBICS UserID" decoration-muted="state != 'active_keys'">
|
||||
<field name="name"/>
|
||||
<field name="signature_class"/>
|
||||
<field name="state"/>
|
||||
<field name="active"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="ebics_userid_view_form" model="ir.ui.view">
|
||||
<field name="name">ebics.userid.form</field>
|
||||
<field name="model">ebics.userid</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="EBICS UserID">
|
||||
<header groups="account_ebics.group_ebics_manager">
|
||||
<button name="ebics_init_1" states="draft" string="EBICS Initialisation" type="object" class="oe_highlight"
|
||||
help="Initialise EBICS Bank Keys"/>
|
||||
<button name="ebics_init_2" states="init" string="Account activated" type="object" class="oe_highlight"
|
||||
help="EBICS Initialisation - Push this button when the account has been activated by the bank."/>
|
||||
<button name="ebics_init_3" states="get_bank_keys" string="Get Bank Keys" type="object" class="oe_highlight"
|
||||
help="EBICS Initialisation - After the account has been activated the public bank keys must be downloaded and checked for consistency."/>
|
||||
<button name="ebics_init_4" states="to_verify" string="Bank Keys Verified" type="object" class="oe_highlight"
|
||||
help="EBICS Initialisation - Push this button when the public have been checked for consistency."/>
|
||||
<button name="change_passphrase" string="Change Passphrase" type="object" class="oe_highlight"
|
||||
attrs="{'invisible': [('ebics_keys_found', '=', False)]}"/>
|
||||
<button name="set_to_draft" states="active" string="Set to Draft" type="object"
|
||||
help="Set to Draft in order to reinitialize your bank connection."/>
|
||||
<button name="set_to_get_bank_keys" states="active" string="Renew Bank Keys" type="object"
|
||||
help="Use this button to update the EBICS certificates of your bank."/>
|
||||
<field name="state" widget="statusbar"/>
|
||||
</header>
|
||||
<group name="main">
|
||||
<field name="ebics_keys_found" invisible="1"/>
|
||||
<field name="ebics_keys_fn" invisible="1"/>
|
||||
<group name="main-left">
|
||||
<field name="name"/>
|
||||
<field name="ebics_passphrase" password="True"
|
||||
attrs="{'required': [('state', '=', 'draft')]}"/>
|
||||
<field name="active"/>
|
||||
</group>
|
||||
<group name="main-right">
|
||||
<field name="signature_class"/>
|
||||
<field name="user_ids" widget="many2many_tags" options="{'no_create': True}"/>
|
||||
<field name="ebics_key_x509"/>
|
||||
</group>
|
||||
</group>
|
||||
<group col="4" name="dn" attrs="{'invisible': [('ebics_key_x509', '=', False)]}">
|
||||
<group colspan="4" col="1">
|
||||
<strong>Distinguished Name attributes used to create self-signed X.509 certificates:</strong>
|
||||
</group>
|
||||
<group name="dn_l" colspan="2">
|
||||
<field name="ebics_key_x509_dn_cn"/>
|
||||
<field name="ebics_key_x509_dn_o"/>
|
||||
<field name="ebics_key_x509_dn_l"/>
|
||||
<field name="ebics_key_x509_dn_c"/>
|
||||
</group>
|
||||
<group name="dn_r" colspan="2">
|
||||
<field name="ebics_key_x509_dn_e"/>
|
||||
<field name="ebics_key_x509_dn_ou"/>
|
||||
<field name="ebics_key_x509_dn_st"/>
|
||||
</group>
|
||||
</group>
|
||||
<group colspan="4" name="ebics_ini_letter" attrs="{'invisible': [('ebics_ini_letter', '=', False)]}">
|
||||
<field name="ebics_ini_letter_fn" invisible="1"/>
|
||||
<field name="ebics_ini_letter" filename="ebics_ini_letter_fn"/>
|
||||
</group>
|
||||
<group colspan="4" name="ebics_public_bank_keys" attrs="{'invisible': [('ebics_public_bank_keys', '=', False)]}">
|
||||
<field name="ebics_public_bank_keys_fn" invisible="1"/>
|
||||
<field name="ebics_public_bank_keys" filename="ebics_public_bank_keys_fn"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
58
account_ebics/views/menu.xml
Normal file
58
account_ebics/views/menu.xml
Normal file
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<menuitem id="ebics_processing_menu"
|
||||
name="EBICS Processing"
|
||||
parent="account.menu_finance"
|
||||
sequence="4"/>
|
||||
|
||||
<menuitem id="ebics_xfer_menu_download"
|
||||
name="EBICS Download"
|
||||
parent="ebics_processing_menu"
|
||||
action="ebics_xfer_action_download"
|
||||
sequence="10"/>
|
||||
|
||||
<menuitem id="ebics_xfer_menu_upload"
|
||||
name="EBICS Upload"
|
||||
parent="ebics_processing_menu"
|
||||
action="ebics_xfer_action_upload"
|
||||
sequence="20"/>
|
||||
|
||||
<menuitem id="ebics_file_menu"
|
||||
name="EBICS Files"
|
||||
parent="ebics_processing_menu"
|
||||
sequence="30"/>
|
||||
|
||||
<menuitem id="ebics_file_menu_download"
|
||||
name="Download"
|
||||
parent="ebics_file_menu"
|
||||
action="ebics_file_action_download"
|
||||
sequence="10"/>
|
||||
|
||||
<menuitem id="ebics_file_menu_upload"
|
||||
name="Upload"
|
||||
parent="ebics_file_menu"
|
||||
action="ebics_file_action_upload"
|
||||
sequence="20"/>
|
||||
|
||||
<menuitem id="ebics_menu"
|
||||
name="EBICS"
|
||||
parent='account.menu_finance_configuration'
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="100"/>
|
||||
|
||||
<menuitem id="ebics_config_menu"
|
||||
name="EBICS Configuration"
|
||||
parent="ebics_menu"
|
||||
action="ebics_config_action"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="10"/>
|
||||
|
||||
<menuitem id="ebics_file_format_menu"
|
||||
name="EBICS File Formats"
|
||||
parent="ebics_menu"
|
||||
action="ebics_file_format_action"
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="20"/>
|
||||
|
||||
</odoo>
|
@@ -1,15 +0,0 @@
|
||||
<?xml version="1.0" ?>
|
||||
<odoo>
|
||||
|
||||
<menuitem id="ebics_processing_menu"
|
||||
name="EBICS Processing"
|
||||
parent="account.menu_finance"
|
||||
sequence="4"/>
|
||||
|
||||
<menuitem id="ebics_menu"
|
||||
name="EBICS"
|
||||
parent='account.menu_finance_configuration'
|
||||
groups="account_ebics.group_ebics_manager"
|
||||
sequence="100"/>
|
||||
|
||||
</odoo>
|
Reference in New Issue
Block a user