mirror of
https://github.com/brain-tec/account_ebics.git
synced 2024-11-23 20:52:04 +00:00
Merge pull request #12 from Noviat/16.0
Syncing from upstream Noviat/account_ebics (16.0)
This commit is contained in:
commit
af8d502f67
@ -3,7 +3,7 @@
|
||||
|
||||
{
|
||||
"name": "EBICS banking protocol",
|
||||
"version": "16.0.1.5.0",
|
||||
"version": "16.0.1.6.1",
|
||||
"license": "LGPL-3",
|
||||
"author": "Noviat",
|
||||
"website": "https://www.noviat.com/",
|
||||
|
@ -550,6 +550,11 @@ class EbicsFile(models.Model):
|
||||
currency_code = stmt.xpath(
|
||||
"ns:Acct/ns:Ccy/text() | ns:Bal/ns:Amt/@Ccy", namespaces=ns
|
||||
)[0]
|
||||
# some banks (e.g. COMMERZBANK) add the currency as the last 3 digits
|
||||
# of the bank account number hence we need to remove this since otherwise
|
||||
# the journal matching logic fails
|
||||
if acc_number[-3:] == currency_code:
|
||||
acc_number = acc_number[:-3]
|
||||
|
||||
root_new = deepcopy(root)
|
||||
entries = False
|
||||
|
@ -109,6 +109,12 @@ class EbicsUserID(models.Model):
|
||||
"passphrase for every EBICS transaction, hence do not uncheck this "
|
||||
"option on a userid for automated EBICS downloads.",
|
||||
)
|
||||
ebics_passphrase_required = fields.Boolean(
|
||||
compute="_compute_ebics_passphrase_view_modifiers"
|
||||
)
|
||||
ebics_passphrase_invisible = fields.Boolean(
|
||||
compute="_compute_ebics_passphrase_view_modifiers"
|
||||
)
|
||||
ebics_ini_letter = fields.Binary(
|
||||
string="EBICS INI Letter",
|
||||
readonly=True,
|
||||
@ -208,6 +214,19 @@ class EbicsUserID(models.Model):
|
||||
rec.ebics_keys_fn
|
||||
)
|
||||
|
||||
@api.depends("state", "ebics_passphrase")
|
||||
def _compute_ebics_passphrase_view_modifiers(self):
|
||||
for rec in self:
|
||||
if rec.state == "draft":
|
||||
rec.ebics_passphrase_required = True
|
||||
rec.ebics_passphrase_invisible = False
|
||||
elif rec.state == "get_bank_keys":
|
||||
rec.ebics_passphrase_required = not rec.ebics_passphrase
|
||||
rec.ebics_passphrase_invisible = rec.ebics_passphrase
|
||||
else:
|
||||
rec.ebics_passphrase_required = False
|
||||
rec.ebics_passphrase_invisible = True
|
||||
|
||||
@api.constrains("ebics_key_x509")
|
||||
def _check_ebics_key_x509(self):
|
||||
for cfg in self:
|
||||
@ -247,6 +266,14 @@ class EbicsUserID(models.Model):
|
||||
return self.write({"state": "active_keys"})
|
||||
|
||||
def set_to_get_bank_keys(self):
|
||||
self.ensure_one()
|
||||
if self.ebics_config_id.state != "draft":
|
||||
raise UserError(
|
||||
_(
|
||||
"Set the EBICS Configuation record to 'Draft' "
|
||||
"before starting the Key Renewal process."
|
||||
)
|
||||
)
|
||||
return self.write({"state": "get_bank_keys"})
|
||||
|
||||
def ebics_init_1(self): # noqa: C901
|
||||
|
@ -57,7 +57,7 @@
|
||||
string="Change Passphrase"
|
||||
type="object"
|
||||
class="oe_highlight"
|
||||
attrs="{'invisible': [('ebics_keys_found', '=', False)]}"
|
||||
attrs="{'invisible': ['|', ('ebics_keys_found', '=', False), ('state', '!=', 'active_keys')]}"
|
||||
/>
|
||||
<button
|
||||
name="set_to_draft"
|
||||
@ -86,12 +86,14 @@
|
||||
<field name="ebics_keys_found" invisible="1" />
|
||||
<field name="ebics_keys_fn" invisible="1" />
|
||||
<field name="ebics_version" invisible="1" />
|
||||
<field name="ebics_passphrase_required" invisible="1" />
|
||||
<field name="ebics_passphrase_invisible" invisible="1" />
|
||||
<group name="main-left">
|
||||
<field name="name" />
|
||||
<field
|
||||
name="ebics_passphrase"
|
||||
password="True"
|
||||
attrs="{'required': [('ebics_passphrase_store', '=', True)], 'invisible': [('state', '!=', 'draft')]}"
|
||||
attrs="{'required': [('ebics_passphrase_required', '=', True)], 'invisible': [('ebics_passphrase_invisible', '=', True)]}"
|
||||
/>
|
||||
<field name="ebics_passphrase_store" />
|
||||
<field name="transaction_rights" />
|
||||
|
@ -4,7 +4,7 @@
|
||||
{
|
||||
"name": "account_ebics with OCA Bank Statement Imoort",
|
||||
"summary": "Use OCA Bank Statement Import with account_ebics",
|
||||
"version": "16.0.1.0.1",
|
||||
"version": "16.0.1.0.2",
|
||||
"author": "Noviat",
|
||||
"website": "https://www.noviat.com/",
|
||||
"category": "Hidden",
|
||||
|
@ -46,7 +46,9 @@ class AccountStatementImport(models.TransientModel):
|
||||
We could also create empty bank statement (in state done) to clearly
|
||||
show days without transactions via the bank statement list view.
|
||||
"""
|
||||
if self.env.context.get("active_model") == "ebics.file":
|
||||
if self.env.context.get("active_model") != "ebics.file":
|
||||
return super()._create_bank_statements(stmts_vals, result)
|
||||
else:
|
||||
messages = []
|
||||
transactions = False
|
||||
for st_vals in stmts_vals:
|
||||
|
Loading…
Reference in New Issue
Block a user